---
title: "POST /payments/s2s/charge-raw-card"
method: POST
path: "/payments/s2s/charge-raw-card"
---

# POST /payments/s2s/charge-raw-card

`POST /payments/s2s/charge-raw-card`

## Headers

- `Idempotency-Key` string

## Request body

- ChargeRawCardRequest
  - `amount` integer, required — The amount in lowest count unit. e.g.: For USD 1, amount is 100 representing 100 cents (The minimum amount should be greater than 1 USD)
  - `currency` string, required — Three letter abbreviation of the currency. Refer [supported currencies](/get-started/currencies-supported)
  - `receiptId` string — Your identifier for the order
  - `cardDetails` CardDetails, required — Payment card information collected by you
    - `cardHolderName` string — Name of the cardholder
    - `cardNumber` string, required — Full Primary Account Number (PAN)
    - `expiryMonth` integer, required — Card expiry month in MM format
    - `expiryYear` integer, required — Card expiry year in YY format
    - `cvv` string, required — Card security code (CVV/CSC).
    - `country` string — Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)) of the country where the card is registered.
    - `postalCode` string — Postal code of the location where the card is registered.
  - `callbackUrl` string, required — URL that the customer will be redirected to once the payment is processed in case 3ds authentication is required.
  - `metadata` object — A collection of key-value pairs that can be attached to an object for storing additional structured information. This is useful for capturing custom data or context-specific attributes. Constraints: - Maximum of 50 key-value pairs allowed. - Each key must be no longer than 40 characters. - Each value must be a string and cannot exceed 500 characters.
  - `customerId` string — The unique identifier for the customer, generated via the [create-customer API](/developer-resources/endpoints/customer/create-customer). This can be used to associate the payment with a specific customer in your system.
  - `customerReferenceId` string — Your unique identifier for the customer. This can be used to associate the payment with a specific customer in your system.
  - `customerDetails` BillingDetails — Billing details for the customer.
    - `name` string, required — Customer's name
    - `email` string, required — Customer's email address
    - `contactNumber` string, required — Customer's contact number ([E.164 format](https://en.wikipedia.org/wiki/E.164)), including the country code (e.g., +1 for US, +44 for UK, +91 for India).
    - `customerAddress` CustomerAddress
      - `addressLine1` string — Line 1 of the customer's address
      - `addressLine2` string — Line 2 of the customer's address
      - `city` string — City of the customer's address
      - `state` string — State of the customer's address
      - `country` string — Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
      - `postalCode` string — Postal code

## Response `200`

Charge raw card response

- ChargeRawCardResponse
  - `intentId` string, required — Identifier of the payment intent created for this charge.
  - `nextActionRedirectionURL` string, required — URL to redirect your customer to xpay's secure link to complete any pending 3DS or next action steps. Present only when additional authentication is required.
  - `errorCode` string — Machine readable failure reason when status is `FAILED`. [See all possible values here.](/products/one-time-payments/error-codes)

## Other responses

- `400` — unexpected error

---

[API](https://skmtc.net/xpaycheckout/apis/xpay-api-store.md) · [All operations](https://skmtc.net/xpaycheckout/apis/xpay-api-store/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/xpaycheckout/xpay-api-store/versions/6329a7c694bc/schema)
