Payments
Create and manage payment sessions
Returns all Payment Sessions.
Your API key (obtain from dashboard)
Page number (1-based)
1Example: 1Number of items per page
10Example: 10Search by session reference, payment/deposit address, or transaction hash.
ORDER-123Filter by invoice reference
inv_abc123xyz789Filter by customer ID
123e4567-e89b-12d3-a456-426614174000Filter by payment page reference
page_abc123def456Filter by session state: open or closed
openPossible values: Filter by payment status
completedPossible values: Filter by asset
USDTFilter by blockchain
ethereumMinimum amount (in fiat)
10Maximum amount (in fiat)
1000Set to true to add transactions to each session.
trueFilter by session type
checkoutPossible values: Filter by fiat currency
NGNPossible values: Filter by refund status. Pass true to return only refunded sessions.
trueFilter sessions created from this date/time (ISO 8601)
2026-03-01T00:00:00ZFilter sessions created up to this date/time (ISO 8601)
2026-03-11T23:59:59ZIndicates if the request was successful
trueResponse message
SuccessUnauthorized
GET /api/v1/payments HTTP/1.1
Host: api.coincircuit.io
x-api-key: YOUR_API_KEY
Accept: */*
{
"success": true,
"message": "Success",
"data": [
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"reference": "cs_ref_abc123xyz789",
"title": "Payment for invoice 112",
"description": "Payment for invoice 112",
"state": "open",
"type": "checkout",
"amount": "100.00",
"amountPaid": "100.00",
"currency": "NGN",
"settlements": {
"currency": "USDT",
"customerPaid": {
"amount": "29850.00"
},
"gross": {
"amount": "5.00",
"conversionRate": "1.00000000"
},
"fees": {
"processing": {
"amount": "0.05",
"paidBy": "merchant"
},
"gas": {
"amount": "0.05",
"paidBy": "merchant"
}
},
"net": {
"amount": "3.85"
}
},
"payment": {
"status": "pending",
"asset": "USDT",
"chain": "ethereum",
"amount": "10.00",
"amountReceived": "0.00",
"address": "0x742d35Cc6639C0532fF8037C7D6B8b123b2F4a25",
"gasFee": "0.50",
"feePaidBy": "customer",
"conversionRate": "1.00"
},
"url": "https://checkout.coincircuit.io/pay/session-ref-123",
"cancelUrl": "https://example.com/cancel",
"successUrl": "https://example.com/success",
"customer": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"firstName": "John",
"lastName": "Doe",
"email": "customer@example.com",
"phone": "+1234567890",
"telegramId": "123456789",
"metadata": {
"source": "website",
"referrer": "google"
},
"createdAt": "2024-01-15T10:30:00.000Z",
"updatedAt": "2024-01-15T10:30:00.000Z"
},
"metadata": {
"orderId": "ORD-9981"
},
"invoiceId": null,
"refundStatus": null,
"isRefunded": false,
"isUnderpaymentAccepted": false,
"createdAt": "2024-01-15T10:30:00.000Z",
"expiresAt": "2024-01-15T11:30:00.000Z",
"completedAt": null
}
],
"meta": {
"page": 1,
"size": 10,
"total": 42,
"totalPages": 5
}
}Creates a new payment session (payment link) to receive payments. You can set the asset and chain together, set one now and the other later, or leave both unset. A deposit address is created immediately only when the session already has the asset, chain, and customer details.
Your API key (obtain from dashboard)
Session title
Payment for invoice 112Session description
Payment for invoice 112Amount in fiat currency (e.g. 100000.00)
100000.00Fiat currency
NGNPossible values: Cryptocurrency to accept (optional - can be set later)
Blockchain network to accept the crypto on (optional - can be set later)
Additional metadata object
{"orderId":"ORD-9981","purpose":"Payment for invoice 112"}Redirect URL when the customer cancels the payment (must be HTTPS)
https://example.com/cancelRedirect URL on successful payment (must be HTTPS)
https://example.com/successURL to receive webhook notifications for this session (must be HTTPS)
https://example.com/webhookWho pays gas/network fees for this session. If not specified, uses dashboard default settings
customerPossible values: currency this payment settles into. Defaults to your account currency
USDTPossible values: Indicates if the request was successful
trueResponse message
SuccessInvalid input or unsupported asset/blockchain combination
Unauthorized
Internal server error
POST /api/v1/payments HTTP/1.1
Host: api.coincircuit.io
x-api-key: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 412
{
"title": "Payment for invoice 112",
"description": "Payment for invoice 112",
"amount": "1000.00",
"currency": "NGN",
"asset": "USDT",
"chain": "bsc",
"customer": {
"email": "customer@example.com",
"firstName": "John",
"lastName": "Doe"
},
"metadata": {
"orderId": "ORD-123",
"purpose": "Payment for invoice"
},
"webhookUrl": "https://example.com/webhook",
"cancelUrl": "https://example.com/cancel",
"successUrl": "https://example.com/success"
}{
"success": true,
"message": "Success",
"data": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"reference": "cs_ref_abc123xyz789",
"title": "Payment for invoice 112",
"description": "Payment for invoice 112",
"state": "open",
"type": "checkout",
"amount": "100.00",
"amountPaid": "100.00",
"currency": "NGN",
"settlements": {
"currency": "USDT",
"customerPaid": {
"amount": "29850.00"
},
"gross": {
"amount": "5.00",
"conversionRate": "1.00000000"
},
"fees": {
"processing": {
"amount": "0.05",
"paidBy": "merchant"
},
"gas": {
"amount": "0.05",
"paidBy": "merchant"
}
},
"net": {
"amount": "3.85"
}
},
"payment": {
"status": "pending",
"asset": "USDT",
"chain": "ethereum",
"amount": "10.00",
"amountReceived": "0.00",
"address": "0x742d35Cc6639C0532fF8037C7D6B8b123b2F4a25",
"gasFee": "0.50",
"feePaidBy": "customer",
"conversionRate": "1.00"
},
"url": "https://checkout.coincircuit.io/pay/session-ref-123",
"cancelUrl": "https://example.com/cancel",
"successUrl": "https://example.com/success",
"customer": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"firstName": "John",
"lastName": "Doe",
"email": "customer@example.com",
"phone": "+1234567890",
"telegramId": "123456789",
"metadata": {
"source": "website",
"referrer": "google"
},
"createdAt": "2024-01-15T10:30:00.000Z",
"updatedAt": "2024-01-15T10:30:00.000Z"
},
"metadata": {
"orderId": "ORD-9981"
},
"invoiceId": null,
"refundStatus": null,
"isRefunded": false,
"isUnderpaymentAccepted": false,
"createdAt": "2024-01-15T10:30:00.000Z",
"expiresAt": "2024-01-15T11:30:00.000Z",
"completedAt": null
}
}Generates a deposit address for the session. If the session already has an asset or chain assigned, those values cannot be overridden. Any missing asset or chain must be provided before the address can be created. If the session does not already have a customer, include customer details (email, and optionally firstName, lastName, phone). If the session already has a customer, the customer field is ignored.
Payment session reference
Cryptocurrency to accept. Optional when the session already has a fixed asset.
USDTPossible values: Blockchain network. Optional when the session already has a fixed chain.
ethereumPossible values: Indicates if the request was successful
trueResponse message
SuccessInvalid session state, missing required asset/chain context, or unsupported asset/blockchain
Session not found
POST /api/v1/payments/{reference}/address HTTP/1.1
Host: api.coincircuit.io
Content-Type: application/json
Accept: */*
Content-Length: 166
{
"asset": "USDT",
"chain": "ethereum",
"customer": {
"email": "customer@example.com",
"firstName": "John",
"lastName": "Doe",
"phone": "+2348012345678",
"telegramId": "1283761283"
}
}{
"success": true,
"message": "Success",
"data": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"reference": "cs_ref_abc123xyz789",
"title": "Payment for invoice 112",
"description": "Payment for invoice 112",
"state": "open",
"type": "checkout",
"amount": "100.00",
"amountPaid": "100.00",
"currency": "NGN",
"settlements": {
"currency": "USDT",
"customerPaid": {
"amount": "29850.00"
},
"gross": {
"amount": "5.00",
"conversionRate": "1.00000000"
},
"fees": {
"processing": {
"amount": "0.05",
"paidBy": "merchant"
},
"gas": {
"amount": "0.05",
"paidBy": "merchant"
}
},
"net": {
"amount": "3.85"
}
},
"payment": {
"status": "pending",
"asset": "USDT",
"chain": "ethereum",
"amount": "10.00",
"amountReceived": "0.00",
"address": "0x742d35Cc6639C0532fF8037C7D6B8b123b2F4a25",
"gasFee": "0.50",
"feePaidBy": "customer",
"conversionRate": "1.00"
},
"url": "https://checkout.coincircuit.io/pay/session-ref-123",
"cancelUrl": "https://example.com/cancel",
"successUrl": "https://example.com/success",
"customer": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"firstName": "John",
"lastName": "Doe",
"email": "customer@example.com",
"phone": "+1234567890",
"telegramId": "123456789",
"metadata": {
"source": "website",
"referrer": "google"
},
"createdAt": "2024-01-15T10:30:00.000Z",
"updatedAt": "2024-01-15T10:30:00.000Z"
},
"metadata": {
"orderId": "ORD-9981"
},
"invoiceId": null,
"refundStatus": null,
"isRefunded": false,
"isUnderpaymentAccepted": false,
"createdAt": "2024-01-15T10:30:00.000Z",
"expiresAt": "2024-01-15T11:30:00.000Z",
"completedAt": null
}
}Returns the session for the given reference.
Payment session reference
When true, the response includes the transactions array.
Indicates if the request was successful
trueResponse message
SuccessSession not found
GET /api/v1/payments/reference/{reference} HTTP/1.1
Host: api.coincircuit.io
Accept: */*
{
"success": true,
"message": "Success",
"data": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"reference": "cs_ref_abc123xyz789",
"title": "Payment for invoice 112",
"description": "Payment for invoice 112",
"state": "open",
"type": "checkout",
"amount": "100.00",
"amountPaid": "100.00",
"currency": "NGN",
"settlements": {
"currency": "USDT",
"customerPaid": {
"amount": "29850.00"
},
"gross": {
"amount": "5.00",
"conversionRate": "1.00000000"
},
"fees": {
"processing": {
"amount": "0.05",
"paidBy": "merchant"
},
"gas": {
"amount": "0.05",
"paidBy": "merchant"
}
},
"net": {
"amount": "3.85"
}
},
"payment": {
"status": "pending",
"asset": "USDT",
"chain": "ethereum",
"amount": "10.00",
"amountReceived": "0.00",
"address": "0x742d35Cc6639C0532fF8037C7D6B8b123b2F4a25",
"gasFee": "0.50",
"feePaidBy": "customer",
"conversionRate": "1.00"
},
"url": "https://checkout.coincircuit.io/pay/session-ref-123",
"cancelUrl": "https://example.com/cancel",
"successUrl": "https://example.com/success",
"customer": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"firstName": "John",
"lastName": "Doe",
"email": "customer@example.com",
"phone": "+1234567890",
"telegramId": "123456789",
"metadata": {
"source": "website",
"referrer": "google"
},
"createdAt": "2024-01-15T10:30:00.000Z",
"updatedAt": "2024-01-15T10:30:00.000Z"
},
"metadata": {
"orderId": "ORD-9981"
},
"invoiceId": null,
"refundStatus": null,
"isRefunded": false,
"isUnderpaymentAccepted": false,
"createdAt": "2024-01-15T10:30:00.000Z",
"expiresAt": "2024-01-15T11:30:00.000Z",
"completedAt": null
}
}Calculate the required crypto amount for a session based on selected asset and chain without locking the rate.
Amount in fiat currency
100.00Fiat currency for the amount
USDPossible values: Crypto asset to pay with
USDTPossible values: Blockchain network
TRONPossible values: Fee paid by: who pays the network fee (merchant or customer)
Settlement currency (optional)
Session reference
Indicates if the request was successful
trueResponse message
SuccessInvalid input or unsupported asset/blockchain
GET /api/v1/payments/estimate?amount=100.00¤cy=USD&asset=USDT&chain=TRON HTTP/1.1
Host: api.coincircuit.io
Accept: */*
{
"success": true,
"message": "Success",
"data": {
"fiat": {
"amount": "100.00",
"currency": "USD"
},
"crypto": {
"amount": "50.234567",
"asset": "USDT",
"chain": "TRON"
},
"fees": {
"networkFee": "1.200000",
"paidBy": "merchant"
},
"conversionRate": "0.00234"
}
}Last updated
Was this helpful?