Skip to content

Create a Payment

POST
/v1/payments
curl --request POST \
--url https://api.parasta.io/v1/payments \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "amount": 10000000, "currency": "USDT", "network": "POLYGON", "settlement": { "mode": "coin" }, "metadata": { "order_id": "order_4567" } }'

Create a payment intent. Returns the address the customer should send funds to.

Media type application/json
object
amount
required
integer format: int64
currency
required
string
Allowed values: USDT USDC ETH SOL
network
required
string
Allowed values: POLYGON ETHEREUM SOLANA
settlement
object
mode
required

Coin = keep crypto; krw = exchange to KRW at confirmation; splits = mixed

string
Allowed values: coin krw splits
krw_account

Required when mode=krw

string
splits
Array<object>
object
destination
required
string
Allowed values: coin krw
percent
required
number
<= 100
metadata
object
key
additional properties
string
Example
{
"amount": 10000000,
"currency": "USDT",
"network": "POLYGON",
"settlement": {
"mode": "coin"
},
"metadata": {
"order_id": "order_4567"
}
}

Payment created

Media type application/json
object
id
required
string
amount
required

Smallest unit

integer format: int64
currency
required
string
Allowed values: USDT USDC ETH SOL
network
required
string
Allowed values: POLYGON ETHEREUM SOLANA
status
required
string
Allowed values: pending processing succeeded failed expired canceled
pay_address
required
string
expires_at
required
string format: date-time
settlement
object
mode
required

Coin = keep crypto; krw = exchange to KRW at confirmation; splits = mixed

string
Allowed values: coin krw splits
krw_account

Required when mode=krw

string
splits
Array<object>
object
destination
required
string
Allowed values: coin krw
percent
required
number
<= 100
metadata
object
key
additional properties
string
created
string format: date-time
Example
{
"id": "pi_abc123",
"currency": "USDT",
"network": "POLYGON",
"status": "pending",
"pay_address": "0x1234...abcd",
"settlement": {
"mode": "coin",
"splits": [
{
"destination": "coin"
}
]
}
}

Authentication failed

Media type application/json
object
error
required
object
type
required
string
Allowed values: authentication_error permission_error invalid_request_error not_found_error rate_limit_error idempotency_error payment_error network_error api_error
code
required
string
message
required
string
param
string
request_id
string
Example
{
"error": {
"type": "authentication_error"
}
}