invoice.created
Invoice created and ready for payment.
An invoice was created. This event does not indicate an accepted payment or balance credit. Hosted/API intents are created before address allocation and rate lock. Static-address invoices already have an address, selected payment pair, and rate snapshot.
When to use it#
Save the invoice/order relationship. The current producer sends schema version 2. Its amount_basis distinguishes requested_crypto from requested_fiat; fiat network is empty until a payment pair is selected. The event's requested amount describes the nomination at creation, while REST selected-payment fields can still be null.
Static deposits use this event too. Their external_id can be null; GET the invoice for static_address_id. Version 1 remains described by the contract for receivers that support existing payloads.
Schema version 1#
Fields are taken from the public OpenAPI contract. Required nullable fields must be present and may contain null.
-
id· string · RequiredStable event UUID for merchant-side idempotency. · Format: uuid
-
event_seq· integer · RequiredGlobal event sequence. Gaps are possible; it does not establish delivery or processing order. · Format: int64
-
type· "invoice.created" · Required—
-
schema_version· 1 · Required—
-
environment· "live" | "test" · Required—
-
merchant_id· string · RequiredFormat: uuid
-
subject_type· "invoice" · Required—
-
subject_id· string · RequiredFormat: uuid
-
occurred_at· string · RequiredCanonical business occurrence timestamp. · Format: date-time
-
data· object · RequiredUnknown properties are rejected
-
data.invoice_id· string · RequiredFormat: uuid
-
data.external_id· string | null · Required—
-
data.currency· string · Required—
-
data.network· string · Required—
-
data.environment· "live" | "test" · Required—
-
data.amount_requested· string · RequiredFormat: decimal · Pattern: ^\d+(.\d+)?$
-
data.amount_paid· string · RequiredFormat: decimal · Pattern: ^\d+(.\d+)?$
-
data.status· "pending" · Required—
Example — version 1#
{
"id": "00000000-0000-0000-0000-000000000001",
"event_seq": 184203,
"type": "invoice.created",
"schema_version": 1,
"environment": "live",
"merchant_id": "00000000-0000-0000-0000-000000000002",
"subject_type": "invoice",
"subject_id": "00000000-0000-0000-0000-000000000003",
"occurred_at": "2026-09-14T10:00:00Z",
"data": {
"invoice_id": "00000000-0000-0000-0000-000000000003",
"external_id": null,
"currency": "USDC",
"network": "ethereum",
"environment": "live",
"amount_requested": "25.00",
"amount_paid": "0",
"status": "pending"
}
}Schema version 2#
Fields are taken from the public OpenAPI contract. Required nullable fields must be present and may contain null.
-
id· string · RequiredStable event UUID for merchant-side idempotency. · Format: uuid
-
event_seq· integer · RequiredGlobal event sequence. Gaps are possible; it does not establish delivery or processing order. · Format: int64
-
type· "invoice.created" · Required—
-
schema_version· 2 · Required—
-
environment· "live" | "test" · Required—
-
merchant_id· string · RequiredFormat: uuid
-
subject_type· "invoice" · Required—
-
subject_id· string · RequiredFormat: uuid
-
occurred_at· string · RequiredCanonical business occurrence timestamp. · Format: date-time
-
data· object · RequiredInvoice nomination at creation; amount_paid is zero. Hosted/API intents precede checkout activation and rate lock. Static-address invoices already have an address, selected payment pair, and rate snapshot. · Unknown properties are rejected
-
data.invoice_id· string · RequiredFormat: uuid
-
data.external_id· string | null · Required—
-
data.currency· string · Required—
-
data.network· string · RequiredFixed crypto network, or an empty string for a fiat nomination.
-
data.environment· "live" | "test" · Required—
-
data.amount_requested· string · RequiredFormat: decimal · Pattern: ^\d+(.\d+)?$
-
data.amount_paid· "0" · Required—
-
data.status· "pending" · Required—
-
data.amount_basis· "requested_crypto" | "requested_fiat" · Required—
Example — version 2#
{
"id": "00000000-0000-0000-0000-000000000001",
"event_seq": 184203,
"type": "invoice.created",
"schema_version": 2,
"environment": "test",
"merchant_id": "00000000-0000-0000-0000-000000000002",
"subject_type": "invoice",
"subject_id": "00000000-0000-0000-0000-000000000003",
"occurred_at": "2026-09-14T10:00:00Z",
"data": {
"invoice_id": "00000000-0000-0000-0000-000000000003",
"external_id": null,
"currency": "USD",
"network": "",
"environment": "test",
"amount_requested": "25.00",
"amount_paid": "0",
"status": "pending",
"amount_basis": "requested_fiat"
}
}See delivery and envelope, signature verification, and business processes.