This page is a ZenPay-styled copy of the Zenith Payments developer documentation. View the original docs
Input and Output Parameters
Input Parameters#
49 parameters for mode 0 - Make Payment.
| Name | Type | Default | Status | Description |
|---|---|---|---|---|
allowBankAcOneOffPayment | boolean | false | Required | Show Bank Account option if enabled for the merchant.Admin config |
allowCardOneOffPayment | boolean | true | Required | Show Card option if enabled for the merchant.Admin config |
allowCardTokenisePayment | boolean | true | Required | Show Card Tokenise option if enabled for the merchant.Admin config |
allowPayIdOneOffPayment | boolean | false | Required | Show PayID option if enabled for the merchant.Admin config |
allowPayToOneOffPayment | boolean | false | Required | Show PayTo bank account option if enabled for the merchant.Admin config |
apiKey | string | Required | As provided by Zenith | |
customerEmail | string | Required | Email address to which invoice will be emailed if the merchant is configured. | |
customerName | string | Required | Full name of the customer. | |
customerReference | string | Required | Customer reference identifier. | |
fingerprint | string | Required | SHA3-512 Hash — see details below | |
merchantCode | string | Required | As provided by Zenith. | |
merchantUniquePaymentId | string | Required | Payment id provided by the merchant. Must be unique and can not be reused if a transaction is processed using this id. | |
paymentAmount | number | Required | Returns applicable fee if provided with mode 1. | |
redirectUrl | string | Required | Redirects to this URL with the result in the query string. See Return Parameters. | |
timestamp | string | Required | Provide current datetime in UTC ISO 8601 format. Format: yyyy-MM-ddTHH:mm:ss | |
url | string | Required | Plugin access url. We strongly recommend v5 integration. | |
ABN | string | Optional | Australian Business Number. Used for reward programs if the Program is enabled to provide reward points. | |
additionalReference | string | Optional | Additional reference to identify customer. This will be passed on to the merchant reconciliation file (PDF & CSV). | |
allowAliPayPlusOneOffPayment | boolean | true | Optional | Show AliPay+ option if enabled for the merchant.Admin config |
allowApplePayOneOffPayment | boolean | false | Optional | Show Apple Pay option if enabled for the merchant.Admin config |
allowGooglePayOneOffPayment | boolean | false | Optional | Show Google Pay option if enabled for the merchant.Admin config |
allowLatitudePayOneOffPayment | boolean | false | Optional | Show Latitude Pay option if enabled for the merchant.Admin config |
allowSaveCardInformation | boolean | false | Optional | Show Save Card option if enabled for the merchant.Admin config |
allowSlicePayOneOffPayment | boolean | false | Optional | Show Slice Pay option if enabled for the merchant.Admin config |
allowUnionPayOneOffPayment | boolean | true | Optional | Show UnionPay option if enabled for the merchant.Admin config |
allowWeChatOneOffPayment | boolean | false | Optional | Show WeChat Pay option if enabled for the merchant.Admin config |
callbackUrl | string | Optional | HTTP POST callback URL for the result. See Return Parameters. | |
cardProxy | string | Optional | Use this parameter to make a payment using a card proxy which is generated using mode '1'. | |
companyName | string | Optional | Customer company name. | |
contactNumber | string | Optional | Contact number | |
CustomerNameLabel | string | Optional | Custom label to override default customer name display text | |
CustomerReferenceLabel | string | Optional | Custom label to override default customer reference display text | |
departureDate | string | Optional | Required for Slice Pay.Format: yyyy-MM-dd | |
displayMode | int | 0 | Optional | 0 = Default (Modal) 1 = Redirect URL Google Pay and Apple Pay work with Modal or Redirect URL with iframe. |
hideHeader | boolean | true | Optional | This will hide the program header including program logo. |
hideMerchantLogo | boolean | false | Optional | This will hide the merchant logo if any. |
hideTermsAndConditions | boolean | false | Optional | This will hide the Terms and Conditions. |
minHeight | int | 725 | Optional | Minimum height of the plugin iframe in pixels. |
mode | int | 0 | Optional | 0 = Make Payment 1 = Tokenise 2 = Custom Payment 3 = Preauthorization |
onPluginClose | function | Optional | Javascript callback function to execute when plug-in is closed. | |
overrideFeePayer | int | 0 | Optional | 0 = Default (pricing profile) 1 = Merchant pays fee 2 = Customer pays feeAdmin config |
PaymentAmountLabel | string | Optional | Custom label to override default payment amount display text | |
redirectOnError | string | false | Optional | If this is set to true, all validation and processing errors are returned part of the redirect url. |
sendConfirmationEmailToCustomer | boolean | false | Optional | This will send confirmation email to customer. |
sendConfirmationEmailToMerchant | boolean | false | Optional | This will send confirmation email to merchant. |
sku1 | string | Optional | Stock Keeping Unit. If the value exceeds 50 characters, only the first 50 characters will be retained and the rest discarded. | |
sku2 | string | Optional | Stock Keeping Unit. If the value exceeds 50 characters, only the first 50 characters will be retained and the rest discarded. | |
title | string | Process Payment | Optional | Plugin title. |
userMode | int | 0 | Optional | 0 = Customer Facing — CCV/3DS required 1 = Merchant Facing — no CCV/3DS if supportedAdmin config |
31 parameters for mode 1 - Tokenise.
| Name | Type | Default | Status | Description |
|---|---|---|---|---|
apiKey | string | Required | As provided by Zenith | |
customerEmail | string | Required | Email address to which invoice will be emailed if the merchant is configured. | |
fingerprint | string | Required | SHA3-512 Hash — see details below | |
merchantCode | string | Required | As provided by Zenith. | |
merchantUniquePaymentId | string | Required | Payment id provided by the merchant. Must be unique and can not be reused if a transaction is processed using this id. | |
redirectUrl | string | Required | Redirects to this URL with the result in the query string. See Return Parameters. | |
showFeeOnTokenising | boolean | false | Required | Show the applicable fees for the token at the end of the process. |
timestamp | string | Required | Provide current datetime in UTC ISO 8601 format. Format: yyyy-MM-ddTHH:mm:ss | |
url | string | Required | Plugin access url. We strongly recommend v5 integration. | |
additionalReference | string | Optional | Additional reference to identify customer. This will be passed on to the merchant reconciliation file (PDF & CSV). | |
allowBankAcOneOffPayment | boolean | false | Optional | Show Bank Account option if enabled for the merchant.Admin config |
callbackUrl | string | Optional | HTTP POST callback URL for the result. See Return Parameters. | |
contactNumber | string | Optional | Contact number | |
customerName | string | Optional | Full name of the customer. | |
CustomerNameLabel | string | Optional | Custom label to override default customer name display text | |
customerReference | string | Optional | Customer reference identifier. | |
CustomerReferenceLabel | string | Optional | Custom label to override default customer reference display text | |
displayMode | int | 0 | Optional | 0 = Default (Modal) 1 = Redirect URL Google Pay and Apple Pay work with Modal or Redirect URL with iframe. |
hideHeader | boolean | true | Optional | This will hide the program header including program logo. |
hideMerchantLogo | boolean | false | Optional | This will hide the merchant logo if any. |
hideTermsAndConditions | boolean | false | Optional | This will hide the Terms and Conditions. |
minHeight | int | 450 | Optional | Minimum height of the plugin iframe in pixels. |
mode | int | 0 | Optional | 0 = Make Payment 1 = Tokenise 2 = Custom Payment 3 = Preauthorization |
onPluginClose | function | Optional | Javascript callback function to execute when plug-in is closed. | |
overrideFeePayer | int | 0 | Optional | 0 = Default (pricing profile) 1 = Merchant pays fee 2 = Customer pays feeAdmin config |
paymentAmount | number | Optional | Returns applicable fee if provided with mode 1. | |
PaymentAmountLabel | string | Optional | Custom label to override default payment amount display text | |
redirectOnError | string | false | Optional | If this is set to true, all validation and processing errors are returned part of the redirect url. |
showFailedPaymentFeeOnTokenising | boolean | false | Optional | Show the applicable failed payment fees for the token at the end of the process. |
title | string | Tokenise Account | Optional | Plugin title. |
userMode | int | 0 | Optional | 0 = Customer Facing — CCV/3DS required 1 = Merchant Facing — no CCV/3DS if supportedAdmin config |
48 parameters for mode 2 - Custom Payment.
| Name | Type | Default | Status | Description |
|---|---|---|---|---|
allowBankAcOneOffPayment | boolean | false | Required | Show Bank Account option if enabled for the merchant.Admin config |
allowCardOneOffPayment | boolean | true | Required | Show Card option if enabled for the merchant.Admin config |
allowCardTokenisePayment | boolean | true | Required | Show Card Tokenise option if enabled for the merchant.Admin config |
allowPayIdOneOffPayment | boolean | false | Required | Show PayID option if enabled for the merchant.Admin config |
allowPayToOneOffPayment | boolean | false | Required | Show PayTo bank account option if enabled for the merchant.Admin config |
apiKey | string | Required | As provided by Zenith | |
customerEmail | string | Required | Email address to which invoice will be emailed if the merchant is configured. | |
customerName | string | Required | Full name of the customer. | |
customerReference | string | Required | Customer reference identifier. | |
fingerprint | string | Required | SHA3-512 Hash — see details below | |
merchantCode | string | Required | As provided by Zenith. | |
merchantUniquePaymentId | string | Required | Payment id provided by the merchant. Must be unique and can not be reused if a transaction is processed using this id. | |
paymentAmount | number | Required | Returns applicable fee if provided with mode 1. | |
redirectUrl | string | Required | Redirects to this URL with the result in the query string. See Return Parameters. | |
timestamp | string | Required | Provide current datetime in UTC ISO 8601 format. Format: yyyy-MM-ddTHH:mm:ss | |
url | string | Required | Plugin access url. We strongly recommend v5 integration. | |
ABN | string | Optional | Australian Business Number. Used for reward programs if the Program is enabled to provide reward points. | |
additionalReference | string | Optional | Additional reference to identify customer. This will be passed on to the merchant reconciliation file (PDF & CSV). | |
allowAliPayPlusOneOffPayment | boolean | true | Optional | Show AliPay+ option if enabled for the merchant.Admin config |
allowApplePayOneOffPayment | boolean | false | Optional | Show Apple Pay option if enabled for the merchant.Admin config |
allowGooglePayOneOffPayment | boolean | false | Optional | Show Google Pay option if enabled for the merchant.Admin config |
allowLatitudePayOneOffPayment | boolean | false | Optional | Show Latitude Pay option if enabled for the merchant.Admin config |
allowSaveCardInformation | boolean | false | Optional | Show Save Card option if enabled for the merchant.Admin config |
allowSlicePayOneOffPayment | boolean | false | Optional | Show Slice Pay option if enabled for the merchant.Admin config |
allowUnionPayOneOffPayment | boolean | true | Optional | Show UnionPay option if enabled for the merchant.Admin config |
callbackUrl | string | Optional | HTTP POST callback URL for the result. See Return Parameters. | |
cardProxy | string | Optional | Use this parameter to make a payment using a card proxy which is generated using mode '1'. | |
companyName | string | Optional | Customer company name. | |
contactNumber | string | Optional | Contact number | |
CustomerNameLabel | string | Optional | Custom label to override default customer name display text | |
CustomerReferenceLabel | string | Optional | Custom label to override default customer reference display text | |
departureDate | string | Optional | Required for Slice Pay.Format: yyyy-MM-dd | |
displayMode | int | 0 | Optional | 0 = Default (Modal) 1 = Redirect URL Google Pay and Apple Pay work with Modal or Redirect URL with iframe. |
hideHeader | boolean | true | Optional | This will hide the program header including program logo. |
hideMerchantLogo | boolean | false | Optional | This will hide the merchant logo if any. |
hideTermsAndConditions | boolean | false | Optional | This will hide the Terms and Conditions. |
minHeight | int | 725 | Optional | Minimum height of the plugin iframe in pixels. |
mode | int | 0 | Optional | 0 = Make Payment 1 = Tokenise 2 = Custom Payment 3 = Preauthorization |
onPluginClose | function | Optional | Javascript callback function to execute when plug-in is closed. | |
overrideFeePayer | int | 0 | Optional | 0 = Default (pricing profile) 1 = Merchant pays fee 2 = Customer pays feeAdmin config |
PaymentAmountLabel | string | Optional | Custom label to override default payment amount display text | |
redirectOnError | string | false | Optional | If this is set to true, all validation and processing errors are returned part of the redirect url. |
sendConfirmationEmailToCustomer | boolean | false | Optional | This will send confirmation email to customer. |
sendConfirmationEmailToMerchant | boolean | false | Optional | This will send confirmation email to merchant. |
sku1 | string | Optional | Stock Keeping Unit. If the value exceeds 50 characters, only the first 50 characters will be retained and the rest discarded. | |
sku2 | string | Optional | Stock Keeping Unit. If the value exceeds 50 characters, only the first 50 characters will be retained and the rest discarded. | |
title | string | Process Payment | Optional | Plugin title. |
userMode | int | 0 | Optional | 0 = Customer Facing — CCV/3DS required 1 = Merchant Facing — no CCV/3DS if supportedAdmin config |
42 parameters for mode 3 - Preauth.
| Name | Type | Default | Status | Description |
|---|---|---|---|---|
apiKey | string | Required | As provided by Zenith | |
customerEmail | string | Required | Email address to which invoice will be emailed if the merchant is configured. | |
customerName | string | Required | Full name of the customer. | |
customerReference | string | Required | Customer reference identifier. | |
fingerprint | string | Required | SHA3-512 Hash — see details below | |
merchantCode | string | Required | As provided by Zenith. | |
merchantUniquePaymentId | string | Required | Payment id provided by the merchant. Must be unique and can not be reused if a transaction is processed using this id. | |
paymentAmount | number | Required | Returns applicable fee if provided with mode 1. | |
redirectUrl | string | Required | Redirects to this URL with the result in the query string. See Return Parameters. | |
timestamp | string | Required | Provide current datetime in UTC ISO 8601 format. Format: yyyy-MM-ddTHH:mm:ss | |
url | string | Required | Plugin access url. We strongly recommend v5 integration. | |
ABN | string | Optional | Australian Business Number. Used for reward programs if the Program is enabled to provide reward points. | |
additionalReference | string | Optional | Additional reference to identify customer. This will be passed on to the merchant reconciliation file (PDF & CSV). | |
allowApplePayOneOffPayment | boolean | false | Optional | Show Apple Pay option if enabled for the merchant.Admin config |
allowBankAcOneOffPayment | boolean | false | Optional | Show Bank Account option if enabled for the merchant.Admin config |
allowGooglePayOneOffPayment | boolean | false | Optional | Show Google Pay option if enabled for the merchant.Admin config |
allowPayIdOneOffPayment | boolean | false | Optional | Show PayID option if enabled for the merchant.Admin config |
allowPayToOneOffPayment | boolean | false | Optional | Show PayTo bank account option if enabled for the merchant.Admin config |
allowSaveCardInformation | boolean | false | Optional | Show Save Card option if enabled for the merchant.Admin config |
callbackUrl | string | Optional | HTTP POST callback URL for the result. See Return Parameters. | |
cardProxy | string | Optional | Use this parameter to make a payment using a card proxy which is generated using mode '1'. | |
companyName | string | Optional | Customer company name. | |
contactNumber | string | Optional | Contact number | |
CustomerNameLabel | string | Optional | Custom label to override default customer name display text | |
CustomerReferenceLabel | string | Optional | Custom label to override default customer reference display text | |
departureDate | string | Optional | Required for Slice Pay.Format: yyyy-MM-dd | |
displayMode | int | 0 | Optional | 0 = Default (Modal) 1 = Redirect URL Google Pay and Apple Pay work with Modal or Redirect URL with iframe. |
hideHeader | boolean | true | Optional | This will hide the program header including program logo. |
hideMerchantLogo | boolean | false | Optional | This will hide the merchant logo if any. |
hideTermsAndConditions | boolean | false | Optional | This will hide the Terms and Conditions. |
minHeight | int | 725 | Optional | Minimum height of the plugin iframe in pixels. |
mode | int | 0 | Optional | 0 = Make Payment 1 = Tokenise 2 = Custom Payment 3 = Preauthorization |
onPluginClose | function | Optional | Javascript callback function to execute when plug-in is closed. | |
overrideFeePayer | int | 0 | Optional | 0 = Default (pricing profile) 1 = Merchant pays fee 2 = Customer pays feeAdmin config |
PaymentAmountLabel | string | Optional | Custom label to override default payment amount display text | |
redirectOnError | string | false | Optional | If this is set to true, all validation and processing errors are returned part of the redirect url. |
sendConfirmationEmailToCustomer | boolean | false | Optional | This will send confirmation email to customer. |
sendConfirmationEmailToMerchant | boolean | false | Optional | This will send confirmation email to merchant. |
sku1 | string | Optional | Stock Keeping Unit. If the value exceeds 50 characters, only the first 50 characters will be retained and the rest discarded. | |
sku2 | string | Optional | Stock Keeping Unit. If the value exceeds 50 characters, only the first 50 characters will be retained and the rest discarded. | |
title | string | Process Payment | Optional | Plugin title. |
userMode | int | 0 | Optional | 0 = Customer Facing — CCV/3DS required 1 = Merchant Facing — no CCV/3DS if supportedAdmin config |
Fingerprint Hash Composition
The fingerprint parameter is a SHA3-512 hash of 7 pipe-separated fields. All credentials are case-sensitive.
Hover over each field for details:
apiKeyAPI Key
Public API key (GUID) provided by Zenith. Case-sensitive. First field in the pipe-separated hash input.
|usernameUsername
Integration username provided by Zenith. Case-sensitive. Used in the fingerprint hash but never sent to the client or included in the URL.
|passwordPassword
Integration password provided by Zenith. Case-sensitive. Used in the fingerprint hash but never sent to the client or included in the URL.
|modeMode
0 = Make Payment, 1 = Tokenise, 2 = Custom Payment (amount in hash must be 0, actual amount in payload), 3 = Pre-authorisation.
|amountAmount (dollars)
Payment amount in dollars, exactly as the plugin payload carries it (49.90, 123, 123.1). The hash uses the same amount in whole cents with no decimal point — 49.90 becomes 4990 and 123.1 becomes 12310. Mode 2 always hashes 0.
|merchantUniquePaymentIdMerchant Unique Payment ID
Your unique transaction identifier. Must be unique per attempt — reusing a previous ID with the same timestamp triggers error E03.
|timestampTimestamp (UTC)
UTC format: YYYY-MM-DDTHH:mm:ss (no timezone suffix, no milliseconds). Must match exactly between hash and plugin payload. Server allows 90-second skew.
paymentAmountmust be in cents (e.g. $150.53 =15053). For Mode 2, always pass0.timestampmust be in UTC ISO 8601 format:YYYY-MM-DDTHH:mm:ss— no timezone suffix, no milliseconds.usernameandpasswordare used only in the hash — they are never sent in the plugin payload.- Each
merchantUniquePaymentId+timestampcombination must be unique per attempt.
Tools: Use the Fingerprint Generator or Fingerprint Validator to test your implementation.
Output Parameters#
33 parameters for mode 0 - Make Payment.
| Name | Description |
|---|---|
AccountOrCardNo | Account or card number used to process payment. |
AdditionalReference | Same as input parameter. Returned when supplied in the request payload. |
BaseAmount | Same as payment amount. |
CallbackStatus | Callback delivery status as seen by ZenPay (e.g. Successful, Failed). Reflects the server-to-server callback, not the redirect. |
CardCategory | Card category classification (e.g. International Cards, Domestic). Returned only for card payments. |
CustomerFee | Fee charged to the the customer to process the payment. |
CustomerName | Same as input parameter. |
CustomerReference | Same as input parameter. |
FailureCode | Populated only when payment is not successful. |
FailureReason | Populated only when payment is not successful. |
FundsToMerchant | Base amount - Merchant fee, if applicable. |
IsPaymentSettledToMerchant | Flag to indicate whether the funds are settled to the merchant or not. |
MerchantCode | Merchant code. |
MerchantUniquePaymentId | Same as input parameter. |
PayId | Returned only if payment is processed using PayID. |
PayIdName | Returned only if payment is processed using PayID. Display name for the PayID |
PaymentAccount | High-level account type used for the payment (e.g. Card, BankAccount). |
PaymentCard | Card scheme when PaymentAccount is Card (e.g. MasterCard, Visa, AmericanExpress). |
PaymentReference | Payment reference. |
PaymentStatus | Numeric status: 0 Pending · 1 Error · 3 Successful · 4 Failed · 5 Cancelled · 6 Suppressed · 7 InProgress |
PaymentStatusString | String equivalent of PaymentStatus (see above). |
PreauthAmount | Base amount + Customer fee. |
PreauthReference | Preauthorization reference. |
PreauthStatus | Numeric status: 0 Pending · 1 Error · 3 Successful · 4 Failed · 5 Cancelled · 6 Suppressed · 7 InProgress |
PreauthStatusString | String equivalent of PreauthStatus (see above). |
ProcessedAmount | Base amount + Customer fee. |
ProcessingDate | Date and time when the payment is processed. Format: yyyy-MM-ddTHH:mm:ss |
ProcessorReference | Processor reference. |
result | Overall outcome of the redirect flow (e.g. success, failed, cancelled). |
SettlementDate | Date when the payment is settled to the merchant. Format: yyyy-MM-dd |
Token | Returned only if payment is processed using cardProxy input parameter. The value will be same as cardProxy. |
TransactionSource | 36 = Public_OnlineOneOffPayment |
TransactionSourceString | String equivalent of TransactionSource (see above). |
14 parameters for mode 1 - Tokenise.
| Name | Description |
|---|---|
AccountName | Account name provided by the user. Returned only if user selects bank account. |
AccountNumber | Obfuscated account number provided by the user. Returned only if user selects bank account. |
CardExpiry | Card expiry date. Returned only if user selects credit / debit card. format: MM/CCYY |
CardHolderName | Card holder name provided by the user. Returned only if user selects credit / debit card. |
CardNumber | Obfuscated card number provided by the user. Returned only if user selects credit / debit card. |
CardType | Type of card i.e. Visa, MasterCards, Ammercican Express Or Bank Account. |
CustomerFee | Customer fee applicable to process a payment of amount specified in PaymentAmount input parameter. |
IsRestrictedCard | Flag to indicate whether the card is restricted or not. |
MerchantFee | Merchant fee applicable to process a payment of amount specified in PaymentAmount input parameter. |
PayId | Returned only if payment is processed using PayID. |
PayIdName | Returned only if payment is processed using PayID. Display name for the PayID |
PaymentAmount | Same as input parameter. |
ProcessingAmount | The total amount that will be processed i.e. PaymentAmount + CustomerFee. |
Token | The proxy that can be saved and then use to process payment using API or payment plugin. |
33 parameters for mode 2 - Custom Payment.
| Name | Description |
|---|---|
AccountOrCardNo | Account or card number used to process payment. |
AdditionalReference | Same as input parameter. Returned when supplied in the request payload. |
BaseAmount | Same as payment amount. |
CallbackStatus | Callback delivery status as seen by ZenPay (e.g. Successful, Failed). Reflects the server-to-server callback, not the redirect. |
CardCategory | Card category classification (e.g. International Cards, Domestic). Returned only for card payments. |
CustomerFee | Fee charged to the the customer to process the payment. |
CustomerName | Same as input parameter. |
CustomerReference | Same as input parameter. |
FailureCode | Populated only when payment is not successful. |
FailureReason | Populated only when payment is not successful. |
FundsToMerchant | Base amount - Merchant fee, if applicable. |
IsPaymentSettledToMerchant | Flag to indicate whether the funds are settled to the merchant or not. |
MerchantCode | Merchant code. |
MerchantUniquePaymentId | Same as input parameter. |
PayId | Returned only if payment is processed using PayID. |
PayIdName | Returned only if payment is processed using PayID. Display name for the PayID |
PaymentAccount | High-level account type used for the payment (e.g. Card, BankAccount). |
PaymentCard | Card scheme when PaymentAccount is Card (e.g. MasterCard, Visa, AmericanExpress). |
PaymentReference | Payment reference. |
PaymentStatus | Numeric status: 0 Pending · 1 Error · 3 Successful · 4 Failed · 5 Cancelled · 6 Suppressed · 7 InProgress |
PaymentStatusString | String equivalent of PaymentStatus (see above). |
PreauthAmount | Base amount + Customer fee. |
PreauthReference | Preauthorization reference. |
PreauthStatus | Numeric status: 0 Pending · 1 Error · 3 Successful · 4 Failed · 5 Cancelled · 6 Suppressed · 7 InProgress |
PreauthStatusString | String equivalent of PreauthStatus (see above). |
ProcessedAmount | Base amount + Customer fee. |
ProcessingDate | Date and time when the payment is processed. Format: yyyy-MM-ddTHH:mm:ss |
ProcessorReference | Processor reference. |
result | Overall outcome of the redirect flow (e.g. success, failed, cancelled). |
SettlementDate | Date when the payment is settled to the merchant. Format: yyyy-MM-dd |
Token | Returned only if payment is processed using cardProxy input parameter. The value will be same as cardProxy. |
TransactionSource | 36 = Public_OnlineOneOffPayment |
TransactionSourceString | String equivalent of TransactionSource (see above). |
33 parameters for mode 3 - Preauth.
| Name | Description |
|---|---|
AccountOrCardNo | Account or card number used to process payment. |
AdditionalReference | Same as input parameter. Returned when supplied in the request payload. |
BaseAmount | Same as payment amount. |
CallbackStatus | Callback delivery status as seen by ZenPay (e.g. Successful, Failed). Reflects the server-to-server callback, not the redirect. |
CardCategory | Card category classification (e.g. International Cards, Domestic). Returned only for card payments. |
CustomerFee | Fee charged to the the customer to process the payment. |
CustomerName | Same as input parameter. |
CustomerReference | Same as input parameter. |
FailureCode | Populated only when payment is not successful. |
FailureReason | Populated only when payment is not successful. |
FundsToMerchant | Base amount - Merchant fee, if applicable. |
IsPaymentSettledToMerchant | Flag to indicate whether the funds are settled to the merchant or not. |
MerchantCode | Merchant code. |
MerchantUniquePaymentId | Same as input parameter. |
PayId | Returned only if payment is processed using PayID. |
PayIdName | Returned only if payment is processed using PayID. Display name for the PayID |
PaymentAccount | High-level account type used for the payment (e.g. Card, BankAccount). |
PaymentCard | Card scheme when PaymentAccount is Card (e.g. MasterCard, Visa, AmericanExpress). |
PaymentReference | Payment reference. |
PaymentStatus | Numeric status: 0 Pending · 1 Error · 3 Successful · 4 Failed · 5 Cancelled · 6 Suppressed · 7 InProgress |
PaymentStatusString | String equivalent of PaymentStatus (see above). |
PreauthAmount | Base amount + Customer fee. |
PreauthReference | Preauthorization reference. |
PreauthStatus | Numeric status: 0 Pending · 1 Error · 3 Successful · 4 Failed · 5 Cancelled · 6 Suppressed · 7 InProgress |
PreauthStatusString | String equivalent of PreauthStatus (see above). |
ProcessedAmount | Base amount + Customer fee. |
ProcessingDate | Date and time when the payment is processed. Format: yyyy-MM-ddTHH:mm:ss |
ProcessorReference | Processor reference. |
result | Overall outcome of the redirect flow (e.g. success, failed, cancelled). |
SettlementDate | Date when the payment is settled to the merchant. Format: yyyy-MM-dd |
Token | Returned only if payment is processed using cardProxy input parameter. The value will be same as cardProxy. |
TransactionSource | 36 = Public_OnlineOneOffPayment |
TransactionSourceString | String equivalent of TransactionSource (see above). |
Validation Code Composition
The callback payload includes an additional ValidationCode parameter that you can use to authenticate the callback and verify it originated from Zenith Payments.
The ValidationCode is a SHA3-512 hash of 7 pipe-separated fields. All credentials are case-sensitive.
Hover over each field for details:
apiKeyAPI Key
Public API key (GUID) provided by Zenith. Same key used in the fingerprint hash.
|userNameUsername
Integration username provided by Zenith. Case-sensitive. Same credential used in the fingerprint hash.
|passwordPassword
Integration password provided by Zenith. Case-sensitive. Same credential used in the fingerprint hash.
|modeMode
0 = Make Payment, 1 = Tokenise, 2 = Custom Payment, 3 = Pre-authorisation. Same value sent in the request.
|paymentAmountAmount (cents)
Payment amount in whole cents. Same value used in the fingerprint hash.
|merchantUniquePaymentIdMerchant Unique Payment ID
Your unique transaction identifier. Same value sent in the request.
|referenceReference
The transaction reference returned in the callback response. For Mode 1 (Tokenise), this is the Token output parameter.
- The first 6 fields are the same values used in the original fingerprint hash.
referenceis the transaction reference returned in the callback — for Mode 1 (Tokenise), this is the Token output parameter.- To verify: regenerate the hash server-side using your credentials + the returned
reference, and compare against the receivedValidationCode.
See also: Callbacks and Validation — full receive-and-verify flow