Paylink-v3 Merchant Application integration

To integrate with CityPay Paylink, you will need:

  1. CityPay Client Id. This is a top level account which identifies you as a client on our systems. Each client may have multiple merchant accounts.
  2. CityPay Client Licence Key. This licence key identifies your services that are registered for your account.
  3. CityPay Merchant Id. To be able to process you will need a merchant id. This maps to one or more bank merchant accounts and can be used to process and route payments to your merchant account.

Please contact sales if you do not have these details.


See  Testing Best Practices  for testing your integration.


Before creating tokens, we need to open access for your systems to process transactions for each Merchant Id. Access control is based on your IP address either as a single IP address or a subnet.  This whitelists your application through the Paylink application firewall and allows token creation. You will also require authenticated access provided by your Merchant Id and Licence Key within the request.

When setting up your account, please advise support of any IP addresses to be configured.

Recommended Integration Workflow

  1. determine content type of call: JSON(preferred), XML, Url-Encoded
  2. create structure for the Token Request
    1. specify the relevant merchantId for your account
    2. specify the relevant licenceKey provided for the Paylink service
    3. specify the transaction mode
      1. is a test transaction set test to true
      2. is a live transaction set test to  false
      3. specifying no value will result in a test transaction
    4. specify the identifier
    5. specify the amount
    6. specify further options as per the  Token API Reference
  3. perform a HTTPS POST operation to the Paylink3 server URL, specifying the Token Request as the body of the POST call
  4. inspect and parse the Token Response
  5. if the result field is 1, obtain the value of the url field and direct or redirect the customer browser to the provided value
  6. If the result field is 2, obtain the value represented by errors and process each  error according to their respective errorCode;
+44 (0)1534 884000