---
title: "Create and post a transfer"
method: POST
path: "/transfers"
tags: ["Posting"]
---

# Create and post a transfer

`POST /transfers`

## Request

- Base URL: `https://ledgerhq.pro/api/v1`
- URL: `https://ledgerhq.pro/api/v1/transfers`
- Auth: one of:
  - HTTP bearer and API key in header `x-organization-id`
  - HTTP bearer and API key in header `x-organization-id`

QBO-style transfer endpoint for moving money between asset, bank, cash, or card accounts.

## Headers

- `Idempotency-Key` string, required

## Request body

- TransferPostRequest
  - `fromAccountId` string, uuid, required
  - `toAccountId` string, uuid, required
  - `date` string, date, required
  - `amountCents` integer, required: Integer cents. Example: 1250 means $12.50.
  - `description` string, required
  - `reference` string, nullable
  - `currencyCode` string
  - `metadata` object

## Response `200`

Idempotent replay

- PostingResponse
  - `data` PostingReceipt
    - `id` string, uuid, required
    - `resourceType` 'purchase' | 'deposit' | 'transfer' | 'bill_payment' | 'journal_entry', required
    - `status` 'draft' | 'posted', required
    - `journalEntryId` string, uuid, required
    - `bankTransactionIds` string[], required
    - `paymentId` string, uuid
    - `ruleResults` PostedTransactionRuleResult[]
      - `bankTransactionId` string, uuid, required
      - `status` 'created' | 'updated' | 'existing' | 'skipped' | 'failed', required
      - `created` boolean, required
      - `ruleId` string, uuid
      - `reason` string
      - `message` string
    - `affectedAccountIds` string[], required
    - `idempotentReplay` boolean, required
    - `createdAt` string, date-time, required

## Other responses

- `201`: Posting created
- `409`: Idempotency conflict
- `default`: Structured posting error

---

[API](https://skmtc.dev/ledgerhq-pro/apis/ledgerhq-bookkeeping-api.md) · [All operations](https://skmtc.dev/ledgerhq-pro/apis/ledgerhq-bookkeeping-api/llms.txt) · [OpenAPI document](https://skmtc.dev/ledgerhq-pro/apis/ledgerhq-bookkeeping-api/revisions/9a8269f0a586?raw)
