# List billing documents for an account Retrieves the information about all billing documents associated with a specified account. The billing documents contain invoices, credit memos, and debit memos. To retrieve information about credit memos and debit memos, you must have the Invoice Settlement feature enabled. You can use query parameters to restrict the data returned in the response. Examples: - /billing-documents?accountId=4028905f5e4feb38015e50af9aa002d1&sort=+documentDate - /billing-documents?accountId=4028905f5e4feb38015e50af9aa002d1&status=Posted - /billing-documents?accountNumber=A00000001&sort=+documentDate - /billing-documents?accountNumber=A00000001&status=Posted Endpoint: GET /v1/billing-documents Version: 2026-02-20 Security: bearerAuth ## Header parameters: - `Accept-Encoding` (string) Include the Accept-Encoding: gzip header to compress responses as a gzipped file. It can significantly reduce the bandwidth required for a response. If specified, Zuora automatically compresses responses that contain over 1000 bytes of data, and the response contains a Content-Encoding header with the compression algorithm so that your client can decompress it. - `Content-Encoding` (string) Include the Content-Encoding: gzip header to compress a request. With this header specified, you should upload a gzipped file for the request payload instead of sending the JSON payload. - `Zuora-Track-Id` (string) A custom identifier for tracing the API call. If you set a value for this header, Zuora returns the same value in the response headers. This header enables you to associate your system process identifiers with Zuora API calls, to assist with troubleshooting in the event of an issue. The value of this field must use the US-ASCII character set and must not include any of the following characters: colon (:), semicolon (;), double quote ("), and quote ('). - `Zuora-Entity-Ids` (string) An entity ID. If you have Zuora Multi-entity enabled and the OAuth token is valid for more than one entity, you must use this header to specify which entity to perform the operation in. If the OAuth token is only valid for a single entity, or you do not have Zuora Multi-entity enabled, you should not set this header. - `Zuora-Org-Ids` (string) Comma separated IDs. If you have Zuora Multi-Org enabled, you can use this header to specify which orgs to perform the operation in. If you do not have Zuora Multi-Org enabled, you should not set this header. The IDs must be a sub-set of the user's accessible orgs. If you specify an org that the user does not have access to, the operation fails. This header is important in Multi-Org (MO) setups because it defines the organization context under which the API should operate—mainly used for read access or data visibility filtering. If the header is not set, the operation is performed in scope of the user's accessible orgs. - `Zuora-Version` (string) The minor API version. For a list of available minor versions, see API upgrades. ## Query parameters: - `page` (integer) The index number of the page that you want to retrieve. This parameter is dependent on pageSize. You must set pageSize before specifying page. For example, if you set pageSize to 20 and page to 2, the 21st to 40th records are returned in the response. - `pageSize` (integer) The number of records returned per page in the response. - `accountId` (string) The ID of the customer account that the billing documents are associated with. Note: When retrieving information about all billing documents associated with an account, you must specify either accountId or accountNumber in the query parameters. - `accountNumber` (string) The number of the customer account that the billing documents are associated with. Note: When retrieving information about all billing documents associated with an account, you must specify either accountId or accountNumber in the query parameters. - `documentDate` (string) The date of the billing document. It represents the invoice date for invoices, credit memo date for credit memos, and debit memo date for debit memos. - `status` (string) The status of the billing document. Enum: "Draft", "Posted", "Canceled", "Error" - `sort` (string) This parameter restricts the order of the data returned in the response. You can use this parameter to supply a dimension you want to sort on. If you do not specify any sortable field, the response data is sorted by the documentDate field in descending order. A sortable field uses the following form: operator field_name You can use at most two sortable fields in one URL path. Use a comma to separate sortable fields. For example: operator field_name, operator field_name operator is used to mark the order of sequencing. The operator is optional. If you only specify the sortable field without any operator, the response data is sorted in descending order by this field. - The - operator indicates an ascending order. - The + operator indicates a descending order. field_name indicates the name of a sortable field. The supported sortable fields of this operation are as below: - documentDate - documentType Examples: - /billing-documents?accountId=4028905f5e4feb38015e50af9aa002d1 &sort=+documentDate,-documentType - /billing-documents?accountId=4028905f5e4feb38015e50af9aa002d1 &status=Posted&sort=+documentDate&page=2&pageSize=15 ## Response 200 fields (application/json): - `documents` (array) Container for billing documents. - `documents.accountId` (string) The ID of the customer account associated with the billing document. - `documents.amount` (number) The total amount of the billing document. - `documents.balance` (number) The balance of the billing document. - `documents.documentDate` (string) The date of the billing document. The date can be the invoice date for invoices, credit memo date for credit memos, or debit memo date for debit memos. - `documents.documentNumber` (string) The number of the billing document. - `documents.documentType` (string) The type of the billing document. Enum: "Invoice", "CreditMemo", "DebitMemo" - `documents.id` (string) The ID of the billing document. - `documents.status` (string) The current status of the billing document. Enum: "Draft", "Posted", "Canceled", "Error" - `documents.currency` (string,null) The currency of the billing document. Note: By default, the currency on a billing document matches the default currency set on the associated account. However, Zuora now offers a Multiple Currencies feature to support different currencies for billing documents, allowing flexibility beyond the account-level currency. For more information, see Multiple Currency. - `nextPage` (string) URL to retrieve the next page of the response if it exists; otherwise absent. - `success` (boolean) Returns true if the request was processed successfully. ## Response 500 fields (application/json): - `reasons` (array) Example: [{"code":"ObjectNotFound","message":"Notification definition with id 6e569e1e05f040eda51a927b140c0ac1 does not exist"}] - `reasons.code` (string) The error code of response. - `reasons.message` (string) The detail information of the error response ## Response 4XX fields (application/json): - `processId` (string) The ID of the process that handles the operation. - `reasons` (array) The container of the error code and message. This field is available only if the success field is false. - `reasons.code` (string) The error code of response. - `reasons.message` (string) The detail information of the error response - `requestId` (string) Unique identifier of the request. - `success` (boolean) Indicates whether the call succeeded.