Skip to content

Submit Payin Card Data

Submits card data for an existing payin order in a host-to-host card integration flow.

Use this endpoint after creating a payin order. The request must include the created order ID and the card, customer, and browser data required for card payment processing.

Overview

In a host-to-host card integration, the merchant first creates a payin order using the Create Payin Order endpoint.

After the order is created, the merchant sends card data for this order using the Submit Payin Card Data endpoint.

This endpoint does not create a new order. It submits card data for an existing payin order.

Create Payin Order›

Card data handling

This endpoint is intended for host-to-host card integrations where the merchant system submits card data directly.

The merchant should handle card data only in a secure environment that follows applicable card data security requirements.

Endpoint

POST /api/v1/orders/payin/card-data

POST /api/v1/orders/payin/card-data
HTTP
POST /api/v1/orders/payin/card-data HTTP/1.1
X-Api-Key-Id: 3fa85f64-5717-4562-b3fc-2c963f66afa6
X-Signature: <generated-signature>
X-Timestamp: 1234567
Content-Type: application/json
Accept: application/json

{
  "order_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "card_number": "string",
  "first_name": "string",
  "last_name": "string",
  "cvv": "4206",
  "customer": {
    "reference_id": "wYOOf7Kp2WYijJtem2RC3ZqHRN2YJJdMCZZbgfQtV_3i7ttxLNTFmtk3FEjf",
    "first_name": " ''--} }'.'pLp'-.}p{.{ }'} {-}.p'}- .{..L{L-'-.'L{",
    "last_name": "  .{ {L'.-'-.{L'}p.}''-{.L}Lp }L--'",
    "email": "user@example.com",
    "phone": "+3599597573",
    "address": {
      "country": "AF",
      "city": "''L}.''p' '}p-{ }p-p''L-   }{'.}{}L{-p-{p'{p'{LLL{' L    p- {Lp'.{p'p L{.LLL p{ }.{}L LL  {- p}",
      "street": "string",
      "post_code": "string"
    }
  },
  "browser_info": {
    "color_depth": "15",
    "java_enabled": true,
    "screen_height": "7865",
    "screen_width": "1",
    "timezone": "8227",
    "device_channel": "03",
    "window_height": "6026",
    "window_width": "30188"
  },
  "exp_month": "05",
  "exp_year": "07"
}
200 OK. Card data submitted successfully.
200
HTTP/1.1 200 OK

Headers

X-Api-Key-Id string · uuid required

API key identifier issued for the merchant integration.

X-Signature string required

Request signature generated from the HTTP method, request path without query string, raw request body, and timestamp.

X-Timestamp integer · int64 required

Unix epoch timestamp in seconds used in the signature base string.

Request signature

This endpoint requires the X-Signature header. The signature must be generated from the raw request body.

For signature generation rules, see Request Signature Authentication.

Request body

application/json
application/json

Request body for submitting card data for an existing payin order.

order_id string · uuid required

Unique identifier of the payin order created by the Create Payin Order endpoint.

Example: 3fa85f64-5717-4562-b3fc-2c963f66afa6

card_number string required

Card number used for the host-to-host card payment.

Example: 4111111111111111

first_name string optional

Cardholder first name.

Example: John

Constraints: 0-255 characters

last_name string optional

Cardholder last name.

Example: Doe

Constraints: 0-255 characters

cvv string required

Card security code.

Example: 4206

Constraints: Matches ^\d{3,4}$

customer object required

Customer information associated with the payin order.

reference_id string optional

Customer identifier in the merchant system.

Example: customer-12345

Constraints: Matches ^[a-zA-Z0-9_-]{1,64}$

first_name string optional

Customer first name. Use letters and supported special characters only.

Example: John

Constraints: 0-50 characters; matches ^[\p{L} .'-]+$

last_name string optional

Customer last name. Use letters and supported special characters only.

Example: Doe

Constraints: 0-50 characters; matches ^[\p{L} .'-]+$

email string · email optional

Customer email address in a standard email format.

Example: [user@example.com](mailto:user@example.com)

phone string optional

Customer phone number in international format. The value must start with + and contain digits after the country calling code.

Example: +3599597573

Constraints: Matches ^\+[0-9]{5,30}$

address object optional

Customer address information.

country string optional

Two-letter country code in ISO 3166-1 alpha-2 format.

Example: AF

city string optional

Customer city name.

Example: Kabul

Constraints: 0-100 characters; matches ^[\p{L} .'-]+$

street string optional

Customer street address.

Example: Example Street 1

Constraints: 0-255 characters

post_code string optional

Customer postal or ZIP code.

Example: 1001

Constraints: 0-50 characters

browser_info object required

Customer browser information required for card payment processing.

color_depth string required

Color depth value reported by the customer browser.

Example: 24

Constraints: At least 1 character; matches ^[1-9][0-9]*$

java_enabled boolean required

Indicates whether Java is enabled in the customer browser.

Example: true

screen_height string required

Screen height value reported by the customer browser.

Example: 1080

Constraints: At least 1 character; matches ^[1-9][0-9]{0,4}$

screen_width string required

Screen width value reported by the customer browser.

Example: 1920

Constraints: At least 1 character; matches ^[1-9][0-9]{0,4}$

timezone string required

Timezone value reported by the customer browser.

Example: 120

Constraints: At least 1 character; matches ^-?[0-9]{1,4}$

device_channel string · enum required

Device channel value used for card payment processing.

Example: 03

Possible values:

010203

Constraints: At least 1 character; matches ^(01|02|03)$

window_height string required

Browser window height value reported by the customer browser.

Example: 900

Constraints: At least 1 character; matches ^[1-9][0-9]{0,4}$

window_width string required

Browser window width value reported by the customer browser.

Example: 1440

Constraints: At least 1 character; matches ^[1-9][0-9]{0,4}$

exp_month string required

Card expiration month.

Example: 05

Constraints: Matches ^(0[1-9]|1[0-2])$

exp_year string required

Card expiration year in two-digit format.

Example: 07

Constraints: Matches ^\d{2}$

Customer data

Customer data can be provided during payin order creation or during the card data submission step, depending on the merchant integration flow.

For this endpoint, the customer object is required by the request schema.

Responses

200 OK. Card data submitted successfully. application/json

The request was processed successfully. No response body is returned.