---
title: "Hosted payment page"
method: POST
path: "/paymentPage"
tags: ["Payment page"]
---

# Hosted payment page

`POST /paymentPage`

## Headers

- `X-Request-ID` string

## Request body

- object
  - `sku` union[], required
    - union
      - object
        - `title` string — Product name displayed on the payment page (3–128 characters)
        - `siteId` string, required — Gateway site ID (created on the Merchant portal)
        - `domainName` string — If the property is passed, the site domain name will be replaced
        - `price` object[], required
          - `offset` string — Number of days by how long the transaction will be delayed
          - `amount` number, double — Amount of operation
          - `currency` string, ISO3 — Currency of operation in ISO3 format
          - `repeat` union
            - boolean — Set to <b>false</b> to not repeat the transation, and <b>true</b> - to repeat the transation
            - integer — Count of repeats
        - `url` object, required
          - `ipnUrl` string, url — The Instant payment notification (aka IPN or callback) will be sent to this URL after purchase
          - `redirectUrl` string, url — User will be redirected to this URL after purchase
        - `action` object — Set the values to retry a transaction with the same order ID after a SCA decline
          - `type` string — Set <b>retry</b> to retry the transaction type. Include all parameters required for 3DS
          - `id` string — Gateway transaction ID
        - `xsell` 'checked' | 'unchecked'
      - object
        - `title` string — Product name displayed on the payment page (3–128 characters)
        - `name` string, required — SKU name that you added when creating SKU
        - `domainName` string — If the property is passed, the site domain name will be replaced
        - `url` object, required
          - `ipnUrl` string, url — The Instant payment notification (aka IPN or callback) will be sent to this URL after purchase
          - `redirectUrl` string, url — User will be redirected to this URL after purchase
        - `action` object — Set the values to retry a transaction with the same order ID after a SCA decline
          - `type` string — Set <b>retry</b> to retry the transaction type. Include all parameters required for 3DS
          - `id` string — Gateway transaction ID
        - `xsell` 'checked' | 'unchecked'
      - object
        - `title` string — Product name displayed on the payment page (3–128 characters)
        - `name` string, required — SKU name that you added when creating SKU
        - `domainName` string — If the property is passed, the site domain name will be replaced
        - `price` object[], required
          - `offset` string — Number of days by how long the transaction will be delayed
          - `amount` number, double — Amount of operation
          - `currency` string, ISO3 — Currency of operation in ISO3 format
          - `repeat` union
            - boolean — Set to <b>false</b> to not repeat the transation, and <b>true</b> - to repeat the transation
            - integer — Count of repeats
        - `url` object, required
          - `ipnUrl` string, url — The Instant payment notification (aka IPN or callback) will be sent to this URL after purchase
          - `redirectUrl` string, url — User will be redirected to this URL after purchase
        - `action` object — Set the values to retry a transaction with the same order ID after a SCA decline
          - `type` string — Set <b>retry</b> to retry the transaction type. Include all parameters required for 3DS
          - `id` string — Gateway transaction ID
        - `xsell` 'checked' | 'unchecked'
  - `consumer` object
    - `id` string — Gateway user ID
    - `externalId` string — User ID assigned within your system
    - `email` string, email — User email
    - `firstName` string — User first name
    - `lastName` string — User last name
    - `birthday` string, nullable — Date of birth
    - `phone` string — Consumer's phone number. Must start with an optional '+' sign, followed by up to 16 digits. The first digit (after '+' if present) must be between 1 and 9 (i.e., no leading zeros).
    - `country` string, ISO3 — Country name in ISO3 format
    - `state` string — State name
    - `city` string — City name
    - `address` string — Address
    - `zip` string — Postal code
    - `ip` string — Required in case if <b>payment.selected</b> or <b>payment.method</b> are not empty
    - `deviceId` string — Exodentity device ID
  - `template` object
    - `language` string, ISO2 — Payment page language. If empty, omitted, or unsupported - Gateway will determine it automatically based on the browser settings and the geographical location of the user
    - `layout` string — Payment page layout (theme). If empty, omitted, or unsupported - Gateway will use the default theme
    - `templateParameters` object — Key → value list of layout parameters
  - `payment` object
    - `method` string[]
    - `selected` 'card' | 'applepay' | 'sepa' | 'sofortbanking' | 'ideal' | 'eps' | 'mybank' | 'bancontact' | 'giropay' | 'przelewy24' | 'onlinebanking' | 'skrill' | 'clickandbuy' | 'paypal' | 'pix' | 'boleto' | 'pps' | 'gash' | 'crypto' | 'paygarden' | 'alipay' | 'wechat' | 'unionpay_wallet' | 'voucher' | 'paysafecard' | 'ukash' | 'safeklick' | 'sms' | 'x1' | 'lotericas' | 'picpay' | 'deposit_express' | 'payid' | 'spei' | 'oxxo' | 'codi' | 'todito' | 'banktransfer' | 'cashpayment' | 'pse' | 'efecty' | 'tpaga' | 'pago46' | 'khipu' | 'multibanco' | 'bncr' | 'mbway' | 'papara' | 'havale' | 'webpay_chile' | 'banktransferChile' | 'khipu' | 'mach' — Payment method
    - `secure` boolean — If <b>true</b>, Gateway will attempt additional payment verification (such as 3DSecure). Gateway will determine it automatically. Set to <b>true</b> by default
    - `test` boolean — Indicates if the payment will be processed in test mode
    - `emulateCode` string — Emulate a specific decline code for the transaction. Follow the <a href="https://readme.centrobill.com/docs/decline-codes">link</a> for the list of decline codes
    - `mid` string — Allows processing transactions via the specified Merchant account ID (MID)
    - `terminalMode` boolean — Indicates if the payment is in terminal mode (without consumer tracking, one-clicks, or antifraud checks)
    - `bin` integer — First 6 to 8 digits on the bank card
    - `domain` string — Enter the domain name to be displayed in the link instead of the default https://app.customdomain.com
    - `partialApproval` object — Optional recommendation to allow partial authorization whenever possible. At least one of `amount` or `percentage` must be provided. If both are provided, the approved amount is calculated as the specified percentage of the payment amount, but must not be less than `amount`. Sending this object does not guarantee a partial approval will occur. Actual support depends on payment methods that support partial approvals
      - `amount` number — Partial approval amount
      - `percentage` number — The percentage of the payment amount to approve
  - `metadata` object — Use to store additional information associated with the payment. You can add parameters <b>udf1</b> and <b>udf2</b> to pass your internal values such as transactionId, chargeId, orderId, bundleId, or affiliateId. Any values passed will be available in the Merchant Portal
  - `ttl` integer — The payment page lifetime in seconds. By default, set to 600
  - `emailOptions` object
    - `send` boolean — Set to <b>true</b> by default (in case the email is activated for your Merchant account). Use <b>true</b> to send an email about payment. The value is inherited for all transaction chains (rebill/void/refund/etc.). Check with your account manager which emails you have enabled

## Response `201`

Created

- object
  - `url` string — Gateway payment page URL to which you redirect your user

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `500` — Internal Server Error

---

[API](https://skmtc.dev/centrobill/apis/centrobill-payment-api.md) · [All operations](https://skmtc.dev/centrobill/apis/centrobill-payment-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/centrobill/centrobill-payment-api/revisions/d0334aeb55ce/schema)
