Payment Request and Result Fields

Please make note that certain fields are mandatory and the last 3 fields are only appended in the records of the result notification.


NameTypeRequiredDescription
SiteCodestring (50)YA unique code for the site currently in use. A site code is generated when adding a site in the Ozow Merchant Admin section.
CountryCodestring (2)YThe ISO 3166-1 alpha-2 code for the user's country. The country code will determine which banks will be displayed to the customer.
CurrencyCodestring (3)YThe ISO 4217 3 letter code for the transaction currency. Please note only South African Rand (ZAR) is currently supported by Ozow, so any currency conversion would have to take place before submitting the create request.
Amountdecimal (9,2)YThe transaction amount. The amount is in the currency specified by the currency code posted.
TransactionReferencestring (50)YThe merchant's reference for the transaction.
BankReferencestring (20)YThis is the reference that will appear on your bank statement. It is advised that this is set to a unique value that enables you to match payments on your statement to transactions on your system. *Only alphanumeric characters, spaces and dashes are allowed.
IsTestboolYOnly false currently works for the payment API.
CancelUrlstring (150)NThe URL that Ozow should redirect the user to if they cancel out of the payment process.
ErrorUrlstring (150)NThe URL that Ozow should redirect the user to if a fatal error occurs during their payment.
SuccessUrlstring (150)NThe URL that Ozow should redirect the user to once payment is successfully completed.
NotifyUrlstring (150)NThe URL that Ozow should post the notification result to. The result will be posted regardless of the outcome of the transaction. This URL can also be set for the applicable merchant site in the merchant admin section if it does not need to be dynamic. If a value is set in the merchant admin and in the request, the notification result will be sent to the URL set in the request.

*The outcome of pending transactions also gets posted to this URL.
Customerstring (100)NThe customer’s name or identifier. Can be used to track customer behaviour.
CustomerIdentifierstring (13)NMerchants classified as high-risk must provide a valid South African identity number. It's important to note that this is an optional field for all other merchants. For more details, please reach out to [email protected].
Optional1
Optional2
Optional3
Optional4
Optional5
string (50)NOptional fields the merchant can post for additional information they would need passed back in the response. These are also stored with the transaction details by Ozow and can be useful for filtering transactions in the merchant admin section.
BankIdguidNThe bank that the payment should be made to. Merchant needs to be enabled to send through banking details (BankId, BankAccountNumber, BranchCode, BankAccountName) in the post, for most merchants this is setup when creating the merchant account. Possible values can be found in the bank list.
BankAccountNumberstring (20)NThe bank account number the payment should be made to.
BranchCodestring (10)NThe branch code for the bank account.
BranchNamestring (10)NThe branch code for the bank account.
BankAccountNamestring (20)NThe name of to be used for the bank account. Only alphanumeric characters and spaces allowed.
PayeeDisplayNamestring (50)NDisplay name of the payee.
ExpiryDateUtcdatetimeNUTC expiry date for the payment request.
AllowVariableAmountbooleanNAllow the payer to specify the payment amount.
VariableAmountMindecimalNMinimum payment amount in the case of a variable amount payment.
VariableAmountMaxdecimalNMaximum payment amount in the case of a variable amount payment.
RecipientAddressstringNAn email address or cell phone number of the recipient
PaymentLinkstringOzow payment request URL
(Only included in response)
ErrorsstringContains error details for a specific record
(Only included in response)
SentUTCstringUTC Date and time the when request was sent
(Only included in response and will not be set if RecipientAddress was not specified or was invalid)