Checkout documentation
Go to zen.comGo to myZEN.com
Documentation
  • Plugin integration
  • API business
  • API reference
  • Merchant panel
Brandbook
Go to zen.comGo to myZEN.com
Documentation
  • Plugin integration
  • API business
  • API reference
  • Merchant panel
Brandbook
  1. Integration
  • About ZEN
    • First steps with ZEN
    • Who we are
    • What we provide
    • How we provide
  • Introduction
    • Definitions
    • About ZEN checkout
    • Revenue streams
    • Environments
    • Authorization & authentication
    • Payment methods
    • Payment process
    • Currencies
    • Languages
  • Account registration & configuration
    • Before you begin
    • Registration
    • Configuration
    • Merchant’s panel
    • Payments setup
    • Locating Transactions in my.zen.com
    • Finding settlements
  • Features
    • Available features
    • 3-Domain Secure (3DS)
    • Account Funding Transactions (AFT)
    • Authorization fee
    • Card widget
    • Cashback
    • Currency Conversion Service
    • Instant Payment Notification (IPN)
    • Shop logo on ZEN.COM checkout
  • Integration
    • Before you begin
    • Integration checklist
    • Communication parameters
    • Prepare the communication
    • Generating a Signature
    • Purchase Transaction
    • Purchase Transaction with limited Payment methods
    • Refund Transaction
    • Transaction statuses
    • Recurring Payments
      • About recurring
      • Purchase Transaction
  1. Integration

Communication parameters

integration code.jpg
Request to initiate checkout should be prepared as JSON and send with application/json header. The table below contains a list of all mandatory parameters that you must send to ZEN.COM when initiating a Transaction. These are marked with 'Y' in the 'Required field' column. The table also includes a list of optional parameters that you can, but are not required to, send when initiating a Transaction. These are marked with 'N' in the 'Required field' column. We recommend that all parameters listed below be sent at the start of the Transaction.
WARNING
The API is case-sensitive at every level, both in parameter names and parameter values. Spaces in parameter names and special characters are not allowed.
WARNING
The values of the transmitted parameters should be encoded in UTF-8, along with handling the transport protocol in compliance with standard HTTPs service calls.
NameAllowed valuesRequired fieldDescription
terminalUuidstringYGo here to check out how to get your credentials
amountstring^(?=.* [0-9])\d{1,16}(?:.\d{1,12})?$YAmount of the transaction.
currencystring 3 charactersYCurrency in ISO 4217 alphabetic code of the transaction (it will determine payment methods displayed on the paywall). Must be written in all capital letters.
merchantTransactionIdstring [ 1 .. 128 ] characters ^[a-zA-Z0-9?&:-/=.,#]+$YMerchant’s unique identifier of the transaction. No two requests sent by merchant can have same value in this field. Otherwise, the transactions with duplicate number will be immidiately rejected by ZEN.
customer.idstring < = 128 charactersNCustomer Id in Merchant's system
customer.firstNamestring < = 128 charactersY (1) (Providing this data increases the approval rate for card payments)First name of the Customer
customer.lastNamestring < = 128 charactersY (1) (Providing this data increases the approval rate for card payments)Last name of the Customer
customer.emailstring < = 256 charactersY (1) (Providing this data increases the approval rate for card payments)Email address of the Customer
customer.phonestring < = 64 characters match pattern: ^[0-9+]+$NCustomer's phone number
items.codestring < = 64 charactersN (1)Merchant’s code for the sold item
items.categorystring < = 64 charactersNMerchant’s category for the sold item
items.namestring < = 128 charactersYName of the sold item
items.pricestring^-?(?=.* [1-9])\d{1,16}(?:.\d{1,12})?$YUnit price of the sold item
items.quantitynumberYQuantity of the sold items
items.lineAmountTotalstring^-?(?=.* [1-9])\d{1,16}(?:.\d{1,12})?$YTotal price of the sold items
signatureYSignature of the post
shippingAddress.idstring < = 64 characters ^[a-zA-Z0-9_-]+$NThis is ID of the merchant’s customer provided by merchant
shippingAddress.firstNamestring < = 128 charactersNFirst name of the Customer
shippingAddress.lastNamestring < = 128 charactersNLast name of the Customer
shippingAddress[country]string 2 characters ^[A-Z]+$NCountry of the Customer
billingAddress[street]string < = 128 charactersNStreet of the Customer
billingAddress[city]string < = 128 charactersNCity of the Customer
billingAddress[countryState]string < = 128 charactersNCountry of the Customer
billingAddress[province]string < = 128 charactersNProvince of the Customer
billingAddress[buildingNumber]string < = 32 charactersNBuilding number of the Customer
billingAddress[roomNumber]string < = 32 charactersNRoom number of the Customer
billingAddress[postcode]string [ 5 .. 6 ] charactersNPostcode of the Customer
billingAddress[companyName]string < = 128 charactersNCompany name of the Customer
billingAddress[phone]string [ 2 .. 64 ] characters ^[0-9+]+$NPhone of the Customer
billingAddress[taxId]string < = 128 charactersNTax Id of the Customer
urlRedirectstring < = 256 characters urlNURL for redirection after transaction. Used if „urlSuccess” and „urlFailure” were not specified
urlSuccessstring < = 256 characters urlNURL for redirection after successful Transaction
urlFailurestring < = 256 characters urlNURL for redirection after failure Transaction
customIpnUrlstring < = 256 characters urlNURL address used by ZEN to send IPN to
specifiedPaymentMethodstringNCode to limit checkout to one payment method. Check limiting checkout for more information
specifiedPaymentChannelstringNCode to limit checkout to one payment channel. Check limiting checkout for more information
(1) Customer information (firstName, lastName, email) can be omit during transaction initiation.
In such cases, checkout, during transaction process, will create a pop-up requesting Customer to provide those information.
Y – required
N – No required
Certain Payment methods / Payment channels necessitate the provision of additional parameters at the initiation of the Transaction, beyond those specified above. Please consult the list of Payment methods / Payment channels that require these additional parameters in order for the Transaction to be successfully registered. Failure to provide the required parameters at the start of the transaction will result in an error being returned by our system due to the absence of the necessary parameters.
Polish Pay-by-link (PBL)
PayPo Poland
PayPo Romania
Modified at 2025-05-05 07:12:26
Previous
Integration checklist
Next
Prepare the communication