An invoice represents a billed amount a merchant sends to a customer for payment.
A normal collection is an amount received immediately at the point of sale. A direct transaction captures a customer's card or bank details right away.
An invoice works differently. It lets the merchant establish the amount owed first. The customer can then act on it separately. The customer reviews an itemized total. Then the customer pays by card or ACH, on their own schedule.
The Invoices endpoints support creating, editing, publishing, and collecting payment on an invoice. A draft invoice can be updated or deleted, but a published invoice cannot be deleted. Once published, an invoice can be submitted for card or ACH payment, canceled, or marked as paid. Additional endpoints send email or SMS notifications, calculate totals, and download a PDF copy.
For more information about invoices, see Invoices.
The following invoice endpoints are available.
| Endpoint | Description |
|---|---|
| GET /pay-int-api/invoices | Lists invoices for the current merchant, filtered by the specified query parameters. |
| POST /pay-int-api/invoices | Creates a new invoice in Draft status. |
| GET /pay-int-api/invoices/{invoiceId} | Retrieves a single invoice's details. |
| PUT /pay-int-api/invoices/{invoiceId} | Updates a specified invoice. |
| DELETE /pay-int-api/invoices/{invoiceId} | Deletes an invoice; published invoices cannot be deleted. |
| POST /pay-int-api/invoices/publish | Publishes an invoice, sending it to the customer. |
| POST /pay-int-api/invoices/{invoiceId}/submit | Submits an invoice for card payment processing. |
| POST /pay-int-api/invoices/{invoiceId}/ach/submit | Submits an invoice for ACH payment processing. |
| PUT /pay-int-api/invoices/{invoiceId}/cancel | Cancels a published, unpaid invoice. |
| PUT /pay-int-api/invoices/{invoiceId}/mark-as-paid | Marks a published, unpaid invoice as paid. |
| GET /pay-int-api/invoices/{invoiceId}/calculations | Retrieves the calculated totals for an invoice. |
| GET /pay-int-api/invoices/{invoiceId}/download-pdf | Downloads a PDF copy of the invoice. |
| POST /pay-int-api/invoices/{invoiceId}/send-email-notification | Sends the invoice to the customer by email. |
| POST /pay-int-api/invoices/{invoiceId}/send-published-sms-notification | Sends the invoice to the customer by SMS. |
GET {{baseURL}}/pay-int-api/invoices
This endpoint retrieves a paginated list of invoices belonging to the current merchant.
Results can be filtered by date range, status, or a search string. Filterable dates include when the invoice was issued, when it's due, and when it was paid. If no filters are specified, every invoice for the merchant is returned. The response includes pagination details along with each invoice's summary information.
The following is an example request. This example filters for Published invoices (status=2), limits the results to 10 per page, and searches for "Peppared", part of the company name "Peppared Street Cafe".
GET /pay-int-api/invoices?status=2&pageSize=10&search=Peppared HTTP/1.1
Authorization: Bearer {{accessToken}}
x-api-version: 1.0See Also:
To create an invoice, see POST /pay-int-api/invoices.
To retrieve an invoice by ID, see GET /pay-int-api/invoices/{invoiceId}.
To update an invoice, see PUT /pay-int-api/invoices/{invoiceId}.
To delete an invoice, see DELETE /pay-int-api/invoices/{invoiceId}.
Specifies the page number of the returned search results.
A page is considered each set of the pageSize value.
The maximum page value is the pageSize divided by the total count rounded up. The count is zero-based. For example, if pageSize is 50 and the total is 130, there are three pages. The maximum page value is 2.
Values above the maximum page value will complete successfully but not return any items.
Example: 0
Specifies the number of items for each page of the returned search results.
A page is considered each set of the pageSize value.
The maximum page value is the pageSize divided by the total count rounded up. The count is zero-based. For example, if pageSize is 50 and the total is 130, there are three pages. The maximum page value is 2.
Example: 50
Specifies the start date-time (in an ISO 8601 date-time UTC format) the invoice was issued.
The fields issueDateFrom and issueDateTo can be used together to form an inclusive date-time range.
Examples:
2026-02
2026-02-19
2026-02-19T20:24:52.934Z
Example: 2026-02-19T20:24:52.934Z
Specifies the end date-time (in an ISO 8601 date-time UTC format) the invoice was issued.
The fields issueDateFrom and issueDateTo can be used together to form an inclusive date-time range.
Examples:
2026-02
2026-02-21
2026-02-21T20:24:52.934Z
Example: 2026-03-19T20:24:52.934Z
Specifies the start date-time (in an ISO 8601 date-time UTC format) the invoice is due.
The fields dueDateFrom and dueDateTo can be used together to form an inclusive date-time range.
Examples:
2026-02
2026-02-19
2026-02-19T20:24:52.934Z
Example: 2026-03-19T20:24:52.934Z
Specifies the end date-time (in an ISO 8601 date-time UTC format) the invoice is due.
The fields dueDateFrom and dueDateTo can be used together to form an inclusive date-time range.
Examples:
2026-02
2026-02-21
2026-02-21T20:24:52.934Z
Example: 2026-02-21T20:24:52.934Z
Specifies the start date-time (in an ISO 8601 date-time UTC format) the invoice was paid.
The fields paymentDateFrom and paymentDateTo can be used together to form an inclusive date-time range.
Examples:
2026-02
2026-02-19
2026-02-19T20:24:52.934Z
Example: 2026-03-19T20:24:52.934Z
Specifies the end date-time (in an ISO 8601 date-time UTC format) the payment was paid.
The fields paymentDateFrom and paymentDateTo can be used together to form an inclusive date-time range.
Examples:
2026-02
2026-02-21
2026-02-21T20:24:52.934Z
Example: 2026-02-21T20:24:52.934Z
- Mock serverhttps://developer.flute.com/_mock/api-reference/pay-int-api/invoices
- Sandbox environmenthttps://sandbox.api.flute.com/pay-int-api/invoices
- Production environmenthttps://api.flute.com/pay-int-api/invoices
curl -i -X GET \
'https://developer.flute.com/_mock/api-reference/pay-int-api/invoices?page=0&pageSize=15&asc=false&orderBy=string&search=Peppared&issueDateFrom=2026-02-19T20%3A24%3A52.934Z&issueDateTo=2026-03-19T20%3A24%3A52.934Z&dueDateFrom=2026-03-19T20%3A24%3A52.934Z&dueDateTo=2026-02-21T20%3A24%3A52.934Z&paymentDateFrom=2026-03-19T20%3A24%3A52.934Z&paymentDateTo=2026-02-21T20%3A24%3A52.934Z&status=2' \
-H 'Authorization: Bearer <YOUR_JWT_HERE>' \
-H 'x-api-version: 1.0'{ "items": [ { "id": "f01339ec-8184-48c7-b58d-0780d6499ef4", "number": "INV-00042", "customerName": "Alexandro Peppared", "issueDate": "2026-02-19T20:24:52.934Z", "dueDate": "2026-02-19T20:24:52.934Z", "paymentDate": "2026-02-19T20:24:52.934Z", "totalAmount": 3219.45, "status": 2 } ], "total": 5 }