ZEN transfers API
Go to zen.comGo to myZEN.com
Documentation
Documentation
  • Sandbox
  • Plugin integration
  • Checkout integration
  • API business
  • API reference
  • Merchant panel
  • Brandbook
Go to zen.comGo to myZEN.com
Documentation
Documentation
  • Sandbox
  • Plugin integration
  • Checkout integration
  • API business
  • API reference
  • Merchant panel
  • Brandbook
  1. Payment management
  • Overview
  • Dictionary
  • Environments
  • Authentication
    • mTLS
    • API key
  • Notifications
    • About
  • Information about accounts
    • Get the list of accounts
    • Get account details
  • Payment management
    • About
    • Calculation of available channels, fees and payment limits
    • Get the list of purpose codes
    • Create a payment
    • Get payment details
  • Manage payment drafts
    • About
    • Create a draft payment
    • Get the draft list
    • Get payment draft details
    • Delete a saved payment draft
  • Transaction History Management
    • Get payment history on account
    • Get payment confirmation
  1. Payment management

Calculation of available channels, fees and payment limits

payments_management.jpg
Endpoint is used to verify the correctness of the receiver's data, designate the payment channel, calculate payment fees and verify whether the transaction amount is within the limit.
1
Create a GET request
WARNING
Request header with Authorization parameter is obliged for all requests sent to ZEN.COM API. Authorization value is the apiKey parameter which is generated and provided by ZEN.COM to the Client. This key is unique to each Customer and should not be shared or used by third parties.
Create a GET request.
Query parameters
ParameterDescriptionTypeRequired
amountpayment amountnumber ($double)yes
currencycurrency amountstring (ISO 4217 standard)yes
accountNumberreceiver's account numberstringyes
bicbicstringno
routingCoderouting codestringno
routingCodeTyperouting code typeenum SORT_CODEno
receiverTypereceiver typeenum INDIVIDUAL / BUSINESSyes
💡
Example of JSON
2
Send the request
Send the GET request to:
1.
test environment: https://api-services.zen-test.com/payments/v1.0/precalculation
2.
production environment: https://api-services.zen.com/payments/v1.0/precalculation
3
Receive the ZEN.COM response
Receive the ZEN.COM response.
Parameters
ParameterDescriptionTypeNullable
codea code indicating whether the data in the service was sent correctly and passed validationenum OK - data correct / BIC_REQUIRED - bic code required / BIC_OR_ROUTING_CODE_REQUIRED - bic or routingCode required / NO_CHANNELS_AVAILABLE - no channels available for the entered data / CURRENCY_REQUIRED - required currency / INVALID_ACCOUNT_NUMBER_EXCEPTION - account number in iban format required / INVALID_ACCOUNT_NUMBER - incorrect account number / MISSING_BENEFICIARY_DATA - missing receiver's addressno
chargeTypesData.fees.amount.valuepayment fee amountnumber ($double)no
chargeTypesData.fees.amount.currencypayment fee currencystring (ISO 4217 standard)no
chargeTypesData.fees.namefee nameenum STANDARD_FEE / ADDITIONAL_FEEyes
chargeTypesData.namecharge typeenum SHA / OUT / LOCAL / STANDARD / INSTANTno
chargeTypesData.channelpayment channelenum SWIFT / SEPA / LOCALno
chargeTypesData.singleTransactionLimit.amountInEurCurrency.valuelimit amount in EURnumber ($double)yes
chargeTypesData.singleTransactionLimit.amountInEurCurrency.currencycurrencystring (ISO 4217 standard)yes
chargeTypesData.singleTransactionLimit.amountInTransactionCurrency.valuelimit amount in payment currencynumber ($double)yes
chargeTypesData.singleTransactionLimit.amountInTransactionCurrency.currencycurrencystring (ISO 4217 standard)yes
chargeTypesData.singleTransactionLimit.limitExceededinformation whether the single transaction limit has been exceededbooleanyes
periodicLimit.limitExceededinformation whether the periodic limit has been exceeded`booleanyes
periodicLimit.remainingAmountInEurCurrency.valueamount of the remaining periodic limit in EURnumber ($double)yes
periodicLimit.remainingAmountInEurCurrency.currencycurrencystring (ISO 4217 standard)yes
periodicLimit.remainingAmountInTransactionCurrency.valuethe amount of the remaining periodic limit in the payment currencynumber ($double)yes
periodicLimit.remainingAmountInTransactionCurrency.currencycurrencystring (ISO 4217 standard)yes
periodicLimit.periodthe value in days indicates the period of time for which the limit is grantedyes
💡
Example response
{
   "code":"OK",
   "chargeTypesData":[
      {
         "fees":[
            {
               "amount":{
                  "value":"57.86",
                  "currency":"USD"
               },
               "name":"STANDARD_FEE"
            }
         ],
         "name":"OUR",
         "channel":"SWIFT",
         "singleTransactionLimit":{
            "amountInEurCurrency":{
               "value":"1000.00",
               "currency":"EUR"
            },
            "amountInTransactionCurrency":{
               "value":"1157.11",
               "currency":"USD"
            },
            "limitExceeded":false
         }
      },
      {
         "fees":[
            {
               "amount":{
                  "value":"5.79",
                  "currency":"USD"
               },
               "name":"STANDARD_FEE"
            }
         ],
         "name":"SHA",
         "channel":"SWIFT",
         "singleTransactionLimit":{
            "amountInEurCurrency":{
               "value":"1000.00",
               "currency":"EUR"
            },
            "amountInTransactionCurrency":{
               "value":"1157.11",
               "currency":"USD"
            },
            "limitExceeded":false
         }
      }
   ],
   "periodicLimit":{
      "limitExceeded":false,
      "remainingAmountInEurCurrency":{
         "value":"10000.00",
         "currency":"EUR"
      },
      "remainingAmountInTransactionCurrency":{
         "value":"11571.17",
         "currency":"USD"
      },
      "period":1
   }
}
Errors
HTTP codeBusiness codeDescription
400VALIDATION_ERRORthe data has not been validated
403FORBIDDENno access to the resource
404ACCOUNT_NOT_FOUNDno account with the specified accountId was found
500INTERNAL_SERVER_ERRORserver error, please contact ZEN
💡
Example error response
{
   "error":{
      "code":"INTERNAL_SERVER_ERROR",
      "message":"Unexpected error. Contact ZEN"
   }
}
Modified at 2026-03-17 14:23:28
Previous
About
Next
Get the list of purpose codes
Built with