---
title: "Move transactions between folios"
method: POST
path: "/accounting/v1.0/folios/transactions/move"
tags: ["Folios"]
---

# Move transactions between folios

`POST /accounting/v1.0/folios/transactions/move`

## Request

- Base URL: `https://api.cloudbeds.com`
- URL: `https://api.cloudbeds.com/accounting/v1.0/folios/transactions/move`
- Auth: one of:
  - HTTP bearer
  - OAuth 2
    - Implicit: `https://hotels.cloudbeds.com/api/v1.2/oauth`
    - Scopes: `write:payment`

Move transactions to a different folio within the same source. You can specify individual transaction IDs or transaction types (by origin ID and external relation kind) to move all matching transactions at once. At least one of `transactions` or `transactionTypes` must be provided.

## Headers

- `X-Property-ID` integer, required

## Request body

- MoveTransactionsRequest: Request to move transactions to a target folio. At least one of `transactions` or `transactionTypes` must be provided and non-empty. When `sourceFolioId` is provided, only transactions currently in that folio are affected.
  - `sourceKind` 'RESERVATION' | 'HOUSE_ACCOUNT' | 'GROUP_PROFILE' | 'ACCOUNTS_RECEIVABLE_LEDGER', required: The type of financial source that owns transactions and balances. RESERVATION is an individual guest booking, HOUSE_ACCOUNT is a property-level account for miscellaneous charges, GROUP_PROFILE is a group booking that can aggregate charges from multiple reservations, and ACCOUNTS_RECEIVABLE_LEDGER tracks balances transferred for later collection.
  - `sourceId` integer, required: Source ID (reservation ID, group profile ID, etc.)
  - `targetFolioId` integer, required: Target folio ID where transactions will be moved
  - `sourceFolioId` integer: Optional. Scopes the operation to the transactions the folio list endpoint returns for this folio (deposit-account transactions are excluded; pending transactions count in their routed-to folio; applies to both `transactions` and `transactionTypes` selection). The folio must belong to the request's source (for route: to the reservation). When omitted, transactions are matched across all folios of the source.
  - `transactions` integer[]: List of transaction IDs to move. Required if transactionTypes is not provided.
  - `transactionTypes` TransactionTypeIdentifier[]: List of transaction types to move (by origin ID and external relation kind). Required if transactions is not provided.
    - `originId` string, required: Origin ID of the transaction type
    - `externalRelationKind` 'ROOM' | 'PAYMENT' | 'ITEM' | 'ITEM_POS' | 'ADDON' | 'RESERVATION' | 'ACCOUNTS_RECEIVABLE' | 'ROOM_REVENUE' | 'TAX' | 'FEE' | 'ADJUSTMENT' | 'PAYMENT_FEE' | 'BOOKABLE_RESOURCE' | 'CHANNEL_COMMISSION' | 'CITY_LEDGER' | 'GRATUITY' | 'CHECK_ITEM' | 'CHECK_SERVICE_CHARGE' | 'CHECK_DISCOUNT' | 'CHANNEL_COMMISSION_MANUAL', required: Kind of the external relation

## Response `200`

OK

## Other responses

- `400`: Bad Request
- `404`: Not found

---

[API](https://skmtc.dev/cloudbeds/apis/accounting-api.md) - [All operations](https://skmtc.dev/cloudbeds/apis/accounting-api/llms.txt) - [OpenAPI document](https://skmtc.dev/cloudbeds/apis/accounting-api/revisions/0b58c698deef?raw)
