Skip to main content

Absa Pay Integration Process

No integration changes are required to include Absa Pay.

Additional optional payment request fields

The following optional fields can be passed in for the Absa Pay flow:

Request FieldDescriptionType
enabledBy default, the Absa Pay payment method is enabled for all payment requests. Use this optional field to disable Absa Pay at the payment request level, replacing it with the Absa iEFT implementation.Boolean
payerDisplayNarrativeThis is the description of the goods or services that the user is purchasing. This is defaulted to {payee_name} payment.String
merchantDetails.nameThis is used to customise the payee name field which is shown on the approval prompt in the Absa application. This is defaulted to the configured client name.String

Within the payment request mutation, this looks as follows:

Implementing the Verified Flow

Should Absa require that you implement the "Verified flow", you will need to include the payer's verified identifier when creating a payment request.

A payer's South African Identity Number must be used as a verified identifier. If a value is provided, it will only be validated when paying with Absa Pay.

caution

The identityNumber must be a valid South African Identity Number.

If an invalid South African Identity Number is provided, the Absa Pay payment initiation request will fail with a message indicating that a valid South African ID number is required.

Within the payment request mutation, initiating the verified flow on Absa Pay is as follows:

Unverified users

If the user selects Absa Pay from the list of banks while attempting to make their payment, and the identifier passed in the above mutations is either invalid, missing, or is not associated with a Absa bank account they will be presented with a message indicating that they need to verify their details before being redirected back to your site with reason=verification_required.

Testing Absa Pay Scenarios

Our sandbox environment allows simulation of specific Absa Pay scenarios that users may experience in production, including how a user could handle MFA (multi-factor authentication) in their Absa app. To simulate these cases, the beneficiaryReference of your payment request can be tweaked as follows:

ScenarioBeneficiary Reference
MFA successful and payment completed for user with single accountsuccess
MFA successful and payment completed for user with multiple accountssuccess-multiple
MFA request timed outsuccess-timeout
MFA request declined by usersuccess-declined
Insufficient fundssuccess-insufficient
Daily limit exceededsuccess-dailyLimit
MFA successful, but payment failssuccess-paymentFail
Payment initiation failure at Absafailed
Payment intiated from an account without an Absa applicationnotADigitalCustomer
Payment intiated from non-existent Absa accountnoAccountFound
Payment intiated for a beneficiary that has already been paidpaidBeneficiary
Payment intiated from a business account that cannot initiate Absa Pay paymentsinvalidBusinessAcc
Duplicate payment intiatedduplicatePayment