Checkouts
A checkout is a payment link you send to a customer. Once paid, a checkout.paid webhook is fired.
Object
json
{
"id": "uuid",
"title": "Order #1234",
"description": "Premium plan — 1 year",
"amount": 10000000,
"currency": "USDC",
"method": "crypto",
"status": "active",
"hosted_url": "https://pay.dpt.com/c/abc123",
"expires_at": "2026-04-01T00:00:00Z",
"created_at": "2026-03-16T10:00:00Z"
}Status values: active | paid | expired | cancelled
Create Checkout
http
POST /v1/checkoutsBody
| Field | Type | Required | Description |
|---|---|---|---|
title | string | ✓ | Short label shown on the payment page |
description | string | Extended description | |
amount | integer | Amount in smallest unit. Omit for open-amount checkouts | |
currency | string | USDC, USDT, USD, etc. Default: USDC | |
method | string | crypto or fiat. Default: crypto | |
customer_id | uuid | Attach an existing customer | |
customer_name | string | Create/attach customer inline | |
customer_email | string | ||
customer_country | string | ISO 3166-1 alpha-2 (e.g. US) |
Example
bash
curl -X POST https://api-test.dpt.xyz/v1/checkouts \
-H "Authorization: Bearer dptb_..." \
-H "Content-Type: application/json" \
-d '{
"title": "Order #1234",
"amount": 50000000,
"currency": "USDC",
"customer_email": "alice@example.com"
}'Response 200
Returns the created Checkout object.
List Checkouts
http
GET /v1/checkoutsReturns an array of checkout objects ordered by creation date (newest first).
Get Checkout
http
GET /v1/checkouts/{id}Cancel Checkout
http
DELETE /v1/checkouts/{id}Cancels an active checkout. Returns 204 No Content.
Refund Checkout
http
POST /v1/checkouts/{id}/refundBody
| Field | Type | Required | Description |
|---|---|---|---|
amount | integer | Partial refund amount. Omit to refund in full | |
reason | string | Optional reason memo |
Returns 204 No Content.
