---
title: "Start Crypto.com payment"
method: POST
path: "/sdk/{environmentId}/onramps/cryptoDotCom/payment"
tags: ["SDK"]
---

# Start Crypto.com payment

`POST /sdk/{environmentId}/onramps/cryptoDotCom/payment`

Create a Crypto.com payment and return the payment payload (URL and optional QR code)

## Path parameters

- `environmentId` string, required

## Request body

- CryptoDotComPaymentCreateRequest
  - `amount` number, required — A positive integer representing how much to collect in the smallest currency unit (e.g., 100 cents to collect $1.00). Refer to [Pricing Currencies](https://pay-docs.crypto.com/#api-reference-resources-payments-pricing-currencies) for the smallest unit for each currency.
  - `currency` string, required — Three-letter currency code for the payment amount (pricing currency). Must be a supported fiat currency / cryptocurrency. Refer to [Pricing Currencies](https://pay-docs.crypto.com/#api-reference-resources-payments-pricing-currencies) for the currency code.
  - `description` string
  - `metadata` object — Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.
  - `orderId` string
  - `subMerchantId` string
  - `walletAddress` string, required — Valid blockchain wallet address, must be an alphanumeric string without any special characters
  - `networkId` string
  - `chain` 'ETH' | 'EVM' | 'FLOW' | 'SOL' | 'ALGO' | 'STARK' | 'COSMOS' | 'BTC' | 'ECLIPSE' | 'SUI' | 'SPARK' | 'TRON' | 'APTOS' | 'TON' | 'STELLAR', required
  - `merchantName` string

## Response `200`

Crypto.com payment payload

- CryptoDotComPaymentResponse
  - `id` string, required
  - `amount` number, required — A positive integer representing how much to collect in the smallest currency unit (e.g., 100 cents to collect $1.00). Refer to [Pricing Currencies](https://pay-docs.crypto.com/#api-reference-resources-payments-pricing-currencies) for the smallest unit for each currency.
  - `currency` string, required — Three-letter currency code for the payment amount (pricing currency). Must be a supported fiat currency / cryptocurrency. Refer to [Pricing Currencies](https://pay-docs.crypto.com/#api-reference-resources-payments-pricing-currencies) for the currency code.
  - `amountRefunded` number — Amount in cents refunded (can be less than the amount of the payment if a partial refund was issued).
  - `created` number — Time at which the object was created. Measured in seconds since the Unix epoch.
  - `cryptoCurrency` string — The cryptocurrency to be collected for this payment.
  - `cryptoAmount` string — The amount of cryptocurrency to be collected for this payment.
  - `customerId` string — ID of the customer created in Crypto.com Pay Merchant Dashboard, if exists.
  - `paymentUrl` string, required — The URL of the payment page that customers will navigate to in order to make the payment.
  - `qrCode` string, required
  - `returnUrl` string — The URL for payment page to redirect back to when the payment becomes succeeded.
  - `cancelUrl` string — The URL for payment page to redirect to when the payment is failed or cancelled.
  - `description` string — An arbitrary string attached to the object.
  - `liveMode` boolean — Has the value true if the object exists in live mode or the value false if the object exists in test mode.
  - `metadata` object — Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.
  - `orderId` string — Merchant provided order ID for this payment. Merchants can view the associated order ID of each payment on the Merchant Dashboard. Crypto.com Pay does not verify or guarantee the uniqueness of the values in this field.
  - `recipient` string — The name of the merchant collecting this payment.
  - `refunded` boolean — Whether the charge has been fully refunded. If the charge is only partially refunded, this attribute will still be false.
  - `status` string, required — The status of the payment is either pending (pending payment), succeeded (payment captured), or cancelled.
  - `expiredAt` number — Time at which the payment expires. Measured in seconds since the Unix epoch.

## Other responses

- `400` — Bad Request
- `404` — Not found
- `500` — Internal Server Error

---

[API](https://skmtc.net/dynamic/apis/dashboard-api.md) · [All operations](https://skmtc.net/dynamic/apis/dashboard-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/dynamic/dashboard-api/revisions/aac826315d90/schema)
