Skip to main content

List API

The Ledger List API lets you page through every credit / debit entry that Ahrvo has generated for a customer or program-manager account. Data is eventually consistent — new ledgers may appear up to 30 minutes after the triggering transaction posts.


Resource Access

Production (api.ahrvo.network)

POST https://api.ahrvo.network/banking/us2/v1/ledger/list

Staging (gateway.ahrvo.network)

POST https://gateway.ahrvo.network/banking/us2/v1/ledger/list

Core Response Fields

FieldDescription
idUnique ledger entry ID.
accountNested object identifying the Ahrvo account that owns the ledger.
scheduleThe transaction that produced the ledger (if any).
typeCREDIT | DEBIT
methodACH, WIRE, BOOK, CARD, CHECK, VIRTUAL_CARD, INTERNATIONAL_WIRE, MONEYGRAM
amountSigned ledger amount (two-decimal string).
ledgerDateCalendar date the entry was created (UTC).
memoFree-form user text.
statusProcessing status of the ledger.
currentBalanceSpendable balance after this ledger.
holdBalanceRunning total of debit-card holds.
actualBalancecurrentBalance + holdBalance.
scheduleClassCOLLECT | SEND (mirrors the parent transaction).
ledgerTypeOnly for CARD: HOLD, RELEASE, SETTLE.
groupIdServer-generated value that ties all ledgers for the same transaction.
batch / processorBatchDetailsPresent for CARD batches.
Audit FieldscreatedOn / createdBylastUpdatedOn / lastUpdatedBy

Request Body — List Ledger

NodeRequiredPurpose
criteria.filters[]OptionalSame filter grammar as /transaction/list.
sortOptionsOptionalsortByidcreatedOnlastUpdatedOnsortOrderASC / DESC
pageNumber / pageSizeOptionalCursor-based paging.
getTotalCountOptionaltrue to ask for totalCount.

Tip — Filtering by offset requires a sort on id.


Sample Request — List Ledgers Updated Since a Date
POST /banking/us2/v1/ledger/list HTTP/1.1
Host: <hostname>
Authorization: Bearer <JWT token>
x-api-key: {apiKey}
Content-Type: application/json
{
"sortOptions": { "sortBy": "lastUpdatedOn", "sortOrder": "DESC" },
"criteria": {
"filters": [
{
"key": "lastUpdatedOn",
"operator": "gte",
"values": [ "05/10/2025 00:00:00" ]
}
]
},
"pageNumber": 1,
"pageSize": 50,
"getTotalCount": true
}

Sample Response — Page with Two Ledgers
{
"totalCount": 2,
"returnedCount": 2,
"pageNumber": 1,
"offset": 99000321,
"hasMore": false,
"resources": [
{
"resourceName": "ledger",
"url": "v1/ledger/id/99000322",
"id": 99000322,
"account": { "id": 4000693, "resourceName": "account", "url": "/v1/customer/id/4000854/account/id/4000693" },
"schedule": { "id": 230001518, "resourceName": "transaction", "url": "/v1/transaction/id/230001518" },
"groupId": "GRP-230001518",
"type": "DEBIT",
"method": "WIRE",
"scheduleClass": "SEND",
"amount": "5.00",
"ledgerDate": "07/16/2024",
"memo": "W-230001518 wire debit",
"status": "POSTED",
"currentBalance": "941.15",
"holdBalance": "0.00",
"actualBalance": "941.15",
"createdOn": "07/16/2024 07:01:28",
"createdBy": { "userType": "SYSTEM", "userName": "SYSTEM" },
"lastUpdatedOn": "07/16/2024 07:01:29",
"lastUpdatedBy": { "userType": "SYSTEM", "userName": "SYSTEM" }
},
{
"resourceName": "ledger",
"url": "v1/ledger/id/99000321",
"id": 99000321,
"account": { "id": 4000693 },
"schedule": { "id": 230001518 },
"groupId": "GRP-230001518",
"type": "DEBIT",
"method": "WIRE",
"scheduleClass": "SEND",
"amount": "0.25",
"ledgerType": "FEE",
"memo": "FX fee",
"ledgerDate": "07/16/2024",
"status": "POSTED",
"currentBalance": "946.15",
"holdBalance": "0.00",
"actualBalance": "946.15",
"createdOn": "07/16/2024 07:01:28",
"createdBy": { "userType": "SYSTEM", "userName": "SYSTEM" },
"lastUpdatedOn": "07/16/2024 07:01:29",
"lastUpdatedBy": { "userType": "SYSTEM", "userName": "SYSTEM" }
}
]
}
HTTP/1.1 200 OK

The groupId ties both debit lines (principal + fee) back to wire transaction 230001518.


OpenAPI Specification