VantaCrestAlpineVantaCrest
Access →
Alpine/Develop/Balances
GET /v1/balances/current

Balances

A balance is read, never written. One snapshot returns settled, available, and reserved per holding, so money in flight is visible and never double-counted.

Live in the sandbox

Three numbers that always reconcile.

Request
GET/v1/balances/current
Authorization: Bearer ak_live_7Q4…
Response200 OK
{
  "accountRef": "acc_8xK2",
  "endpointRef": "ep_7Q4",
  "holdingBalances": [
    {
      "holdingRef": "hld_USD",
      "settledMinorUnits": "480000",
      "availableMinorUnits": "240000",
      "activeReservedMinorUnits": "240000"
    }
  ],
  "projectionState": "Projected"
}
Read the balance
Request
POST/v1/sandbox/inbound-credits
Authorization: Bearer ak_test_7Q4…
Idempotency-Key: a01-credit
{
  "accountRef": "acc_8xK2",
  "amountMinorUnits": "480000",
  "valueUnit": { "kind": "fiat", "currency": "USD" }
}
Response202 Accepted
{
  "status": "credited",
  "settledMinorUnits": "480000"
}
Fund it (sandbox)
Operations
GET/v1/balances/currentRead a balance: settled, available, reserved.
POST/v1/sandbox/inbound-creditsSimulate money arriving (sandbox only).idempotent
GET/v1/environmentRead environment status.

Settled, available, reserved

settledMinorUnits is value that has cleared; availableMinorUnits is what you can move now; activeReservedMinorUnits is held against transfers still in flight. Available equals settled minus reserved: the three are one identity, returned per holding.

Projected, honestly

Each snapshot carries a projectionState (Projected, PartiallyProjected, or NotProjected), so you know whether the figure is fully caught up before you act on it.

Fund it in the sandbox

There is no real money in the sandbox, so POST /v1/sandbox/inbound-credits to simulate value arriving and give a holding a settled balance to move. The same call does nothing in live, where money arrives over the rail.