List invoices

List invoices, newest first, with optional filters.

GET https://api.centerfy.ai/webhooks/inbound/invoices

Headers

HeaderRequiredValueDescription
x-api-keyYesyour sub-account API key (cfy_…)Authenticates the request; or use Authorization: Bearer <key>.

Query parameters

NameTypeRequiredDefaultDescription
limitintegerNo50Page size; minimum 1, maximum 100 (larger values are rejected with 400).
offsetintegerNo0Number of records to skip for paging; minimum 0.
statusstringNo—One of pending, paid, void, refunded.
contact_idstring (uuid)No—Only invoices for this contact.
quote_idstring (uuid)No—Only invoices generated from this quote.

Example

curl -X GET "https://api.centerfy.ai/webhooks/inbound/invoices?limit=50&offset=0" \
  -H "x-api-key: $CENTERFY_API_KEY"
import { CenterfyClient } from "@centerfy/sdk";

const centerfy = new CenterfyClient({ apiKey: process.env.CENTERFY_API_KEY! });

const result = await centerfy.invoices.list({
  "limit": 50,
  "offset": 0
});
console.log(result);
centerfy invoices list '{"limit":50,"offset":0}'

MCP tool: centerfy_invoices_list (see MCP server)

Response

{
  "status": "success",
  "total": 1,
  "limit": 50,
  "offset": 0,
  "has_more": false,
  "invoices": [
    {
      "id": "e1f2a3b4-c5d6-4e7f-8a9b-0c1d2e3f4a5b",
      "invoice_number": "INV-2026-0012",
      "contact_id": "3f1c2a9e-7b4d-4c8a-9e2f-1a2b3c4d5e6f",
      "quote_id": null,
      "amount": 1575,
      "status": "pending",
      "issued_at": "2026-10-06T10:00:00.000Z",
      "due_date": "2026-11-05",
      "paid_at": null,
      "payment_method": null,
      "notes": "Net 30",
      "items": [
        {
          "item": "Website redesign",
          "quantity": 1,
          "amount": 1500
        },
        {
          "item": "Monthly hosting",
          "quantity": 3,
          "amount": 25
        }
      ],
      "payment_url": null,
      "payment_link_expires_at": null,
      "created_at": "2026-10-06T10:00:00.000Z",
      "updated_at": "2026-10-06T10:00:00.000Z"
    }
  ]
}

Errors

  • 400 — if contact_id or quote_id is not a UUID, or status is not an allowed value.

Notes

Amounts are in dollars.

© 2026 Centerfy AI. All rights reserved.