Invoice Creation
The method allows you to create an invoice for a customer using a POST request.
In order to create an invoice, you need to send a POST request.
What the method allows you to do
Creates a unique invoice
Returns a payment link or payment details
Allows you to pass additional data
Endpoint
POST https://api.cryptocloud.plus/v2/invoice/create
Headers
Authorization*
string
Token eyJ0eXAiOiJK<...>4npi1ksS8tSY
Project API key
Request Body
Key parameters
shop_id*
string
NGpD44<...>KXRdQ
Unique identifier of the store from personal account
amount*
float
100
Payment amount in USD
currency
string
USD
Available conversion currencies:
USD, UZS, KGS, KZT, AMD, AZN, BYN, AUD, TRY, AED, CAD, CNY, HKD, IDR, INR, JPY, PHP, SGD, THB, VND, MYR, RUB, UAH, EUR, GBP.
The default currency is USD.
order_id
string
ORDER_93223
Custom invoice number in the external system
Optional parameters
add_fields — an object for passing additional data
add_fields
dict
{time_to_pay: {
"hours": 24, "minutes": 0
},
}
Additional parametres
Optional parameters must be passed within the add_fields object.
time_to_pay
dict
{ "hours": 24, "minutes": 0 }
Invoice lifetime
Invoice due time
available_currencies
list[string]
[ "USDT_TRC20", "ETH", "BTC" ]
Available payment currencies:
BTC, LTC, TRX, SOL, TON, BNB, ETH, ETH_ARB, ETH_BASE, ETH_OPT, USDT_ARB, USDT_BSC, USDT_ERC20, USDT_OPT, USDT_SOL, USDT_TON, USDT_TRC20, USDC_ARB, USDC_BASE, USDC_BSC, USDC_ERC20, USDC_OPT, USDC_SOL, DAI_ARB, DAI_BASE, DAI_BSC, DAI_ERC20, DAI_OPT, USDD_TRC20, PYUSD_ERC20, PYUSD_SOL, XAUT_ERC20, XAUT_TON, ARB_ARB, OP_OPT, PEPE_BSC, PEPE_ERC20, SHIB_BSC, SHIB_ERC20, TRUMP_SOL
Payment currencies
cryptocurrency
string
ETH
Selecting the payment currency on behalf of the user.
If a currency is specified, the payment page will display the payment details without a currency selection option.
The address and amount will also be returned in the API response.
Select the payment currency for the user. The details will be displayed on the payment page when specifying the currency. The address will be given in response to the request.
Request examples
These examples show how to send a request to create an invoice. Note that you must provide your API key in the Authorization header to successfully authorize the request.
Response examples
A successful request returns a response with the status success and a result object.
Response parameters
The result object contains:
uuid
string
INV-89UX09KA
Unique invoice identifier with the INV prefix
created
string
2026-01-01 12:00:00.000000
Invoice creation time in UTC+0 format: YYYY-MM-DD HH:MI:SS.FFFFFF
address
string
0xb07427<...>E93D3846ee58B63
Payment address
Will be prefilled only if a cryptocurrency for payment is selected.
To select the currency on behalf of the customer, specify a project-supported currency in add_fields.cryptocurrency.
expiry_date
string
2026-01-02 12:00:00.000000
Invoice expiration date in UTC+0 format: YYYY-MM-DD HH:MI:SS.FFFFFF.
After the expiration time, the invoice status will change to canceled if payment has not been received.
side_commission
string
client
Transfer fee payer
side_commission_cc
string
client
Service fee payer
amount
float
0.033366
Invoice amount in the selected cryptocurrency
amount_usd
float
100.0
Invoice amount in USD
amount_in_fiat
float
100.0
Invoice amount in the creation currency (depends on the currency parameter)
fee
float
4.500000159168849e-06
Invoice transfer fee
fee_usd
float
0.01
Invoice transfer fee in USD
service_fee
float
0.000634
Service fee
service_fee_usd
float
1.9
Service fee in USD
fiat_currency
string
USD
Fiat currency code in which the invoice was created
status
string
created
Invoice status
When a create-invoice request is sent, the status is always created.
Other possible statuses: paid (paid), partial (partially paid), overpaid (overpaid), and canceled (canceled).
is_email_required
bool
false
Parameter for requiring the payer’s email in the invoice
link
string
pay.cryptocloud.plus/89UX09KA
Link to the invoice page
currency
dict
"currency": {
"id": 3,
"code": "ETH",
"fullcode": "ETH",
"network": {
"code": "ERC20",
"id": 3,
"icon": "https://cdn.cryptocloud.plus/img/network/ERC.svg",
"fullname": "Ethereum"
},
"name": "Ethereum",
"is_email_required": false,
"stablecoin": false,
"icon_base": "https://cdn.cryptocloud.plus/img/currency/ETH.svg",
"icon_network": "https://cdn.cryptocloud.plus/img/currency/ETH.svg",
"icon_qr": "https://cdn.cryptocloud.plus/img/stroke/ETH_STROKE.svg",
"order": 9
}
Object of the selected cryptocurrency in the invoice.
Also contains the network object — information about the selected currency network.
project
dict
"project": {
"id": 0,
"name": "MyShop",
"fail": "https://test.com/failed-payment",
"success": "https://test.com/successful-payment",
"logo": "https://static.cryptocloud.plus/logo/logo.jpg"
}v
Object containing project information
test_mode
bool
false
Test invoice sign
Last updated
Was this helpful?