Conversions
JWT token obtained from /auth/login or /auth/login/manager. Include as Authorization: Bearer <token>.
Payment amount in the fiat currency specified by fromAsset (minimum 0.10)
50Fiat currency the merchant receives
Target settlement asset (currently always settled in USDC)
USDCPossible values: POS / collector identifier (required for in-store payments). Either this or websiteUrl must be set.
E-commerce website URL (required for online payments). Either this or merchantIdentifier must be set.
Buy button session ID — required when websiteUrl is provided
URL to receive status update notifications via HTTP POST
Redirect URL when customer cancels
Redirect URL after successful payment
Merchant order reference / alias. If set, the order is a payment link valid for 1 month.
If true, payer identity is not required
Custom expiry in minutes (only applies to payment links with alias; minimum 10)
Order created. Display the code to the customer as a QR code pointing to pay.lyzi.io/pay?code=<code>.
Whether the request succeeded
HTTP status code
Illegal amount or invalid exchange rate
Unauthorized
Validation error
POST /api/next/confirm_conversion/request HTTP/1.1
Host: api.lyzi.fr
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 333
{
"amount": 29.99,
"fromAsset": "EUR",
"toAsset": "USDC",
"merchantIdentifier": "550e8400-e29b-41d4-a716-446655440000-ACME-MYSHOP-GEN",
"webhookUrl": "https://myshop.com/webhooks/lyzi",
"returnUrl": "https://myshop.com/thank-you",
"cancelUrl": "https://myshop.com/cart",
"goods": {
"goodsName": "Blue T-Shirt",
"goodsType": "01",
"goodsCategory": "3000"
}
}{
"success": true,
"status": 1,
"data": {
"code": "text",
"order": {
"_id": "text",
"code": "text",
"shortCode": "text",
"fromAmount": "text",
"toAmount": "text",
"fromAsset": "EUR",
"toAsset": "USDC",
"status": "INITIAL",
"paymentChannel": "binance",
"webhookUrl": "text",
"alias": "text",
"goods": {
"goodsName": "text",
"goodsType": "01",
"goodsCategory": "0000",
"goodsDetail": "text",
"goodsQuantity": "text"
},
"createdAt": "2026-01-01T00:00:00.000Z",
"updatedAt": "2026-01-01T00:00:00.000Z"
}
}
}Order code returned by /confirm_conversion/request
Order status
Whether the request succeeded
HTTP status code
Order not found
GET /api/next/confirm_conversion/status/{code} HTTP/1.1
Host: api.lyzi.fr
Accept: */*
{
"success": true,
"status": 1,
"data": {
"_id": "text",
"code": "text",
"shortCode": "text",
"fromAmount": "text",
"toAmount": "text",
"fromAsset": "EUR",
"toAsset": "USDC",
"status": "INITIAL",
"paymentChannel": "binance",
"webhookUrl": "text",
"alias": "text",
"goods": {
"goodsName": "text",
"goodsType": "01",
"goodsCategory": "0000",
"goodsDetail": "text",
"goodsQuantity": "text"
},
"createdAt": "2026-01-01T00:00:00.000Z",
"updatedAt": "2026-01-01T00:00:00.000Z"
}
}Merchant order reference (alias provided at creation time)
Order status
Whether the request succeeded
HTTP status code
Order not found
GET /api/next/confirm_conversion/status/order/{orderRef} HTTP/1.1
Host: api.lyzi.fr
Accept: */*
{
"success": true,
"status": 1,
"data": {
"_id": "text",
"code": "text",
"shortCode": "text",
"fromAmount": "text",
"toAmount": "text",
"fromAsset": "EUR",
"toAsset": "USDC",
"status": "INITIAL",
"paymentChannel": "binance",
"webhookUrl": "text",
"alias": "text",
"goods": {
"goodsName": "text",
"goodsType": "01",
"goodsCategory": "0000",
"goodsDetail": "text",
"goodsQuantity": "text"
},
"createdAt": "2026-01-01T00:00:00.000Z",
"updatedAt": "2026-01-01T00:00:00.000Z"
}
}JWT token obtained from /auth/login or /auth/login/manager. Include as Authorization: Bearer <token>.
Order code
binance=Binance Pay, whitepay=WhiteBIT, whitepay-non-custody=WhiteBIT Any Wallet, cryptopay=Crypto.com, crypto=Non-Custodial Wallet, gatepay=Gate Pay, coinbase=Coinbase Onramp, kucoinpay=KuCoin Pay
Chain ID for non-custodial wallet payments
Payer's blockchain wallet address
POS identifier
Previous order codes (for recurring payment context)
Conversion accepted. Response contains channel-specific payment instructions. For non-custodial wallet: includes toAddress and tokenAmount. For CEX (Binance, etc.): includes deeplink or QR data.
Whether the request succeeded
HTTP status code
Payment instructions vary by payment channel
Unauthorized
Order not found
POST /api/next/confirm_conversion/accept/{code} HTTP/1.1
Host: api.lyzi.fr
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 181
{
"paymentChannel": "binance",
"cancelUrl": "text",
"returnUrl": "text",
"network": 1,
"payerEmail": "name@gmail.com",
"anonymous": true,
"userAddress": "text",
"pos": "text",
"pastOrders": [
"text"
]
}{
"success": true,
"status": 1,
"data": {}
}JWT token obtained from /auth/login or /auth/login/manager. Include as Authorization: Bearer <token>.
Order code
Conversion confirmed
Whether the request succeeded
HTTP status code
Response payload
Unauthorized
Order not found
POST /api/next/confirm_conversion/confirm/{code} HTTP/1.1
Host: api.lyzi.fr
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"success": true,
"status": 1,
"data": null
}JWT token obtained from /auth/login or /auth/login/manager. Include as Authorization: Bearer <token>.
Order code
Conversion cancelled
Whether the request succeeded
HTTP status code
Response payload
Unauthorized
Order not found
POST /api/next/confirm_conversion/cancel/{code} HTTP/1.1
Host: api.lyzi.fr
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"success": true,
"status": 1,
"data": null
}JWT token obtained from /auth/login or /auth/login/manager. Include as Authorization: Bearer <token>.
Order code
Refund initiated
Whether the request succeeded
HTTP status code
Response payload
Unauthorized
Order not found
POST /api/next/confirm_conversion/revert/{code} HTTP/1.1
Host: api.lyzi.fr
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"success": true,
"status": 1,
"data": null
}JWT token obtained from /auth/login or /auth/login/manager. Include as Authorization: Bearer <token>.
Order code
Link expired
Whether the request succeeded
HTTP status code
Response payload
Unauthorized
POST /api/next/confirm_conversion/expire/{code} HTTP/1.1
Host: api.lyzi.fr
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"success": true,
"status": 1,
"data": null
}JWT token obtained from /auth/login or /auth/login/manager. Include as Authorization: Bearer <token>.
Filter by one or more statuses
INITIAL: awaiting payment | PENDING: accepted by merchant | AWAITING: sent to CEX, not yet paid | PAID: completed | CANCELLED: aborted | ERROR: process error | REFUNDING: refund in progress | REFUNDED: partial refund | FULL_REFUNDED: full refund | EXPIRED: expired after inactivity | WAITING_CHAIN_CONFIRMATION: waiting on-chain confirmation | KYT_FAILED: wallet risk screening failed
120Search by code, alias, or amount
SuperAdmin/SuperManager: filter by manager email
Paginated list of orders
Whether the request succeeded
HTTP status code
Unauthorized
GET /api/next/confirm_conversion HTTP/1.1
Host: api.lyzi.fr
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"success": true,
"status": 1,
"data": {
"orders": [
{
"_id": "text",
"code": "text",
"shortCode": "text",
"fromAmount": "text",
"toAmount": "text",
"fromAsset": "EUR",
"toAsset": "USDC",
"status": "INITIAL",
"paymentChannel": "binance",
"webhookUrl": "text",
"alias": "text",
"goods": {
"goodsName": "text",
"goodsType": "01",
"goodsCategory": "0000",
"goodsDetail": "text",
"goodsQuantity": "text"
},
"createdAt": "2026-01-01T00:00:00.000Z",
"updatedAt": "2026-01-01T00:00:00.000Z"
}
],
"total": 1,
"page": 1,
"limit": 1
}
}JWT token obtained from /auth/login or /auth/login/manager. Include as Authorization: Bearer <token>.
File download (CSV or Excel)
No content
Unauthorized
GET /api/next/confirm_conversion/download HTTP/1.1
Host: api.lyzi.fr
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
No content
JWT token obtained from /auth/login or /auth/login/manager. Include as Authorization: Bearer <token>.
List of payment links
Whether the request succeeded
HTTP status code
Unauthorized
GET /api/next/confirm_conversion/links HTTP/1.1
Host: api.lyzi.fr
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"success": true,
"status": 1,
"data": [
{
"_id": "text",
"code": "text",
"shortCode": "text",
"fromAmount": "text",
"toAmount": "text",
"fromAsset": "EUR",
"toAsset": "USDC",
"status": "INITIAL",
"paymentChannel": "binance",
"webhookUrl": "text",
"alias": "text",
"goods": {
"goodsName": "text",
"goodsType": "01",
"goodsCategory": "0000",
"goodsDetail": "text",
"goodsQuantity": "text"
},
"createdAt": "2026-01-01T00:00:00.000Z",
"updatedAt": "2026-01-01T00:00:00.000Z"
}
]
}JWT token obtained from /auth/login or /auth/login/manager. Include as Authorization: Bearer <token>.
Order code
Payer information saved
Whether the request succeeded
HTTP status code
Response payload
Unauthorized
Validation error
POST /api/next/confirm_conversion/payer-information HTTP/1.1
Host: api.lyzi.fr
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 302
{
"code": "text",
"payerInformation": {
"firstName": "text",
"lastName": "text",
"email": "name@gmail.com",
"address1": "text",
"address2": "text",
"city": "text",
"state": "text",
"country": "text",
"zipCode": "text",
"postalAddress": "text",
"userAddress": "text",
"isCompany": false,
"companyName": "text",
"companySiret": "text"
}
}{
"success": true,
"status": 1,
"data": null
}JWT token obtained from /auth/login or /auth/login/manager. Include as Authorization: Bearer <token>.
Order code
Email set
Whether the request succeeded
HTTP status code
Response payload
Unauthorized
Validation error
POST /api/next/confirm_conversion/email/{code} HTTP/1.1
Host: api.lyzi.fr
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 26
{
"email": "name@gmail.com"
}{
"success": true,
"status": 1,
"data": null
}Source asset (e.g. EUR)
Target asset (e.g. USDC)
Exchange rate data
Whether the request succeeded
HTTP status code
Validation error
GET /api/next/confirm_conversion/exchangeInfo?fromAsset=text&toAsset=text HTTP/1.1
Host: api.lyzi.fr
Accept: */*
{
"success": true,
"status": 1,
"data": {
"price": 1,
"fromAsset": "text",
"toAsset": "text"
}
}Last updated