Charge Card
Send card details along with payment information in order to charge a card for payment
Charge Card
POST
https://a1pay.net/api/cardpayment/paynow
Request Body
PIN
string
4 digit PIN of the card
CardId
number
0 if this is a new card, or Id of selected card if user is using an existing card
UserId
integer
Id of the logged in user
CVV
string
User's CVV also known as CVC
RecipientNameResolved
boolean
set to true
ClientReference
string
set to .PostData.TransactionCode of the selected OnlinePaymentOptions[] array element
Medium
string
set to 'web' or 'mobile' depending on your platform
UserPhoneNumber
string
set to .PostData.PhoneNumber
UserEmail
string
set to .PostData.EmailAddress of the selected OnlinePaymentOptions[] array element
ResolvedBeneficiaryName
string
set to .PostData.TransType of the selected OnlinePaymentOptions[] array element
BeneficiaryEmail
string
BeneficiaryName
string
set to .PostData.TransType of the selected OnlinePaymentOptions[] array element
BeneficiaryPhone
string
Amount
number
set to .PostData.AmountExpected of the selected OnlinePaymentOptions[] array element
Fee
number
set to 0
RecipientBankCode
string
set to 'wallet'
BeneficiaryAccount
string
set this to 'wallet'
Very important. The entire request body needs to be serialized to JSON and encrypted using AES before posting to the endpoint. The encryption should follow these steps: 1. Convert the user token base 64 string. Then convert to byte array of length 16. If the array length is less than 16 add empty bytes to make up 16. Use this as the AES Key 2. Repeat step 1 above for your Secret Key and use this as the AES IV
Where to go from here?
Once you have called the endpoint successfully, check If status == "success"
then you can proceed to inspect the data object. If not, then data will contain the error message.
If data.Use3DSecure == true
, then you need to load data.AuthURL
in a webview, otherwise, display data.OTPMessage
as a prompt to the user with a text input field to accept user's OTP.
Last updated