Skip to main content
POST
Create an invoice

Authorizations

x-api-key
string
header
required

Body

application/json
amount
required
Required range: x > 0
fiat_currency
string
required
billing_type
enum<string>
required

Invoice settlement mode. STATIC — fixed-price service purchase: the invoice expects exactly amount. An underpayment moves it to partially_paid (NOT finalized) so the client can top up to the full amount; the address keeps listening until the invoice expires or reaches success/paid_over. VARY — open-ended balance top-up: any incoming payment finalises the invoice (success if it covers amount, partially_paid (finalized) if less). Required value when permanent_address=true.

Available options:
VARY,
STATIC
asset
string | null
chain
string | null
extra
string | null
Required string length: 1 - 64
Pattern: ^[A-Za-z0-9_-]{1,64}$
notify_url
string | null
Maximum string length: 500
ttl
integer
default:3600
Required range: 300 <= x <= 86400
metadata
Metadata · object | null
title
string | null
Maximum string length: 150
description
string | null
Maximum string length: 500
underpay_tolerance
number | null
Required range: 0 <= x <= 10
accepted_coins
string[] | null
excluded_coins
string[] | null
on_paid_url
string | null
Maximum string length: 500
on_cancel_url
string | null
Maximum string length: 500
price_modifier
number | null
Required range: -90 <= x <= 90
fee_bearer
enum<string>
default:client
Available options:
merchant,
client
payer_info
Payer Info · object | null
webhook_format
enum<string> | null
Available options:
native_v2,
cryptomus,
heleket,
nowpayments,
coinpayments,
coinpayments_v2
permanent_address
boolean
default:false

If true, bind this invoice to the permanent deposit address for (merchant, user_id, asset family). The address is created on first use and reused thereafter. Requires billing_type=VARY and a non-empty user_id. If asset is provided the address is allocated immediately; if omitted, the address is allocated when the customer selects a currency on the hosted checkout. XMR is not supported for permanent addresses.

user_id
string | null

External user identifier — required when permanent_address=true.

Required string length: 1 - 128

Response

Created

ok
boolean
required
result
Invoice · object
required
Example: