Back to neotek ↗Get Sandbox Access

BillInquiry

POSThttps://test.api.neotek.sa/b2b-unified/v1/sadad/inquiry

Sandbox URL · in Production call https://api.neotek.sa

What is owed on a subscriber account with one biller.

Body:

ParameterRequiredDescription
bankCodeRequiredwhich bank performs the inquiry: RJHISARI or ARNBSARI
billerCodeRequiredthe biller, as a 3-digit zero-padded code
subscriberNumberRequiredthe account with that biller, up to 30 characters

Headers:

ParameterRequiredDescription
authorizationRequiredBearer <ACCESS_TOKEN>
content-typeRequiredapplication/json
cURL
curl -X POST 'https://test.api.neotek.sa/b2b-unified/v1/sadad/inquiry' \  --header 'authorization: Bearer <ACCESS_TOKEN>' \  --header 'content-type: application/json' \  --data '{    "bankCode": "ARNBSARI",    "billerCode": "002",    "subscriberNumber": "4210056076"  }'

Response

JSON
{  "success": true,  "code": "SUCCESS",  "message": "Bill inquiry successful",  "billerCode": "002",  "subscriberNumber": "4210056076",  "dueAmount": "2708.20",  "sadadReference": "DE1234567890"}

sadadReference comes back from ARB but is null for ANB. It does not affect the payment — the reference is resolved internally when you submit.

Errors — each failure carries an error category and a specific code

StatusCodesCause
400 ERROR_CATEGORY_VALIDATION_FAILEDINVALID_ACCOUNT, INVALID_AMOUNT, INVALID_BANK_CODE, ACCOUNT_NOT_FOUNDUnknown biller code, bad subscriber number, malformed IBAN
401 ERROR_CATEGORY_AUTH_FAILEDAUTH_FAILED, CREDENTIALS_NOT_FOUNDToken expired, or missing ANB SADAD account configuration
404 ERROR_CATEGORY_NOT_FOUNDNOT_FOUNDNo bill for that biller and subscriber pair
409 ERROR_CATEGORY_DUPLICATEDUPLICATE_TRANSACTIONYou reused a transactionReference
422 ERROR_CATEGORY_BANK_REJECTEDINSUFFICIENT_FUNDS, ACCOUNT_BLOCKED, PAYMENT_NOT_ALLOWEDThe bank declined it
503 ERROR_CATEGORY_TEMPORARY_FAILUREBANK_UNAVAILABLE, NETWORK_TIMEOUTRetry with backoff