Skip to main content
GET
/
v1
/
invoices
List invoices
curl --request GET \
  --url https://api.gwop.io/v1/invoices \
  --header 'Authorization: Bearer <token>'
{
  "invoices": [
    {
      "id": "904e9f44-a5a3-4e07-94c9-9c425d6bbe64",
      "status": "OPEN",
      "amount_usdc": 1000000,
      "currency": "USDC",
      "expires_at": "2026-02-02T12:00:00.000Z",
      "created_at": "2026-02-02T12:00:00.000Z",
      "description": "<string>",
      "metadata": {},
      "paid_at": "2026-02-02T12:00:00.000Z",
      "tx_signature": "5VERv8NMvzbJMEkV8xnrLkEaWRtSz9CosKDYjCJjBRnbJLgp8uirBgmQpjKhoR4tjF3ZpRzrFmBV6UjKdiSZkQUW"
    }
  ],
  "pagination": {
    "total": 150,
    "limit": 20,
    "offset": 0,
    "has_more": true
  }
}

Authorizations

Authorization
string
header
required

Merchant API key (sk_m_*). Used for invoice management, store configuration, and viewing merchant data.

Authorization: Bearer sk_m_abc123def456...

Query Parameters

limit
integer
default:20

Maximum number of items to return per page

Required range: 1 <= x <= 100
Example:

20

offset
integer
default:0

Number of items to skip (for pagination)

Required range: x >= 0
Example:

0

status
enum<string>

Filter by invoice status Invoice lifecycle status.

OPEN ──[pay]──> PAYING ──[confirm]──> PAID
│ ▲
│ │
└────[fails]─────┘ (rolls back to OPEN)

OPEN ──[cancel]──> CANCELED
OPEN ──[expires]──> EXPIRED
Available options:
OPEN,
PAYING,
PAID,
EXPIRED,
CANCELED

Response

Invoice list

invoices
object[]
required
pagination
object
required

Standard pagination object included in list responses.

Example pagination flow:

Page 1: GET /v1/invoices?limit=20&offset=0
→ pagination: { total: 150, limit: 20, offset: 0, has_more: true }

Page 2: GET /v1/invoices?limit=20&offset=20
→ pagination: { total: 150, limit: 20, offset: 20, has_more: true }

Page 8: GET /v1/invoices?limit=20&offset=140
→ pagination: { total: 150, limit: 20, offset: 140, has_more: false }