Skip to main content

Ledger ID arguments and fields are deprecated in favour of ledger numbers

Action Required
Jan. 23, 2025, 2:59 p.m.

Ledger numbers are a unique identifier for ledgers (e.g. L-1234ABCDE). Ledger numbers are the canonical identity of ledgers and are preferred over ledger IDs.

What is changing?

The argument ledgerNumber of type string is added, and the argument ledgerId is deprecated in the following fields:

  • AccountInterface.ledgers
  • AccountInterface.paginatedPaymentForecast
  • AccountInterface.paymentForecast
  • AccountInterface.payments
  • AccountInterface.transactions
  • Query.dashboardScreen

The field ledgerNumber of type string is added, and the field ledgerId is deprecated in the following input object types:

  • AccountLedgerInput
  • CollectPaymentInput
  • InitiateHostedStandalonePaymentInput
  • InitiateStandalonePaymentInput
  • GetEmbeddedSecretForNewPaymentInstructionInput
  • PostCreditInput
  • RequestRepaymentInputType
  • SetUpDirectDebitInstructionInput
  • StorePaymentInstructionInput
  • UpdateAutoTopUpAmountInput

The field ledgerNumber of type string is added, and the field ledgerId is deprecated in the following object type:

  • GoodsPurchase

The field number of type string is added, and the field id is deprecated in the following interfaces and types:

  • LedgerInterface
  • LedgerType
  • SupplementaryLedgerInterface
  • SupplementaryLedgerType

What do I need to do?

Please use ledgerNumber instead of ledgerId and number instead of id. There is no other change in functionality. The removal date for ledger ID fields and arguments is set for the 25th of June 2025.

You can query for the ledgers on an account and their numbers with getAccountLedgers:

query getAccountLedgers($accountNumber: String!) {
        account(accountNumber: $accountNumber) {
            ledgers {
                name
                ledgerType
               	number
            }
        }
    }