---
title: "Create Payment Request"
method: POST
path: "/api/v1/payment"
tags: ["Payment"]
---

# Create Payment Request

`POST /api/v1/payment`

Create payment request for on-ramp transaction

## Request body

- PaymentDto
  - `network` string, required — CryptoCurrency network that you would allow your customers to buy/sell. You can get the network name from GET /crypto-currencies. Example: 'mainnet', 'ethereum', 'bep2', 'matic'
  - `walletAddress` string, required — The blockchain address of the user's wallet that the purchased cryptocurrency will be sent to.
  - `emailAddress` string, required — Securo user email address
  - `trxType` 'Buy' | 'Sell', required — Transaction Types, 'Buy', 'Sell'
  - `fiatCurrency` string, required — The code of the fiat currency you want the customer to buy/sell cryptocurrency. You can get the symbol from GET /fiat-currencies. Example: 'INR', 'EUR', 'USD'.
  - `fiatAmount` number — An integer amount representing how much the customer wants to spend/receive. Users can't change the fiat amount if this is passed. This parameter will be skipped if fiatCurrency is not passed.
  - `cryptoCurrency` string, required — Crypto currency symbol that you would allow your customers to buy/sell. You can get the symbol from GET /crypto-currencies. Example: 'ETH', 'BTC', 'DAI'.
  - `redirectURL` string — Redirect back to this URL, once the customer has completed their purchase/sell process.
  - `cryptoAmount` number — An integer amount representing how much crypto the customer wants to sell. Users cannot change the crypto amount if this is passed.
  - `isDisableCrypto` boolean — When true, then the customer will not see anything about the cryptocurrency. This will hide all the information related to crypto completely. This parameter will be ignored if cryptoCurrencyCode, walletAddress is not passed. This parameter is helpful if you are creating an app for the users who do not know much about the cryptocurrencies.
  - `cancellationUrl` string — Redirect back to this URL, once the customer has cancelled their purchase/sell process.
  - `paymentMethod` string, required — Payment method. You can get the payment method id from GET /fiat-currencies. Example: 'upi', 'credit_debit_card', 'gbp_bank_transfer'

## Response `201`

Payment request is created

- PaymentResponseVo
  - `statusCode` number
  - `message` string
  - `data` object
    - `tokenUsed` string — Cryptocurrency symbol for the transaction
    - `fiatCurrencyUsed` string — Fiat currency symbol for the transaction
    - `status` string — Transaction status, value is `P` - pending, `S` - success, `F` - failed, `V` - voided
    - `trxType` string — Transaction type, value is `Buy`
    - `walletAddress` string — Wallet address is used for the transaction
    - `network` string — Blockchain network name
    - `invoiceId` string — Unique identifier of invoice
    - `webviewURL` string — Payment webview URL is used to redirect users to perform transaction
    - `expiredDate` string — Expire date of the payment request
    - `fiatAmount` number — Fiat amount for the transaction
    - `redirectURL` string — This URL is used to redirect users after finished transaction
    - `cancellationURL` string — This URL is used to redirect users after cancelled transaction
    - `createdAt` number — Timestamp of payment request created in milliseconds
    - `isDisableCrypto` boolean — Indicate that hiding the crypto-related items on payment screen
    - `paymentMethod` string — Payment method used for the transaction
    - `provider` object
      - `providerName` string — Payment provider name
    - `userEmailAddress` string — Securo user email who performed the transaction

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden Resources

---

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