ArrayBalance
POST
https://test.api.neotek.sa/b2b-unified/va/v1/schemes/{schemeId}/balance/arraySandbox URL · in Production call https://api.neotek.sa
Balances for a chosen set of VA IBANs within a scheme, up to 50,000 at a time.
Partial success is the design. An invalid IBAN returns a per-entry status and message rather than failing the whole request, so one bad entry in fifty thousand does not cost you the other results.
Path parameters:
| Parameter | Required | Description |
|---|---|---|
schemeId | Required | the scheme id |
Body:
| Parameter | Required | Description |
|---|---|---|
bankCode | Required | always RJHISARI |
ibans | Required | the VA IBANs to query, up to 50,000 |
msgReference | Optional | generated if omitted |
Headers:
| Parameter | Required | Description |
|---|---|---|
authorization | Required | Bearer <ACCESS_TOKEN> |
content-type | Required | application/json |
cURL
curl -X POST 'https://test.api.neotek.sa/b2b-unified/va/v1/schemes/{schemeId}/balance/array' \ --header 'authorization: Bearer <ACCESS_TOKEN>' \ --header 'content-type: application/json' \ --data '{ "bankCode": "RJHISARI", "ibans": [ "SA4580000204000010006087", "SA4580000204000010006088" ] }'Response (trimmed to one remitter) — each entry carries its own status, so check it per IBAN rather than relying on the top-level success
JSON
{ "success": true, "code": "SUCCESS", "message": "Array balance retrieved successfully", "schemeId": "SCHEME001", "currency": "SAR", "remitters": [ { "remitterIban": "SA4580000204000010006087", "availableBalance": "45000.00", "clearingBalance": "45000.00", "blockedBalance": "0.00", "status": "SUCCESS", "message": "Balance retrieved" } ], "msgReference": "ARR001"}Errors — every B2B failure carries a category that determines the HTTP status; see Statements → Errors.