Ledger balances

Create new balance

Create a new ledger balance with the Go SDK.

POST/balances

Use client.LedgerBalance.Create to create a balance on an existing ledger.

Call the method

balance, _, _ := client.LedgerBalance.Create(blnkgo.CreateLedgerBalanceRequest{
	LedgerID: "ldg_049495c6-356e-4ebc-a45e-60d1e1e16afb",
	Currency: "USD",
})
FieldTypeDescription
LedgerIDstringLedger the balance belongs to.
CurrencystringCurrency or asset class for the balance.
IdentityIDstringIdentity to link to the balance. Required when TrackFundLineage is true.
TrackFundLineageboolEnable fund lineage tracking on this balance.
AllocationStrategyAllocationStrategyHow tagged provider funds are allocated on spend: FIFO, LIFO, or PROPORTIONAL.
MetaDataMetaDataOptional metadata for extra context.

Create an internal balance yourself instead of waiting for the first @ reference on a transaction. See Internal balances.

balance, _, _ := client.LedgerBalance.Create(blnkgo.CreateLedgerBalanceRequest{
	LedgerID:  "general_ledger_id",
	Currency:  "USD",
	Indicator: "@Revenue",
})
FieldTypeDescription
LedgerIDstringMust be general_ledger_id. Indicator is only allowed on this ledger.
IndicatorstringMust start with @ and contain no whitespace. The same indicator and currency pair can only exist once.

Needs Core 0.15.3. A duplicate returns 409.

Response

{
  "balance": 0,
  "inflight_balance": 0,
  "credit_balance": 0,
  "inflight_credit_balance": 0,
  "debit_balance": 0,
  "inflight_debit_balance": 0,
  "ledger_id": "ldg_049495c6-356e-4ebc-a45e-60d1e1e16afb",
  "identity_id": "",
  "balance_id": "bln_5ce86029-3c2e-4e2a-aae2-7fb931ca4c4f",
  "currency": "USD",
  "created_at": "2024-11-26T08:36:36.238244338Z",
  "meta_data": null
}
{
  "balance": 0,
  "inflight_balance": 0,
  "credit_balance": 0,
  "inflight_credit_balance": 0,
  "debit_balance": 0,
  "inflight_debit_balance": 0,
  "ledger_id": "general_ledger_id",
  "indicator": "@Revenue",
  "identity_id": "",
  "balance_id": "bln_a7c3e91f-2d48-4b1a-9e6c-5f8d2a1b4c70",
  "currency": "USD",
  "created_at": "2024-11-26T08:36:36.238244338Z",
  "meta_data": null
}

You can now use @Revenue as source or destination.

Go response (*blnkgo.LedgerBalance)

FieldTypeDescription
BalanceIDstringUnique ID for the balance. Use as source or destination on transactions.
LedgerIDstringLedger ID you passed in the request.
IndicatorstringSet when you created a General Ledger balance with Indicator.
CurrencystringCurrency you passed in the request.
Balance*big.IntCurrent net amount in the balance.
CreatedAttime.TimeDate and time the balance was created.
MetaDataMetaDataOptional metadata object.