Skip to content

Computop Paygate API (2.0.0)

The Computop Paygate API allows you to seamlessly process and manage payments, supporting 350+ payment methods worldwide. Built on REST principles, the API is designed to be predictable and developer-friendly, with resource-oriented URLs, JSON-encoded requests and responses, and standard HTTP status codes.

Security

The Computop Paygate API is designed with maximum security while remaining easy to implement. All communication occurs over HTTPS (TLS 1.2 or higher), ensuring end-to-end encryption at the transport level. This prevents packet sniffing, replay attacks, and other vulnerabilities without requiring additional encryption of the data itself.

Test Before You Go Live

Use our test environment to test your integration without affecting live data. The root URL determines whether the request is for test or live integration.

Download OpenAPI description
Languages
Servers
Test server

https://test.computop-paygate.com/api/v2/

Production server

https://www.computop-paygate.com/api/v2/

Guide

For functional documentation, please refer to the Confluence Guide

Authentication

Securely authenticate API requests using Basic Auth or OAuth 2.0

The Computop Paygate API supports two authentication methods to ensure secure access to payment processing and management endpoints. Choose the approach that aligns with your integration needs:

Basic Authentication

Use your Merchant ID as the username and API Key as the password. Combine them in the format MerchantID:APIKey, encode the string using Base64, and include it in the Authorization header with the Basic prefix for direct access to endpoints.

OAuth 2.0

Generate a short-lived JSON Web token (JWT) by authenticating with your API key via the authorization/oauth/token endpoint.

Operations

Payments

Create checkout session

This endpoint generates a URL for a hosted payment page where customers can securely select their preferred payment method and complete their transaction.

Create payment

This endpoint is used to initiate a payment for a specific payment method. You can choose between two integration types:

  • HOSTED: Returns a URL for a payment method-specific hosted form, where the customer is redirected to securely complete the payment.
  • DIRECT: Enables server-to-server communication, where you manage the payment UI and directly interacts with the API to process payments.

Note that not all payment methods support both HOSTED and DIRECT integration types. Some support only one of these options, while others support both. For detailed information about the supported integration types for each payment method, refer to the payment method-specific documentation in our product guide.

Confirm payment

This endpoint is used for payment methods that require a multi-step payment flow. It allows you to confirm a previously created payment instance (initiated via the Create Payment endpoint) to complete the transaction. This step is essential for certain payment methods to finalize the payment process.

Incremental authorization

This endpoint allows you to increase the authorized amount for an existing card transaction when the initial authorization is insufficient. The additional amount is appended to the original authorization, and the total authorized amount reflects both.

Reverse payment

This endpoint is used to reverse a payment that has not yet been captured, effectively canceling the authorization.

Capture payment

This endpoint is used to capture an existing authorized payment.

Refund payment

This endpoint is used to refund a captured payment.

Refund payment without reference

This endpoint is used to refund a payment without reference.

Retrieve payment details by Payment ID

This endpoint is used to retrieve payment details with the Payment ID (payId)

Retrieve payment details by Transaction ID

This endpoint is used to retrieve payment details with the Transaction ID (transId)

Update payment details

This endpoint is used to update payment details

Create payment link

This endpoint allows you to generate a payment link that can be shared with customers via email, SMS, or other channels. When customers click the link, they are redirected to a hosted payment page where they can select their preferred payment method and complete the transaction.

Operations

MobileSDK

Use the below endpoints if you are using Computop Paygate's mobile SDK for integration:

Create payment intent

This endpoint is used to generate a payment intent ID. You should call this endpoint from your backend to retrieve the payment intent ID to initialize the mobile SDK

Confirm payment intent

This endpoint is used to confirm payment intent. This endpoint is called by Computop Paygate's mobile SDK.

Operations

Create payment intent

Request

This endpoint is used to create a payment intent

Security
bearerAuth or basicAuth
Bodyapplication/jsonrequired

Create payment intent

transIdstring<= 64 characters

Transaction ID created in your system. It should be unique for each payment.

externalIntegrationIdstring

External integration identifier

refNrstring

Your unique reference number for the specific operation. You can pass this value to reconcile different operations in a payment (authorization, capture, refund, etc) individually.

amountobject(amount)
languagestring

Language code to determine the language of the payment form and customer communication where applicable.

captureMethodobject(captureMethod)
orderobject(order)
simulationModestring

Used to simulate a specific payment success or error use case. Accepts a list of predefined error codes.

urlsobject(urls)
billingAddressobject(billingAddress)
shippingobject(shipping)
statementDescriptorstring

Short, clear description of the transaction that appears on the customer's statement.

customerInfoobject(customerInfo)

Information about the customer.

expirationTimestring(date-time)

Transaction expiry timestamp (UTC).

Example: "2025-02-07T16:00:00Z"
fraudDataobject(fraudData)
paymentFacilitatorobject(paymentFacilitator)

Object specifying SubMerchant (Payment Facilitator) details.

browserInfoobject(browserInfo)
deviceobject(device)
credentialOnFileobject(credentialOnFile)
channelstring

Specifies the sales or interaction channel through which the transaction is initiated. Examples include "online", "in-store", "mobile app".

Enum"ECOM""MOTO""APP""PAYBYLINK""POS"
metadataobject

A collection of additional custom data provided by you to store extra information about the transaction. This is a set of JSON key value pairs passed by you. Paygate will return the data as it is in the response.

referencePayIdstring
curl -i -X POST \
  https://test.computop-paygate.com/api/v2/payment-intents \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "transId": "6B29FC40-1067-B31D-00DD010662DA",
    "refNr": "24235345432",
    "amount": {
      "currency": "EUR",
      "value": 10000
    },
    "language": "de",
    "captureMethod": {
      "type": "AUTOMATIC"
    },
    "order": {
      "merchantReference": "112-445-34567",
      "numberOfArticles": 1,
      "creationDate": "2025-03-31T11:58:37Z",
      "invoiceId": "555-333-2222",
      "items": [
        {
          "id": "1",
          "sku": "19-402-DEU",
          "name": "BatteryPowerPack",
          "quantity": 1,
          "quantityUnit": "pcs",
          "taxRate": 0,
          "netPrice": 1000,
          "grossPrice": 1000,
          "totalTaxAmount": 0,
          "totalDiscountAmount": 0,
          "description": "BatteryPowerPack",
          "type": "physical",
          "productInfo": {
            "brand": "Intel",
            "categories": [
              "Electronics Store",
              "Computers",
              "Desktops"
            ],
            "globalTradeItemNumber": "EAN",
            "manufacturerPartNumber": "BOXNUC5CPYA",
            "imageUrl": "https://www.exampleobjects.com/logo.png",
            "productUrl": "https://www.estore.com/products/f2a8d7e34"
          }
        }
      ]
    },
    "billingAddress": {
      "streetName": "Schwarzenbergstr",
      "streetNumber": "4",
      "city": "Bamberg",
      "country": "DEU",
      "postalCode": "96050"
    },
    "shipping": {
      "address": {
        "streetName": "Schwarzenbergstr",
        "streetNumber": "4",
        "city": "Bamberg",
        "country": "DEU",
        "postalCode": "96050"
      }
    },
    "statementDescriptor": "gadgets shop",
    "customerInfo": {
      "merchantCustomerId": "cus_1234567890abcdef",
      "customerType": "individual",
      "firstName": "Max",
      "lastName": "Mustermann",
      "email": "customer@example.com",
      "phone": {
        "countryCode": "+49",
        "number": "1236547890"
      },
      "salutation": "Ms",
      "title": "Dr",
      "gender": "female",
      "maidenName": "Mustermann",
      "middleName": "sam",
      "birthDate": "2001-01-01",
      "birthPlace": "Bamberg",
      "socialSecurityNumber": "123443534"
    },
    "channel": "ECOM"
  }'

Responses

Success

Bodyapplication/json
idstring
Response
application/json
{ "id": "9106f92191c642f993a1c0b0025e4334" }

Confirm payment intent

Request

This endpoint is used to confirm a payment intent

Security
bearerAuth
Path
idstringrequired

Intent identifier

Headers
Idempotency-Keystring

A unique key provided by you to ensure that a particular operation is not processed multiple times in case of retries.

Bodyapplication/jsonrequired

Confirm an intent

integrationTypestringrequired

Indicates the integration approach for the payment method.

  • HOSTED: customer is redirected to a payment page,
  • DIRECT: server to server communication
Enum"HOSTED""DIRECT"
typestringrequired

Specifies the type of payment method being used.

Enum"APPLEPAY""BANCONTACT""BOLETO""CARD""DIRECTDEBIT""GOOGLEPAY""IDEAL""KLARNA""PAYPAL""PAYU"
applePayobject(applePay)
bancontactobject(bancontact)
boletoobject(boleto)
cardobject(card)
directDebitobject(directDebit)
googlePayobject(googlePay)
idealobject(ideal)
klarnaobject(klarna)
payPalobject(payPal)
pfConnectobject(pfConnect)
ratepayobject(ratepay)
rivertyobject(riverty)
curl -i -X POST \
  'https://test.computop-paygate.com/api/v2/payment-intents/{id}/confirm' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: string' \
  -d '{
    "integrationType": "DIRECT",
    "type": "APPLEPAY",
    "applePay": {
      "merchantIdentifierOfPublicKey": "merchant.com.gadgetshop",
      "token": "{ \"paymentData\": { \"data\": \"GiZiyzsI6r6lnPYUeceR6itk2PDyBozl2Xy77c5u2X8Ze7l5EasyyH4Q6BoAevrvBfe0FnUNARBEXRySLwqqnpUHO6Du/amZEECRXxlrH91wFqH4oXry2CTDRu7TaIlmnR+s3ien5JI8iWo9hoEW7hyJOE7QGaS6rfR1CtQ4DWJEUq/tFnW98tj3kwKU6iOAAvE467boopMDGBS1fK5HzGXs4hH/6r+LPRfSOKBi1L5VWAexs9Bzw3ByyG69i52doRuFb1xOcMOJbmPg40hap13IjBW6dnj1phbsqP2i/JxvWPV3EcuqpuIoVZr5w53w//pPsl54kmeXNddIjVD5dIhhOKZ8AznD4eL2dbzkp6bic8xScBf3G8hrKXTRTL7V+KT2S+TQliHN0SNXrFu6B6o=\", \"signature\": \"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\",\n  \"header\": {\n      \"publicKeyHash\": \"OgiD2qBTWYf/a+LDshFeQcPq6tOmePu0epHpP4ZkNicc=\",\n      \"ephemeralPublicKey\": \"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEc/HxA3lJZrC+B0ITom0Iji+gFdn7ivGtpI+fl2u8n8XByPgBaVK2b44qUvsGigoNd0OFLNXo0Q07R2B54eIdS3A==\", \"transactionId\": \"156632b2aadf355d4958d9051a42bf62e07aea5716e72083aa64247944f6e3e14d\"  }, \"version\": \"EC_v1\" }, \"paymentMethod\": { \"displayName\": \"MasterCard 0063\", \"network\": \"MasterCard\", \"type\": \"debit\" }, \"transactionIdentifier\": \"156632B2AAD12F355D4958D9051A42BF62E07AE5716E720AA6424794F6E3E14567D\"}"
    }
  }'

Responses

Created

Bodyapplication/json
payIdstring

A unique identifier assigned by Computop Paygate to the payment. This ID remains constant throughout the lifecycle of the payment and is used to track and reference the payment across all subsequent operations, such as authorization, capture, refund, or cancellation.

merchantIdstring

Merchant ID assigned by Computop Paygate.

transIdstring

Transaction ID provided by you in the request.

xIdstring

A unique identifier assigned by Computop Paygate for each operation in the payment. For example: xId will be different for the authorization and capture operations of a payment whereas payId will be same.

refNrstring

Reference number provided by you in the request.

statusstring

Status of the transaction.

responseCodestring

Response code of the transaction.

responseDescriptionstring

Response description associated with the response code.

metadataobject

A collection of additional custom data provided by you to store extra information about the transaction. This is a set of JSON key value pairs as you passed in the request.

paymentMethodsobject
Response
application/json
{ "merchantId": "CT_Logeecom_test", "payId": "6c7c66e5352241c19d82c175a01f713a", "xId": "93c4093c6d3644fcb6c60484f7a831fd", "transId": "98582271-63d2-4b90-9422-5fb597a4c41d", "refNr": "36088922-348d-4a45-8fd0-5d5200100a2c", "status": "OK", "responseCode": "00000000", "responseDescription": "success" }