Skip to main content
GET
/
api
/
public
/
billing
/
invoices
/
my
{
  "CurrentPage": 123,
  "CurrentPageSize": 123,
  "TotalItems": 123,
  "TotalPages": 123,
  "HasNextPage": true,
  "HasPreviousPage": true,
  "Id": 123,
  "UniqueId": "<string>",
  "InvoiceNumber": "<string>",
  "Paid": true,
  "PaidOn": "<string>",
  "DueDate": "<string>",
  "Draft": true,
  "CreditNote": true,
  "TotalAmount": 123,
  "DueAmount": 123,
  "TotalFormated": "<string>",
  "Currency": {},
  "BusinessWebAddress": "<string>",
  "CreatedOn": "<string>",
  "401 Unauthorized": {}
}

List Invoices

Returns a paginated list of invoices for the currently authenticated customer. Supports filtering by payment status and whether to include credit notes.

Authentication

This endpoint requires an authenticated customer session.

Query Parameters

paid
boolean
When true, returns only paid invoices. When false, returns only unpaid invoices. Omit to return all invoices.
creditNotes
boolean
When true, includes credit notes in the result set.
_shape
string
Comma-separated list of field paths to include in the response. When provided, only the specified fields are returned — useful for reducing payload size. Supports nested paths using dot notation. Example: _shape=Records.InvoiceNumber,Records.TotalAmount,Records.Paid,TotalItems.

Response

Returns an ApiListResult<InvoicePreview> object.

Pagination

CurrentPage
number
The current page number.
CurrentPageSize
number
Number of records in the current page.
TotalItems
number
Total number of invoices matching the query.
TotalPages
number
Total number of available pages.
HasNextPage
boolean
Whether there is a next page.
HasPreviousPage
boolean
Whether there is a previous page.

Records

Each item in Records follows the InvoicePreview shape. Key fields:
Id
number
Unique identifier of the invoice.
UniqueId
string
Globally unique identifier of the invoice.
InvoiceNumber
string
Human-readable invoice number as shown to the customer.
Paid
boolean
Whether the invoice has been fully paid.
PaidOn
string
ISO 8601 datetime when the invoice was paid (if applicable).
DueDate
string
ISO 8601 date the invoice is due.
Draft
boolean
Whether the invoice is still a draft.
CreditNote
boolean
Whether this document is a credit note rather than a standard invoice.
TotalAmount
number
Grand total of the invoice in the invoice currency.
DueAmount
number
Amount still outstanding.
TotalFormated
string
Pre-formatted total string (e.g. "$199.00").
Currency
object
Currency object with fields: Code, Name, Format.
BusinessWebAddress
string
Web address of the location that issued the invoice. Used to construct PDF download links.
CreatedOn
string
ISO 8601 datetime when the invoice was created (local time).

Example Response

{
  "Records": [
    {
      "Id": 12345,
      "UniqueId": "e9a3a3b8-8d3e-4b54-9f2d-0c82b2a8b9a1",
      "InvoiceNumber": "INV-2025-000123",
      "Paid": false,
      "PaidOn": null,
      "DueDate": "2025-10-01",
      "Draft": false,
      "CreditNote": false,
      "TotalAmount": 199.0,
      "DueAmount": 199.0,
      "TotalFormated": "$199.00",
      "Currency": { "Code": "USD", "Name": "US Dollar", "Format": "$0,0.00" },
      "BusinessWebAddress": "myspace.spaces.nexudus.com",
      "CreatedOn": "2025-09-28T10:15:00"
    }
  ],
  "CurrentPage": 1,
  "CurrentPageSize": 1,
  "TotalItems": 1,
  "TotalPages": 1,
  "HasNextPage": false,
  "HasPreviousPage": false
}

Usage in Portal

This endpoint is used in two places:
  1. My Invoices section – lists all invoices grouped by paid/unpaid status.
    • File: src/views/user/activity/invoices/useInvoicesData.tsx
  2. Onboarding action panel – surfaces unpaid invoices to prompt the member to complete payment.
    • File: src/views/user/dashboards/personal/components/OnBoarding/components/UnpaidInvoicesActionPanel.tsx

Typical integration pattern

// From src/api/endpoints.ts
// endpoints.billing.invoices.list = (paid?: boolean, creditNotes?: boolean) => ({
//   url: `/api/public/billing/invoices/my?paid=${paid}&creditNotes=${creditNotes}`,
//   type: null as unknown as ApiListResult<InvoicePreview>,
// })

// Usage in React
const endpoint = endpoints.billing.invoices.list(false, false)
const { resource: invoices } = useData<typeof endpoint.type>(httpClient, endpoint.url)
  • GET /api/public/billing/invoices/{invoiceId} – Retrieve a single invoice by ID
  • GET /api/public/billing/invoices/{invoiceId}/pdf – Download invoice as PDF

Error Responses

401 Unauthorized
error
The current user is not authenticated.