AVS-R
Real-time Account Verification Service to validate bank account ownership and details before processing payments. Reduce failed transactions and fraud by confirming account holder names match provided customer information.
Request
Verify whether a bank account belongs to a particular individual or business
Path
POST
/avs-r
Request Body
{
"records": [{
"customer": {
"reference": "CLN240919000001",
"company_name": null,
"company_registration": null,
"person_name": "John",
"person_surname": "Doe",
"id_type_lookups_id": "loo_abc123...",
"id_number": "900112....",
"email": "johndoe@mail.com",
"contact_number": "+27831234567",
},
"bank_account": {
"bank_account_number": "10004291601",
"bank_account_type_lookups_id": "loo_abc123...",
"bank_name_lookups_id": "loo_abc123...",
"bank_branch_code": 632005
},
}]
}
Request Parameters
Field | Required | Type | Description | Example |
---|---|---|---|---|
*.customer.reference | Y | String(35) | Reference to identify a specific customer | CLN240919000001 |
*.customer.company_name | C | String(64) | Either a company name OR person name and surname must be provided. Company name is used when collection is made from a specific company. Company name is NOT supported by DebiCheck payments. | Superior Meteor Corp |
*.customer.company_registration | C | String(64) | Either a company registration OR id_type_lookups_id & id_number must be provided. | 2014/704567/05 |
*.customer.person_name | C | String(32) | Name of the person to be collected from | John |
*.customer.person_surname | C | String(32) | Surname of the person to be collected from | Doe |
*.customer.id_type_lookups_id | C | String(32) | Required field for individuals. Lookups ID relating to the type of ID number e.g. South African ID, passport or temporary residence. | loo_abc123... |
*.customer.id_number | C | String(13) | Required field for individuals | 900112... |
*.customer.email | Y | String(128) | Valid email address of the person to be collected from | johndoe@mail.com |
*.customer.contact_number | N | String(16) | Mobile contact number of the person to be collected from. Must include the area code. Required for 'DebiCheck TT1 realtime approval within 3 minutes' approval windows. | +27831234567 |
*.bank_account.bank_account_number | Y | String(17) | Bank account number to be collected from | 10004291601 |
*.bank_account.bank_account_type_lookups_id | Y | String(32) | Lookups ID relating to a bank account e.g. Cheque. Lookups type must be 'Bank Account' | loo_abc123... |
*.bank_account.bank_name_lookups_id | Y | String(32) | Lookups ID relating to a bank name e.g. Absa. Lookups type must be 'Bank Name' | loo_abc123... |
*.bank_account.bank_branch_code | Y | Integer | Bank branch code for the account number | 632005 |
Response Body
{
"status": true,
"results": [{
"account_result": {
"found": true,
"open": true,
"length_open": true,
"accept_debits": true,
"accept_credits": true,
},
"match": {
"name": true,
"email": true,
"contact": true,
"identity": true,
"account_type": true,
"initials": true,
},
"customer": {
"reference": "CLN240919000001",
"company_name": null,
"company_registration": null,
"person_name": "John",
"person_surname": "Doe",
"id_type_lookups_id": "loo_abc123...",
"id_number": "900112....",
"email": "johndoe@mail.com",
"contact_number": "+27831234567",
},
"bank_account": {
"bank_account_number": "10004291601",
"bank_account_type_lookups_id": "loo_abc123...",
"bank_name_lookups_id": "loo_abc123...",
"bank_branch_code": 632005
},
"warning": null,
"error": null
}, ...]
}
Response Parameters
Field | Type | Description | Example |
---|---|---|---|
*.account_result.found | Boolean | Whether the bank account was found in the bank's records | true |
*.account_result.open | Boolean | Whether the bank account is currently open and active | true |
*.account_result.length_open | Boolean | Whether the account has been open for sufficient time | true |
*.account_result.accept_debits | Boolean | Whether the account accepts debit transactions | true |
*.account_result.accept_credits | Boolean | Whether the account accepts credit transactions | true |
*.match.name | Boolean | Whether the provided name matches the account holder's name | true |
*.match.email | Boolean | Whether the provided email matches the account holder's email | true |
*.match.contact | Boolean | Whether the provided contact number matches the account holder's contact | true |
*.match.identity | Boolean | Whether the provided identity number matches the account holder's identity | true |
*.match.account_type | Boolean | Whether the provided account type matches the actual account type | true |
*.match.initials | Boolean | Whether the provided initials match the account holder's initials | true |
*.customer.reference | String(35) | Reference to identify a specific customer | CLN240919000001 |
*.customer.company_name | String(64) | Either a company name OR person name and surname must be provided. Company name is used when collection is made from a specific company. Company name is NOT supported by DebiCheck payments. | Superior Meteor Corp |
*.customer.company_registration | String(64) | Either a company registration OR id_type_lookups_id & id_number must be provided. | 2014/704567/05 |
*.customer.person_name | String(32) | Name of the person to be collected from | John |
*.customer.person_surname | String(32) | Surname of the person to be collected from | Doe |
*.customer.id_type_lookups_id | String(32) | Required field for individuals. Lookups ID relating to the type of ID number e.g. South African ID, passport or temporary residence. | loo_abc123... |
*.customer.id_number | String(13) | Required field for individuals | 900112... |
*.customer.email | String(128) | Valid email address of the person to be collected from | johndoe@mail.com |
*.customer.contact_number | String(16) | Mobile contact number of the person to be collected from. Must include the area code. Required for 'DebiCheck TT1 realtime approval within 3 minutes' approval windows. | +27831234567 |
*.bank_account.bank_account_number | String(17) | Bank account number to be collected from | 10004291601 |
*.bank_account.bank_account_type_lookups_id | String(32) | Lookups ID relating to a bank account e.g. Cheque. Lookups type must be 'Bank Account' | loo_abc123... |
*.bank_account.bank_name_lookups_id | String(32) | Lookups ID relating to a bank name e.g. Absa. Lookups type must be 'Bank Name' | loo_abc123... |
*.bank_account.bank_branch_code | Integer | Bank branch code for the account number | 632005 |
*.warning | String | Any warning messages associated with this verification | null |
*.error | String | Any error messages that occurred during verification | null |
Transactions
Retrieve and monitor transaction records including payment attempts, status changes, and settlement details. Access comprehensive transaction history with filtering, pagination, and detailed status information for reporting and reconciliation.
SDO
Optimize payment collection dates using Strike Date Optimization algorithms. Analyze historical transaction data to determine the best days for processing recurring payments and maximize collection success rates.