Skip to main content
POST
/
pos
/
sessions
curl -X POST https://secureapi.gridlog.io/api/v1/pos/sessions \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "chain": "polygon",
    "token": "USDC",
    "localAmount": "37500.00",
    "localCurrency": "NGN",
    "expirySeconds": 600,
    "label": "Order #12345"
  }'
{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "chain": "polygon",
  "address": "0x1234abcd...",
  "token": "USDC",
  "amountExpected": "25.00",
  "status": "pending",
  "expiresAt": "2025-03-21T10:10:00.000Z",
  "label": "Order #12345"
}
Generates a deposit address and payment session. The customer sends crypto to the returned address to complete the payment.
chain
string
required
Blockchain network (e.g., "polygon", "ethereum", "solana")
token
string
required
Token to accept. One of: "USDC", "USDT"
localAmount
string
required
Amount in local fiat currency (e.g., "37500.00" for NGN)
localCurrency
string
ISO currency code for localAmount (e.g., "NGN", "KES", "GHS")
amount
string
Amount in cryptocurrency. Provide this or localAmount — not both.
expirySeconds
number
Session expiry in seconds (default: 600)
label
string
Optional human-readable label (e.g., "Order #12345")
curl -X POST https://secureapi.gridlog.io/api/v1/pos/sessions \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "chain": "polygon",
    "token": "USDC",
    "localAmount": "37500.00",
    "localCurrency": "NGN",
    "expirySeconds": 600,
    "label": "Order #12345"
  }'
{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "chain": "polygon",
  "address": "0x1234abcd...",
  "token": "USDC",
  "amountExpected": "25.00",
  "status": "pending",
  "expiresAt": "2025-03-21T10:10:00.000Z",
  "label": "Order #12345"
}
id
string
Unique session ID
address
string
Deposit address — display this (or a QR code of it) to the customer
amountExpected
string
Exact crypto amount the customer must send
status
string
Session status: pending | paid | paid_out | expired | cancelled
expiresAt
string
ISO 8601 timestamp when the session expires
Poll Get Session or listen to webhooks to detect when a payment lands.