LedgerBee Developer
  • Getting started
  • Conventions
  • Products
  • Advisor firms
  • Configuration
  • API Reference
Information
Accounts
    List accountsgetCreate an accountpostGet an accountgetDelete an accountdeleteUpdate an accountpatch
Advisor Authority Extracts
    Submit authority extract data for an advisor firm's clientspost
Advisor Clients
    List the advisor firm's clientsget
API Key
    Get current API keyget
Authority Extracts
    Submit authority extract datapost
Bank Reconciliations
    Reconcile bank lines against entriespostUndo a bank reconciliationpostCheck what undoing a reconciliation would dopostReconcile a batch of matchespostCheck what reconciling a batch of matches would dopostCheck what reconciling bank lines against entries would dopost
Bank Transactions
    List bank linesgetGet a bank linegetDismiss bank lines from reconciliationpostCheck which bank lines a dismiss would changepostRestore dismissed bank lines to reconciliationpostCheck which bank lines a restore would changepost
Billing Groups
    Form a billing grouppostGet a billing groupgetAdd members to a billing grouppostRemove a member from a billing groupdeleteCheck billing group eligibilitypost
Budgets
    List budgetsgetGet a budgetgetGet the budget vs actuals comparisongetExport a budget's Excel workbookgetOverwrite a budget's figures from an edited workbookpostList a budget's frozen baselinesgetGet a frozen baseline with its snapshot cellsgetList a budget's re-baseline proposalsgetList a budget's scenariosgetResolve a budget's grid under a scenariogetGet the variance report vs a frozen baselinegetGet the runway headlineget
Checkout
    Confirm the checkoutpostQuote a first periodpostIntegration readinessgetMint a checkout sessionpostRehydrate a sessiongetRelease the card hold (edit-after-card)postPoll card statusgetOpen the card windowpostOpen a card window for a live subscriptionpost
Company
    Get company detailsget
Connected app OAuth
    JSON Web Key Set used to verify OAuth access-token signaturesgetRFC 8414 authorization-server metadata for the connected-app OAuth servergetRFC 9728 protected-resource metadata for an MCP resourcegetRFC 9728 protected-resource metadata for an MCP resourcegetOpenID Connect discovery document for the connected-app OAuth serverget
Credit Note Links
    Link a credit note to the invoice it creditspostCheck a credit note’s links and the invoices it can be linked topostDetach a credit note from the invoices it is applied topost
Credit Notes
    List credit notesgetCreate a credit notepostGet a credit notegetGet the delivery status of a credit notegetDownload the credit note PDFgetSend a credit note to the customerpostCredit a whole invoicepost
Customers
    List customersgetCreate a customerpostGet a customergetDelete a customerdeleteUpdate a customerpatchList a customer's contactsgetList a customer's departmentsgetList customer groupsget
Dimensions
    List all dimensionsgetCreate a new dimension categorypostGet a dimensiongetUpdate a dimension categoryputDelete a dimension categorydeleteList distribution keys (paginated)getCreate a distribution keypostGet a distribution keygetList dimension values (paginated)getCreate a new dimension valuepostUpdate a dimension valueputDelete a dimension valuedelete
Discounts
    List discountsgetCreate a discountpostGet a discountgetDelete a discountdeleteUpdate a discountpatchSet a discount's amount in one currencyputRemove a discount's amount in one currencydeleteCheck whether a discount applies to a product for a customer on a daygetAssign a discountpostRemove an assignmentdeleteUpdate an assignmentpatchList a discount's codesgetAdd a code to a discountpostDelete a codedeleteUpdate a codepatchList the discounts that apply to a product for a customer on a daygetCheck a cartpostLook up a discount codeget
Document Templates
    List document templatesget
Document Upload Links
    Upload a file through a minted linkpost
Download Links
    Mint a download link for a document PDFgetDownload a minted linkget
Draft Journal Entries
    Create multiple draft journal entries in batchpostList draft journal entriesgetCreate a draft journal entrypostGet a draft journal entrygetDelete a draft journal entrydeleteBook a draft journal entrypost
Draft Journal Entries (v2)
    Create draft journal entries in batch (v2)postList draft journal entries (v2)getCreate a draft journal entry (v2)postGet a draft journal entry (v2)getDelete a draft journal entry (v2)deleteUpdate a draft journal entry (v2)patchGet attachments for a draft journal entry (v2)getAdd a document to a draft journal entry (v2)postRemove a document from a draft journal entry (v2)deleteBook a draft journal entry (v2)post
Entitlements
    List entitlementsgetCreate an entitlementpostGet an entitlementgetDelete an entitlementdeleteUpdate an entitlementpatch
Invoices
    List invoicesgetCreate a draft invoicepostGet an invoicegetDelete a draft invoicedeleteUpdate an unsent invoicepatchGet the delivery status of an invoicegetDownload the invoice PDFgetSend an invoice to the customerpost
Journal Categories
    List journal categoriesgetCreate a journal categorypostUpdate a journal categoryputDelete a journal categorydelete
Journal Entries
    List journal entriesgetGet a journal entrygetUpdate a journal entry — correct the reference and/or set your external system idpatchGet attachments for a journal entrygetAdd a document to a journal entrypostRemove a document from a journal entrydeletePreview a correction without posting itpostMove postings to different accounts, keeping the document intactpostRebuild the entry a reversal undid, as a draftpostPreview rebuilding the entry a reversal undidpostReverse a posted entry and open a draft to re-enter itpostReverse posted journal entries in batchpostPreview reversing posted journal entries in batchpostReverse a posted journal entrypostPreview reversing a posted journal entrypost
Journal Entries (v2)
    Create a journal entry (v2)postCreate journal entries in batch (v2)post
MCP
    LedgerBee Developer MCP Serverpost
Meters
    List meter subscriptions by IDgetReport usagepostList meter subscriptions by nameget
Open Entries
    List a counterparty’s open entriesget
Order Confirmations
    List order confirmationsgetCreate a draft order confirmationpostGet an order confirmationgetUpdate a draft order confirmationpatchConvert an order confirmation into an invoicepostDownload an order confirmation as PDFgetSend an order confirmationpost
Payment Methods
    List saved payment methods for a customergetCancel a saved card on the payment providerdeleteUnassign a payment method from a customerdeleteGenerate a link for the customer to save a card for future paymentspostSet a saved payment method as the customer defaultput
Portal Plans
    List the full plan cataloguegetGet a plangetResolve the gated pricing catalogue for an identified buyer (partner display)post
Portal SSO
    Get a tenant's SSO signing keys (JWKS)getMint a checkout-vouch token (partner-vouched anonymous checkout)postMint a customer-portal SSO handoff referencepostProvision a customer + grant portal access (partner JIT provisioning)postRevoke (force-refresh) a user's customer-portal sessionspost
Product Groups
    List product groupsgetCreate a product grouppostGet a product groupgetDelete a product groupdeleteUpdate a product grouppatch
Product Prices
    Create a product pricepostGet a product pricegetDelete a product pricedeleteUpdate a product pricepatchActivate a product pricepostArchive a product pricepostDisable a product pricepostSet a price as the product defaultpost
Products
    List productsgetCreate a productpostGet a productgetDelete a productdeleteUpdate a productpatchArchive a productpost
Projects
    List all projectsgetCreate or update a project by external referenceputCreate a projectpostGet a projectgetUpdate a projectputGet project profitgetAdd a subprojectpostUpdate a subprojectputDelete a subprojectdelete
Quotes
    List quotesgetCreate a draft quotepostGet a quotegetUpdate a draft quotepatchConvert a quotepostDownload a quote as PDFgetSend a quotepost
Settlements
    List a counterparty’s settlementsgetSettle open entries against each otherpostGet a settlementgetUndo a settlementpostCheck what undoing a settlement would dopostCheck what settling these entries would dopost
Shipments
    List shipmentsgetCreate a shipment from an orderpostGet a shipmentgetCancel a shipmentpostDispatch a shipmentpost
Stock
    List stock movementsgetList on-hand stockgetOn-hand for one productget
Subscriptions
    List customer subscriptionsgetAssign a subscription to a customerpostGet a customer subscription by its stable idgetUpdate a customer subscriptionpatchAdd an add-on to a customer subscriptionpostAttach existing subscriptions as add-onspostCheck whether subscriptions can become add-onspostChange the products on a customer subscriptionpostRetry a failed card paymentpostList a subscription's pending scheduled changesgetCancel a single pending scheduled changedeleteGet a subscription's unbilled usagegetCancel a customer subscriptionpostList subscription plansgetCreate a subscription planpostArchive a subscription planpost
Suppliers
    List suppliersgetCreate a supplierpostDelete a supplierdeleteList supplier contactsgetList supplier departmentsgetList supplier groupsget
VAT Codes
    List VAT codesgetCreate a VAT codepostGet a VAT codegetDelete a VAT codedeleteUpdate a VAT codepatch
VAT periods
    Record a VAT return filed outside LedgerBeepostPreview recording a VAT return filed outside LedgerBeepostSettle a filed VAT periodpostPreview a VAT period settlementpost
Vendors
    List vendorsgetCreate a vendorpostList vendor contactsgetList vendor departmentsgetList vendor groupsget
Webhook Endpoints
    List webhook endpointsgetCreate a webhook endpointpostRetrieve a webhook endpointgetUpdate a webhook endpointputDelete a webhook endpointdeleteRoll the signing secretpostSend a test eventpost
Schemas
LedgerBee Public API
LedgerBee Public API

Settlements

Download schema

List a counterparty’s settlements

GET
https://api.ledgerbee.com/api
/v1/settlements
x-api-key (header)
or
OAuth 2.0

Credential: a company's API key or OAuth token.

Every settlement recorded against one counterparty, newest first. Name exactly one of customerId or supplierId.

Reversed settlements are included rather than hidden, because they are part of the trail. Check reversed before treating one as still standing: a reversed settlement contributes nothing, and the entries it linked are open again and back on the open-entries listing.

Required Scope

  • journal-entries-read

List a counterparty’s settlements › query Parameters

customerId
​string

Read the customer’s entries. Mutually exclusive with supplierId; exactly one is required.

Example: 0197A943-2325-7829-B835-B6C71A293065
supplierId
​string

Read the supplier’s entries. Mutually exclusive with customerId; exactly one is required.

Example: 0197A943-2325-7829-B835-B6C71A293066

List a counterparty’s settlements › Responses

Settlements recorded against the counterparty

PublicSettlementsResponse
baseCurrency
​string · required

The company’s base currency (3-letter ISO).

Example: DKK
​PublicSettlementListItem[] · required
GET/v1/settlements
curl https://api.ledgerbee.com/api/v1/settlements \ --header 'x-api-key: <api-key>'
Example Responses
{ "baseCurrency": "DKK", "settlements": [ { "id": "0197A943-2325-7829-B835-B6C71A293070", "postingDate": "2026-09-01", "createdAt": "2026-09-01T11:04:22.000Z", "counterpartyType": "CUSTOMER", "counterpartyId": "counterpartyId", "reversed": false, "reversedAt": "reversedAt", "reversalReason": "reversalReason", "baseAmountSettled": 2980, "residualJournalEntryId": "residualJournalEntryId" } ] }
json
application/json

Settle open entries against each other

POST
https://api.ledgerbee.com/api
/v1/settlements
x-api-key (header)
or
OAuth 2.0

Credential: a company's API key or OAuth token.

Links entries that cancel each other out — a payment against the invoices it pays, a credit note against the invoice it credits — and closes them. Each entry stops appearing as open for the amount applied to it, and whatever is left of a partly-applied one stays open.

Preview it first. The preview takes this exact body and reports the leftover, the postings and any blockers, so there is no reason to discover a refusal by attempting the settlement.

Amounts are magnitudes. amountToApply is always positive and at most the entry’s remainingAmount; which side of the settlement an entry lands on follows from what it is.

Echo each entry’s version. It refuses the settlement if the entry was edited or reversed between reading the list and settling, rather than applying against a document that has since changed.

Paying more than is owed is refused rather than posted — apply the amount that is actually owed and leave the rest of the payment open for the next invoice.

Required Scope

  • journal-entries-write

Settle open entries against each other › Headers

x-api-idempotency-key
​string · maxLength: 255

Optional idempotency key for safely retrying mutating requests.

Settle open entries against each other › Request Body

PublicSettleRequest
postingDate
​string · required

Accounting date to post the settlement on (YYYY-MM-DD).

Example: 2026-09-01
​PublicSettlementEntrySelection[] · required

The entries to settle against each other — at least two, since a settlement links something owed to something that pays it. All must belong to the named counterparty.

customerId
​string

Read the customer’s entries. Mutually exclusive with supplierId; exactly one is required.

Example: 0197A943-2325-7829-B835-B6C71A293065
supplierId
​string

Read the supplier’s entries. Mutually exclusive with customerId; exactly one is required.

Example: 0197A943-2325-7829-B835-B6C71A293066
idempotencyKey
​string

Your own key for this settlement. Sending the same key with the same body returns the original settlement instead of posting a second one, so a retry after a timeout is safe.

Example: settle-2026-09-01-invoice-1043

Settle open entries against each other › Responses

The settlement was recorded

PublicSettlementCreated
id
​string · required

The settlement. Read it back at GET /v1/settlements/{id}.

Example: 0197A943-2325-7829-B835-B6C71A293070
differenceJournalEntryId
​string | null

The journal entry carrying the difference, when the entries did not net to zero. Null when they balanced exactly.

vatReclassJournalEntryId
​string | null

The journal entry that moved a prepayment’s VAT onto the invoice it was applied to. Null unless the settlement did that.

POST/v1/settlements
curl https://api.ledgerbee.com/api/v1/settlements \ --request POST \ --header 'Content-Type: application/json' \ --header 'x-api-key: <api-key>' \ --data '{ "customerId": "0197A943-2325-7829-B835-B6C71A293065", "supplierId": "0197A943-2325-7829-B835-B6C71A293066", "postingDate": "2026-09-01", "entries": [ { "kind": "ANCHOR", "id": "0197A943-2325-7829-B835-B6C71A293070", "amountToApply": 400, "version": "2026-08-14T09:12:44.000Z" } ], "idempotencyKey": "settle-2026-09-01-invoice-1043" }'
Example Request Body
{ "customerId": "0197A943-2325-7829-B835-B6C71A293065", "supplierId": "0197A943-2325-7829-B835-B6C71A293066", "postingDate": "2026-09-01", "entries": [ { "kind": "ANCHOR", "id": "0197A943-2325-7829-B835-B6C71A293070", "amountToApply": 400, "version": "2026-08-14T09:12:44.000Z" } ], "idempotencyKey": "settle-2026-09-01-invoice-1043" }
json
application/json
Example Responses
{ "id": "0197A943-2325-7829-B835-B6C71A293070", "differenceJournalEntryId": "differenceJournalEntryId", "vatReclassJournalEntryId": "vatReclassJournalEntryId" }
json
application/json

Get a settlement

GET
https://api.ledgerbee.com/api
/v1/settlements/{settlementId}
x-api-key (header)
or
OAuth 2.0

Credential: a company's API key or OAuth token.

One settlement in full: the entries it linked, how much of each it applied, and the difference posting when they did not net to zero.

An entry’s appliedAmount can be smaller than its originalAmount. A payment is consumed across as many settlements as it takes, and whatever is left stays on the open-entries listing.

Required Scope

  • journal-entries-read

Get a settlement › path Parameters

settlementId
​string · required

ID of the settlement (UUID)

Get a settlement › Responses

The settlement

PublicSettlement
id
​string · required

ID of the settlement.

Example: 0197A943-2325-7829-B835-B6C71A293070
postingDate
​string · required

Accounting date the settlement posted on (YYYY-MM-DD).

Example: 2026-09-01
createdAt
​string · required

When the settlement was recorded.

Example: 2026-09-01T11:04:22.000Z
counterpartyType
​string · enum · required
Enum values:
CUSTOMER
SUPPLIER
counterpartyId
​string · required

The customer or supplier the entries belong to.

reversed
​boolean · required

Whether the settlement has been reversed. A reversed settlement contributes nothing — its entries are open again.

Example: false
baseCurrency
​string · required

The company’s base currency (3-letter ISO).

Example: DKK
​PublicSettlementEntry[] · required

The entries this settlement linked, and how much of each it applied.

reversedAt
​string | null

When it was reversed. Null while it stands.

reversalReason
​string | null

Why it was reversed. Null while it stands.

difference
​object | null

The difference posting, when the entries did not net to zero. Null when they balanced exactly.

GET/v1/settlements/{settlementId}
curl https://api.ledgerbee.com/api/v1/settlements/:settlementId \ --header 'x-api-key: <api-key>'
Example Responses
{ "id": "0197A943-2325-7829-B835-B6C71A293070", "postingDate": "2026-09-01", "createdAt": "2026-09-01T11:04:22.000Z", "counterpartyType": "CUSTOMER", "counterpartyId": "counterpartyId", "reversed": false, "reversedAt": "reversedAt", "reversalReason": "reversalReason", "baseCurrency": "DKK", "entries": [ { "kind": "ANCHOR", "type": "INVOICE", "id": "id", "journalEntryId": "journalEntryId", "reference": "INV-1043", "date": "2026-08-14", "currency": "EUR", "originalAmount": 1250, "appliedAmount": -400, "baseAmountApplied": -2980 } ], "difference": { "journalEntryId": "journalEntryId", "description": "Exchange rate difference on settlement", "legs": [ { "accountId": "accountId", "accountNumber": 6210, "accountName": "Exchange rate differences", "type": "DEBIT", "baseAmount": 12.5 } ] } }
json
application/json

Undo a settlement

POST
https://api.ledgerbee.com/api
/v1/settlements/{settlementId}/reverse
x-api-key (header)
or
OAuth 2.0

Credential: a company's API key or OAuth token.

Reverses a settlement: every entry it linked is open again for the amount it applied, and every journal entry it posted — its difference, a VAT reclass, a receivable transfer — gets a linked reversal dated today. The settlement stays on the trail, marked reversed.

Undoing an undone settlement changes nothing and answers with the earlier outcome, so a retry after a timeout is safe.

Refused with 400 while today’s accounting period is closed, and while a later settlement still draws on an advance this one created — undo that one first.

Required Scope

  • journal-entries-write

Undo a settlement › path Parameters

settlementId
​string · required

ID of the settlement (UUID)

Undo a settlement › Headers

x-api-idempotency-key
​string · maxLength: 255

Optional idempotency key for safely retrying mutating requests.

Undo a settlement › Request Body

PublicReverseSettlementRequest
reason
​string · maxLength: 2000

Why the settlement is being undone. Stored on the settlement and shown in the activity feed of every entry it linked.

Example: The payment belonged to another customer

Undo a settlement › Responses

The settlement was undone

PublicReverseSettlementResponse
id
​string · required

The settlement that was undone.

differenceReversalJournalEntryId
​string | null

The reversal of the settlement’s difference entry, or null when it posted none.

vatReclassReversalJournalEntryId
​string | null

The reversal of the settlement’s VAT reclass entry, or null when it posted none.

receivableTransferReversalJournalEntryId
​string | null

The reversal of the settlement’s receivable transfer, or null when it posted none.

POST/v1/settlements/{settlementId}/reverse
curl https://api.ledgerbee.com/api/v1/settlements/:settlementId/reverse \ --request POST \ --header 'Content-Type: application/json' \ --header 'x-api-key: <api-key>' \ --data '{ "reason": "The payment belonged to another customer" }'
Example Request Body
{ "reason": "The payment belonged to another customer" }
json
application/json
Example Responses
{ "id": "id", "differenceReversalJournalEntryId": "differenceReversalJournalEntryId", "vatReclassReversalJournalEntryId": "vatReclassReversalJournalEntryId", "receivableTransferReversalJournalEntryId": "receivableTransferReversalJournalEntryId" }
json
application/json

Check what undoing a settlement would do

POST
https://api.ledgerbee.com/api
/v1/settlements/{settlementId}/reverse/preview
x-api-key (header)
or
OAuth 2.0

Credential: a company's API key or OAuth token.

Reports the entries the settlement linked, which are open again once it is undone, and the journal entries it posted, which each get a linked reversal. Nothing is changed.

The reversal posts today, so today’s accounting period has to be open: a closed one answers 400 with the same code the reversal itself would. A settlement already undone answers alreadyReversed: true; undoing it again changes nothing.

Required Scope

  • journal-entries-write

Check what undoing a settlement would do › path Parameters

settlementId
​string · required

ID of the settlement (UUID)

Check what undoing a settlement would do › Headers

x-api-idempotency-key
​string · maxLength: 255

Optional idempotency key for safely retrying mutating requests.

Check what undoing a settlement would do › Responses

What the reversal would do. Nothing was changed.

PublicReverseSettlementPreview
settlementId
​string · required

The settlement this preview is about.

alreadyReversed
​boolean · required

True when the settlement was already undone. Reversing it again changes nothing and answers with the earlier outcome.

reversalDate
​string · required

The date the mirror entries post on: today. Its accounting period has to be open.

Example: 2026-10-16
​PublicReverseSettlementReopenedEntry[] · required

The entries the settlement linked. Each is open again for what the settlement applied to it.

journalEntriesMirrored
​string[] · required

Journal entries the settlement posted (its difference, VAT reclass and receivable transfer) that the reversal mirrors with a linked reversal entry. Empty when the settlement posted nothing.

POST/v1/settlements/{settlementId}/reverse/preview
curl https://api.ledgerbee.com/api/v1/settlements/:settlementId/reverse/preview \ --request POST \ --header 'x-api-key: <api-key>'
Example Responses
{ "settlementId": "settlementId", "alreadyReversed": true, "reversalDate": "2026-10-16", "entriesReopened": [ { "kind": "ANCHOR", "type": "INVOICE", "id": "id", "reference": "reference", "currency": "DKK", "appliedAmount": -400 } ], "journalEntriesMirrored": [ "string" ] }
json
application/json

Check what settling these entries would do

POST
https://api.ledgerbee.com/api
/v1/settlements/preview
x-api-key (header)
or
OAuth 2.0

Credential: a company's API key or OAuth token.

Runs the settlement without posting it: what each entry would have applied, what it becomes, what the leftover is and where it would go.

Takes the same body as the settle call, so preview and settle are the identical payload — nothing has to be rebuilt between them, and nothing can differ between what you were shown and what posts.

blockers is the field to read before settling: it carries the codes that would refuse the settlement, and an empty list is what says the settle call will go through. warnings are worth checking but do not stop it — a wide rateGap means the entries were booked at rates far enough apart that the leftover is probably a mis-booked rate rather than a real exchange difference.

Required Scope

  • journal-entries-write

Check what settling these entries would do › Headers

x-api-idempotency-key
​string · maxLength: 255

Optional idempotency key for safely retrying mutating requests.

Check what settling these entries would do › Request Body

PublicSettleRequest
postingDate
​string · required

Accounting date to post the settlement on (YYYY-MM-DD).

Example: 2026-09-01
​PublicSettlementEntrySelection[] · required

The entries to settle against each other — at least two, since a settlement links something owed to something that pays it. All must belong to the named counterparty.

customerId
​string

Read the customer’s entries. Mutually exclusive with supplierId; exactly one is required.

Example: 0197A943-2325-7829-B835-B6C71A293065
supplierId
​string

Read the supplier’s entries. Mutually exclusive with customerId; exactly one is required.

Example: 0197A943-2325-7829-B835-B6C71A293066
idempotencyKey
​string

Your own key for this settlement. Sending the same key with the same body returns the original settlement instead of posting a second one, so a retry after a timeout is safe.

Example: settle-2026-09-01-invoice-1043

Check what settling these entries would do › Responses

What the settlement would do. Nothing was posted.

PublicSettlementPreview
baseCurrency
​string · required

The company’s base currency (3-letter ISO).

Example: DKK
postingDate
​string · required

Accounting date the settlement would post on.

Example: 2026-09-01
​PublicSettlementPreviewEntry[] · required

What each named entry would have applied to it, and what it becomes.

​PublicSettlementDifferencePreview · required
​PublicSettlementPostingLine[] · required

The lines that would post. Empty when the entries balance and nothing needs a posting.

blockers
​string[] · required

Error codes that would refuse the settlement. A non-empty list means the commit fails with the first of them.

Example: []
warnings
​string[] · required

Codes for things worth checking. The settlement would still post.

Example: ["SETTLEMENT_FX_RATE_GAP_UNUSUALLY_LARGE"]
​array | null

Which currencies’ entries disagree about the rate, widest first. Present only alongside the rate-gap warning, and null otherwise — it names the rates to check the booked ones against.

POST/v1/settlements/preview
curl https://api.ledgerbee.com/api/v1/settlements/preview \ --request POST \ --header 'Content-Type: application/json' \ --header 'x-api-key: <api-key>' \ --data '{ "customerId": "0197A943-2325-7829-B835-B6C71A293065", "supplierId": "0197A943-2325-7829-B835-B6C71A293066", "postingDate": "2026-09-01", "entries": [ { "kind": "ANCHOR", "id": "0197A943-2325-7829-B835-B6C71A293070", "amountToApply": 400, "version": "2026-08-14T09:12:44.000Z" } ], "idempotencyKey": "settle-2026-09-01-invoice-1043" }'
Example Request Body
{ "customerId": "0197A943-2325-7829-B835-B6C71A293065", "supplierId": "0197A943-2325-7829-B835-B6C71A293066", "postingDate": "2026-09-01", "entries": [ { "kind": "ANCHOR", "id": "0197A943-2325-7829-B835-B6C71A293070", "amountToApply": 400, "version": "2026-08-14T09:12:44.000Z" } ], "idempotencyKey": "settle-2026-09-01-invoice-1043" }
json
application/json
Example Responses
{ "baseCurrency": "DKK", "postingDate": "2026-09-01", "entries": [ { "id": "id", "kind": "ANCHOR", "appliedAmount": -400, "baseAmountApplied": -2980, "exchangeRate": 7.45, "rateSource": "OVERRIDE", "statusAfter": "PAID", "fullyConsumedAfter": true } ], "difference": { "kind": "BALANCED", "baseAmount": -12.5, "account": {}, "label": "Realized FX gain" }, "postings": [ { "accountId": "accountId", "accountLabel": "5600 Debtors", "currency": "EUR", "originalAmount": -400, "exchangeRate": 7.45, "baseAmount": -2980, "kind": "APPLIED" } ], "blockers": [], "warnings": [ "SETTLEMENT_FX_RATE_GAP_UNUSUALLY_LARGE" ], "rateGap": [ { "currency": "EUR", "minRate": 7.41, "maxRate": 7.49, "spread": 0.0107 } ] }
json
application/json

QuotesShipments