Overview

Our API allows you to use some of the most important functionalities of ANB platform to perform jobs in your app using ANB services & customers' data.

 

Prerequisites

To use the SADAD service, you need to do the following:

  • Register/Login to the ANB Developer Portal.
  • Create an app.
  • You should now have a client id and secret associated with your app.
  • Get an access token from our auth service using your client id and secret.

 

To create a new application:

  • Log in to your account. Then navigate to Apps > Add App.
  • In the App name field, enter a name for your application.
  • In the APIs field, select B2B Payment Sandbox, and click ADD APP.
  • Get an access token from our auth service using your client id and secret.
Sandbox access details
Attribute Value
client_id The client_id for your application on the Developer Portal
client_sercret The client_sercret for your application on the Developer Portal

How to integrate with ANB?

  1. Make sure to read and to understand API documentation.

  2. Send an email to API@anb.com.sa with below details

  3. You will get an email from API@anb.com.sa with client id and secret

 

Error codes

Error Codes
Status Code Description
I000000 Successful Operation
E020051 Language code should be ENGLISH or ARABIC
E020358 Associate ID is mandatory for the service 058
E620001 The signon information provided in the query in invalid
E620002 The date range supplied in invalid
E620003 The specified Biller does not exist in system
E620004 Bank is not active
E620005 Neither Biller ID nor customer ID specified in query
E620006 Customer?s logon ID not active :
E620007 Customer ID is not specified in query
E620008 Customer does not exist in system
E620009 The following property is null or undefined
E620010 Access channel is mandatory
E620011 Biller ID is mandatory if billing account / bill number is provided
E620012 Display label not found for statement
E620013 Invalid customer, like ?invalid customer?, or ?could not obtain customer information'
E620014 Error while fetching Service Account Presentment Agreement for the entities provided'
E620015 System specified message for error while fetching Statement(s)
E620016 Error populating bill record aggregate in the response
E620017 Error while fetching global (SADAD) message for the response
E620018 Error while applying one of the rules
E620019 Error while fetching fake Statement(s)
E620020 Specified entity does not exist in the system
E620021 Merchant key for Service Account Presentment Agreement not found in the system
E620022 The query passed in null
E620023 Null / invalid date format :
E620024 Audit failure! The process could not be audited
E620025 Customer ID is mandatory for customer
E620026 Proxy customer ID is mandatory for proxy customer
E620027 Biller is not active :
E620028 Account is not active :
E620029 Query successful, but fetch limit reached. Some records may not have been fetched
E620030 No bills found matching the search criteria
E620031 Query response failed schema validation
E620032 Internal error
E620033 Invalid XML. Schema validation failed
E620034 Failed to get Sender ID, Receiver ID or Message Code from XML message
E620035 Failed to get message parameters from config file
E620036 Failed to read MessageDetails.cnf file
E620037 Failed to validate the message
E620038 Failed to query bill
E620039 Failed to sign or persist response message
E620040 Utility Bill host Server is not running
E620041 Communication problem with utility Bill host server
E620042 Overpayment or underpayments is not allowed
E620043 Cannot make overpayment
E620044 Cannot make underpayment
E620045 Bill Not Found
E620046 Bill has expired. Payments cannot be made on expired bills
E620047 Payable amount should be greater than zero
E620048 Your account has been disabled. Please contact the Administrator
E620049 Account not found
E620050 Biller is not active
E620051 The specified Biller does not exist in the system
E620052 Internal Error!
E620053 Failure (see embedded error code(s))
E620054 Issuer Bank not found
E620055 Acquirer Bank not found
E620056 There is no enough data provided to complete the transaction
E620057 Issuer Bank Not Active
E620058 Acquirer Bank Not Active
E620059 Cannot make multiple payments on the same Account/Bill in a single request
E620060 Access Channel not found
E620061 Payment validation request limit exceeded
E620062 Access Channel not Active
E620063 Branch Code is missing
E620064 District Code is missing
E620065 Payment method is missing
E620066 Access Channel is missing
E620067 You have been disabled. Please contact the Administrator
E620068 Verification failed for the certificate used for signing the data
E620069 Signature verification failed
E620070 Payment Confirmation failed
E620071 Customer not found
E620072 One or more accounts not found
E620073 One or more associations between the customer and its accounts not found
E620074 Failed to inquire Customer Profile
E620075 Failed to add Customer Profile
E620076 Failed to delete Customer Profile
E620077 Amount does not match
E620078 Sadad PmtId missing
E620079 Payment is a part of the group
E620080 Payment has been advanced to a state wherein advice cannot be performed
E620081 Bank PmtId missing
E620082 Value date is missing
E620083 Sadad Timeout
E620084 SADA General Failure
E620085 TimeOut
E620086 Channel Is Not Enabled
E620087 Fund Transfer Error
E620088 Fund Transfer Timeout
E620089 Message Response Error(As an Inner Error Only)
E620090 ChannelTimeOut
E620091 ATM Has Terminated The Payment
E620092 Account has Insufficent Funds
E620093 Account is Not Valid
E620094 Communication Error With SADAD
E620095 Payment Already Advised Error
E620096 Payment Already Terminated Error
E620097 Invalid Message Type Coming From The Channel
E620098 Tuxedo Unable To Connect To Host
E620099 Tuxedo Connected To Host But No Response
E620100 Your request has failed. Please try again later
E620101 The requested biller is not subscribed for Fee Query service
E620102 The supplied RQUID has already been used
E620103 Bank is not authorized to access this service
E620104 The selected access channel is not permitted to perform MOI payments
E620105 Fee amount is less than or equal to zero
E620106 The supplied service ID is not of a service provided by the biller
E620107 Branch code does not exist:
E620108 District code does not exist :
E620109 Branch code is missing
E620110 District code is missing
E620111 Payment already exists in the system for request (RQUID)
E620112 Payment Amount Validation failed for CIP
E620113 CIP Validation failed for payment type :
E620114 CIP validation failed for account :
E620115 Account does not exist in the system :
E620116 Payment Amount is not in range
E620117 The payment type does not exist
E620118 Payment Check digit is missing
E620119 Exact payment is required
E620120 Payment is less than the minimum allowed amount
E620121 Payment is greater than the maximum allowed amount
E620122 Invalid or missing payment method
E620123 Billing account must not be supplied for voucher payment type :
E620124 Bill number must not be supplied for voucher payment type :
E620125 No vouchers available for the requested amount
E620126 Billing account is not supplied
E620127 Acquirer BankId is missing
E620128 The count of payments validated and the payments count in Advice request dont match
E620129 No Payments found for the groupPmtId provided
E620130 Status aggregate defining advice code is missing
E620131 Payment already exists in the system with Bank PmtId:
E620132 Duplicate Bank PmtId found in the request
E620133 Advice can only be performed by the Bank that requested payment validation
E620134 Bank Id in the request does not match the Bank Id in the system
E620135 The Customer Id in the request does not match the Customer Id in the system
E620136 The Service Id in the request does not match the Service Id in the system
E620137 The Beneficiary Id in the request does not match the Beneficiary Id in the system
E620138 The Partner service aggregate is missing
E620139 Customer-Account association not found
E620140 Biller assigned customer association cannot be deleted
E620141 One or more associations between the customer and its accounts are biller assigned
E620142 Failed to get Signature value
E620143 Failed to get Certificate details from partner profile
E620144 Failed to get partner profile from config file
E620145 Failed to read PartnerDetails.cnf
E620146 Failed to read SADADProfile.cnf file
E620147 Failed to retrieve Biller Info
E620148 Failed to attach signature to the message
E620149 Failed to sign the data
E620151 Incorrect Beneficiary Id
E620152 Incorrect amount entry
E620153 Wrong amount
E620154 Citizen record not found
E620155 Incorrect sponsor Id entry
E620156 Refund Amount is Exceeding the available Amount
E620157 Not Enough Balance
E620158 Incorrect key field entry
E620159 Occupation not found
E620160 Beneficiary ID is not Supplied in the Request
E620163 Invalid customer Id
E620164 Citizen not found
E620165 Alien not found
E620166 Visitor not found
E620167 Invalid customer Id
E620168 Customer cannot perform the required service
E620170 Operation cannot be completed, try again later
E620171 Operation cannot be completed, check with bank
E620172 Operation cannot be completed, check with NIC
E620173 Duplicate Refund Id
E620174 No Payment Found
E620175 Unable To Get Customers Account
E620176 Unable to Get the Payment
E620177 Unable to Log Refund Query Request
E620178 Duplicate Incomplete Refund
E620179 Unable to Log Refund Query Response
E620180 Internal Error
E620181 Unknown Error, check with NIC
E620182 Invalid or missing HTTP Header sender-id or rquid or destination-id
E620183 Missing data stream or valid content-type application/octet-stream
E620184 Invalid message code. Expected RINQRQ
E620185 Invalid message type. Expected RefundInqRq
E620186 Failed to deliver refund query request to biller
E620187 Invalid Duration / Period
E620188 Fee does not exist for given duration
E620189 No Fee Required
E620190 Fee Amount is Zero
E620191 Invaild job category
E620192 Incorrect number of dependents
E620193 Invalid Visa number
E620194 Invalid passport type
E620195 Citizen is suspended
E620196 Citizen is either dead or nationality withdrawn
E620197 Incorrect citizen Id
E620198 Beneficiary ID Is not found
E620199 Citizen ID is Not Found
E620200 Invalid alien Id
E620201 Alien ID is Not Found
E620202 Alien has died
E620203 Alien is naturalized
E620204 Alien has exited and not returned
E620205 Alien is outside the kingdom
E620206 Visitor ID is Not Found
E620207 Travel record (border crossing) not found
E620208 Visitor has exited the kingdom
E620209 Visitor Visa not found
E620210 Alien Sponsor record not found
E620211 Extension can only be granted to an Alien head of household
E620212 The Id entered in not for a dependant alien
E620213 Alien Visa not found
E620214 Alien Passport Not Found
E620215 Pilgrim is not found
E620216 The HOH Of The Current Dependent Is Not Found
E620217 Dependant has a separate Iqama
E620218 Separation Is Not Allowed For The Current Dependent
E620219 Exceeding maximum number of years for Iqama
E620220 The citizen wife Id should be for a female
E620221 Sponsor name not found
E620222 Alien is suspended
E620223 No Visa requested
E620224 Incorrect number of Visass entry
E620225 Invalid Visa Type
E620226 Invalid vehicle sequence number
E620227 Vehicle Sequence Number is not Supplied in the Request
E620228 Incorrect current owner Id entry
E620229 Vehicle current registration type is not found
E620230 Vehicle record not found
E620231 new license plate record not found
E620232 The service is only valid for old vehicle registration type
E620233 Vehicle new owner can not be same as the current owner
E620234 Vehicle owner record not found
E620235 Vehicle Current Owner ID is not Supplied in the Request
E620236 Invalid vehicle new owner Id
E620237 Vehicle New Owner ID is not Supplied in the Request
E620238 Invalid numeric part of the new license plate
E620239 The Numeric Part of the New License Plate is not Supplied in the Request
E620240 Vehicle registration type is invalid
E620241 Vehicle Registration Type is not Supplied in the Request
E620242 The supplied license plate number can not be found
E620243 Vechicle body type is invalid
E620244 Vehicle Body Type is not Supplied in the Request
E620245 Vehicle custom card number is invalid
E620246 Vehicle Custom Card Number is not Supplied in the Request
E620247 This service is only validfor new vehicle registration type
E620248 The vehicle status is not valid for the requested service
E620249 Vehicle custom card number is not found
E620250 The vehicle custom card number is already in use with another vehicle
E620251 The Request Type is Invalid
E620252 Invalid license type
E620253 The Request Type is not Supplied in the Request
E620254 The License Type is not Supplied in the Request
E620255 The Beneficiary ID is not Supplied in the Request
E620256 The Request Type is Invalid
E620257 Driving license status not found
E620258 Driving license not found
E620259 Unpaid Traffic Violation(s) Found For The Beneficiary
E620260 Invalid event actual date
E620261 Citizen has a nationality withdrawn status
E620262 Death registration requested for a dead person
E620263 Can not issue a replacement ID Card for a dead citizen
E620264 Only male citizens can perform the birth registration service
E620265 Event actual date is greayer than current da
E620266 Unable to Log FeeInquiry Request Caused by Error in SQL Execution
E620267 Unable to Log FeeInquiry Response Caused by Error in SQL Execution
E620268 This Operation is Blocked from 11:30PM to 12:30PM oclock
E620269 Unknow Error, check with NIC
E620270 Unsuccessful
E620271 Violation Already Paid
E620272 Violation Cancelled
E620273 Violation Not Payable Online
E620274 Violation does not belong to Customer
E620275 No Violations found for Customer
E620276 Refund message is from a bank that is not subscribed to the refund process
E620277 The Refund ID provided does not match an existing Refund record in SADAD
E620278 Refund is not a Cash Refund
E620279 Refund record has an invalid status of Refund Status
E620280 Customer ID does not match the refund record
E620281 Customer ID Type does not match the refund record
E620282 Incorrect PIN number
E620283 Biller ID does not match the refund record
E620284 Bank ID does not match the refund record
E620285 Refund record is expired
E620286 Refund ID must start either with the biller?s ID or the Bank?s ID
E620287 Bank not found in Sadad
E620288 The bank is not activated
E620291 Cannot process Refund request now, please try later
E620292 Data did not receive from Host System.
E620293 Socket Timeout Exception Please Check with MB Supprot Team.
E620294 SocketException Please Check with MB Supprot Team.
E620295 IOException Please Check with MB Supprot Team.
E620296 UnknownError Please Check with MB Supprot Team.
E620297 NullPointerException Please Check with MB Supprot Team.
E620298 Exception has been occured during the process.
E620299 Unhandled Java: Exception thrown by MB
E620300 The Required Driving License validity Duration is Invalid
E620301 Invalid message code. Expected FINQRQ
E620302 Invalid message type. Expected FeeInqRq
E620303 Date must be Gregorian
E620304 Fee Duration Date value cannot be less than todays date
E620305 The Associate ID is Invalid
E620306 The maximum allowed period to inquiry associates fees is 10 years
E620307 Dependent Birth Date cant be a future value
E620308 The Dependent Birth Date is Invalid
E620309 Payment Validation failed
E620310 Advice Status Code is not valid
E620311 Partner is not subscribed to use the requested service.
E620312 Bank is not registered with SADAD
E620313 Bank is deactivated in SADAD
E620314 The SADAD Bills ID provided does not exist
E620315 The SADAD Bills ID is no longer available to pay
E620316 Invoice details could not be retrieved, please try again
E620317 The Payer ID provided does not exist
E620318 There are no available invoices for the Payer ID provided
E620319 The supplier does not exist or cannot be found based on the search you have entered
E620320 Invalid bill query request.
E620321 MOIFeeAdvice MissMatch
E620322 Inactive Biller
E620323 Invalid Amount
E620324 Missing SPTN
E620325 Beneficiary id needed for prepaid accounts
E620326 Beneficiary OfficialIdType is required
E620327 The Beneficiary OfficialIdType is not valid
E620328 The allowed amount to be paid as a partial payment against this bill
E620329 Beneficiary id does not match with account owner id
E620330 Postpaid payment type not allowed for prepaid account
E620331 Customer Id is required
E620332 Beneficiary phone number is needed for prepaid service
E620333 Partial payments are not permitted
E620334 Amount entered is less than the minimum (partial payment) payable
E620335 Amount entered is greater than the invoice outstanding amount
E620336 Payment failure, please try again (catch all)
E620337 Invalid payment validation request provided.
E620338 More unpaid violation(s) exists
E620339 The Violator Id is Invalid
E620340 The Violator Id has an Invalid Check Digit
E620341 No Fines available for payment
E620342 The Visa cannot extended the Iqama Validity
   
E620338 More unpaid violation(s) exists
E620339 The Violator Id is Invalid
E620340 The Violator Id has an Invalid Check Digit
E620341 No Fines available for payment
E999970 Cast Exception
E999971 Conversation Exception
E999972 Sql Exception
E999973 User Exception
E999974 Receoverable Exception
E999975 Database Connection Issue
E999976 DataBase Timeout
E999977 MQ communication error
E999985 TCPIP Communication Error With the Host Systems(Connection Refused)
E999998 Unrecoverable database error
E999999 Unrecoverable integration error