Skip to main content
GET
/
api
/
v1
/
invoices
{
  "object": "list",
  "data": [
    {
      "id": "<string>",
      "object": "invoice",
      "subscription_id": "<string>",
      "customer": "<string>",
      "amount_due": 123,
      "amount_paid": 123,
      "amount_remaining": 123,
      "currency": "<string>",
      "status": "open",
      "payment_status": "pending",
      "billing_reason": "<string>",
      "period_start": 123,
      "period_end": 123,
      "created": 123,
      "frequency": "<string>",
      "recurring_interval": "day",
      "recurring_interval_count": 123,
      "payment_id": "<string>",
      "paid_at": 123,
      "due_date": 123
    }
  ],
  "has_more": true,
  "url": "<string>"
}

Documentation Index

Fetch the complete documentation index at: https://docs.stablepayfi.ai/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

Bearer API Key, for example Bearer sk_live_xxx.

X-StablePay-Timestamp
string
header
required

Unix timestamp in seconds. Must be within 5 minutes of server time.

X-StablePay-Nonce
string
header
required

Replay-protection nonce, 16-64 characters. Use a fresh UUID per request.

X-StablePay-Signature
string
header
required

Lowercase hex HMAC-SHA256 of {timestamp}.{nonce}.{requestBody} signed with the merchant API Secret. For GET requests, requestBody is an empty string.

Headers

X-StablePay-Timestamp
string
required

Unix timestamp in seconds. Must be within 5 minutes of server time.

X-StablePay-Nonce
string
required

Replay-protection nonce, 16-64 characters. Use a fresh UUID per request.

Required string length: 16 - 64
X-StablePay-Signature
string
required

Lowercase hex HMAC-SHA256 of {timestamp}.{nonce}.{requestBody} signed with the merchant API Secret. For GET requests, requestBody is an empty string.

Query Parameters

subscription_id
string

Filter by subscription ID.

customer
string

Filter by customer ID.

status
enum<string>

Filter by invoice status. Only open, paid, and void are supported. Invoice status. Query values must be lowercase: open, paid, or void.

Available options:
open,
paid,
void
limit
integer
default:10

Number of records to return. Defaults to 10, maximum 100.

Required range: 1 <= x <= 100
starting_after
string

Forward pagination cursor. The current implementation queries invoice_id > starting_after.

Response

Listed successfully.

object
string
Example:

"list"

data
object[]
has_more
boolean

Whether more data may exist. The current implementation checks whether the returned count equals limit.

url
string

Current request URL.

Last modified on April 30, 2026