Please note the parameters required when Zapper is processing the payment, versus when a third party processor is processing the payment.
Process Payment
POST
https://api.zapper.com/v1/payments
Make a new payment against the provided code on behalf of the customer.
Request Body
200 Payment status 302 401 Identity token invalid. 500 Error on the server.
Copy {
"reference" : "00000000-0000-0000-0000-000000000000" ,
"invoiceReference" : "00000000-0000-0000-0000-000000000000" ,
"invoiceExternalReference" : "00000000-0000-0000-0000-000000000000" ,
"merchantName" : "SyliviaBiller548655" ,
"currencyISOCode" : "ZAR" ,
"invoicedAmount" : 1000 ,
"paymentReference" : "XGKGE3020Q2E8Y4NRD" ,
"paymentUTCDate" : "2020-10-06T00:00:00.0Z" ,
"paymentMethodType" : "Card" ,
"paymentMethodDescription" : "xxxx0002" ,
"status" : "success" ,
"verificationUrl" : null ,
"tipAmount" : 200 ,
"processedAmount" : 1200 ,
"customer" : {
"id" : "00000000-0000-0000-0000-000000000000"
} ,
"siteReference" : "1" ,
"errors" : null
}
Customer
To service our merchants it is recommended that the customer firstName and lastName fields are populated.
These fields assist in allocating and reconciling partner consumer app payments processed over our network.
These details will not and cannot be used for direct marketing given we don’t have the partner consumer app MSISDN.
Payment Method
Only one of card or external can be used. When using a card, Zapper will process the payment from the customer's card.
Either CVV or SecureData is required.
Card
Card number
Tokenised card
Secure Data
Enrolled
PARes Status
External
For non-Zapper processed payments, the external payment method type is be used.
External Payment Status
Example Requests
Card number payment
Copy {
"reference" : "00000000-0000-0000-0000-000000000000" ,
"code" : "aHR0cDovLzIuemFwLnBlP3Q9NiZpPTgxNzo0NjM6N1szNHwxMC4wMDoxMFszOXxaQVIsMzh8Q2VudHJhbCBQZXJr" ,
"amount" : 1000 ,
"tipAmount" : 200 ,
"customer" : {
"id" : "DEF-456"
} ,
"paymentUTCDate" : "0001-01-01T00:00:00.000Z" ,
"paymentMethod" : {
"card" : {
"cardNumber" : "4000000000000002" ,
"cvv" : "999" ,
"holderName" : "Card Holder" ,
"expiryMonth" : 9 ,
"expiryYear" : 2030
}
} ,
"orderReference" : "00000000-0000-0000-0000-000000000000"
}
Card number payment using secure data
Copy {
"reference" : "00000000-0000-0000-0000-000000000000" ,
"code" : "aHR0cDovLzIuemFwLnBlP3Q9NiZpPTgxNzo0NjM6N1szNHwxMC4wMDoxMFszOXxaQVIsMzh8Q2VudHJhbCBQZXJr" ,
"amount" : 1000 ,
"tipAmount" : 200 ,
"customer" : {
"id" : "DEF-456"
} ,
"paymentUTCDate" : "0001-01-01T00:00:00.000Z" ,
"paymentMethod" : {
"card" : {
"cardNumber" : "4000000000000002" ,
"holderName" : "Card Holder" ,
"expiryMonth" : 9 ,
"expiryYear" : 2030 ,
"secureData" : {
"enrolled" : "Y" ,
"paresStatus" : "Y" ,
"cavv" : "Td7wOfSL7kueWouRKPhX883w8ReT" ,
"xid" : "eY4hCbMdj9FQ0X5CV9iQHt2y82T4" ,
"eci" : "05" ,
"secure3DVersion" : "2.1.0" ,
"secure3DDirectoryServerTransId" : "00000000-0000-0000-0000-000000000000" ,
"secure3DAuthenticationType" : "03"
}
}
} ,
"orderReference" : "00000000-0000-0000-0000-000000000000"
}
Tokenised card payment
Copy {
"reference" : "00000000-0000-0000-0000-000000000000" ,
"code" : "aHR0cDovLzIuemFwLnBlP3Q9NiZpPTgxNzo0NjM6N1szNHwxMC4wMDoxMFszOXxaQVIsMzh8Q2VudHJhbCBQZXJr" ,
"amount" : 1000 ,
"tipAmount" : 200 ,
"customer" : {
"id" : "DEF-456"
} ,
"paymentUTCDate" : "0001-01-01T00:00:00.000Z" ,
"paymentMethod" : {
"card" : {
"token" : "00000000-0000-0000-0000-000000000000" ,
"cvv" : "999"
}
} ,
"orderReference" : "00000000-0000-0000-0000-000000000000"
}
External (non-Zapper) payment
Copy {
"reference" : "bcf12812-affa-42c9-90c8-db65188ff037" ,
"code" : "aHR0cDovLzIuemFwLnBlP3Q9NiZpPTgxNzo0NjM6N1szNHwxMC4wMDoxMFszOXxaQVIsMzh8Q2VudHJhbCBQZXJr" ,
"amount" : 1000 ,
"tipAmount" : 100 ,
"paymentUTCDate" : "0001-01-01T00:00:00.000Z" ,
"customer" : {
"id" : "DEF-456"
} ,
"paymentMethod" : {
"external" : {
"reference" : "12345" ,
"status" : "success"
}
}
"orderReference" : "00000000-0000-0000-0000-000000000000"
}
Payment Response
Payment Status
Customer
Error