Developers / Numbers

Numbers / Receivables / Credit Notes

Batch-ingest receivables credit notes and drive their commit/void lifecycle.

POST /v1/numbers-receivables-credit-notes
POST /v1/numbers-receivables-credit-notes/{id}/commit
POST /v1/numbers-receivables-credit-notes/{id}/void

Mirrors the receivables invoices endpoint with two differences: trading legs post on the debit side (reversing the original invoice movement) and the AR counterparty leg posts on the credit side. Document numbers are allocated as CRN-NNNNNN.

Required scope

numbers.receivables-credit-notes.write

Batch request

Same shape as the invoices endpoint plus an optional originating_invoice_identifier for traceability.

POST /v1/numbers-receivables-credit-notes
{
  "schema_version": "1.0.0",
  "items": [
    {
      "external_identifier": "019f0000-aaaa-7bbb-8ccc-cccccccccccc",
      "counterparty_identifier": "019f1111-bbbb-7ccc-9ddd-222222222222",
      "originating_invoice_identifier": "019f1234-5678-7abc-9def-0123456789ab",
      "transaction_date": "2026-06-05",
      "transaction_currency": "ZAR",
      "narration": "Credit note - returned goods",
      "post_status": "committed",
      "lines": [
        { "order": 1, "account_number": "4000", "description": "Reversal", "line_amount": "1000.00", "vat201_rate_code": "20180401-1" }
      ]
    }
  ]
}

originating_invoice_identifier, when supplied, must reference an existing invoice belonging to the same client (source='invoice'); otherwise the item fails with originating-invoice-unknown.

Batch response

Same envelope as the invoices endpoint (ReceivablesBatchResponse in the OpenAPI spec).

Lifecycle

EndpointTransitionNotes
POST /{id}/commitdc409 state-transition-invalid if not in draft.
POST /{id}/voidd|cvSame lock guards as invoice void (vat-return-locked, asset-register-linked).

Errors

Same per-item problem types as invoices, with the addition of originating-invoice-unknown.