Object Queries

Retrieve an invoice

Retrieve the details of a specific Invoice object.

get/object-query/invoices/{key}

Path parameters

keystring required

Object ID or Number.

Query parameters

pageSizeinteger

The maximum number of results to return in a single page. If the specified pageSize is less than 1 or greater than 99, Zuora will return a 400 error.

cursorstring

A cursor for use in pagination. A cursor defines the starting place in a list. For instance, if you make a list request and receive 100 objects, ending with next_page=W3sib3JkZXJ=, your subsequent call can include cursor=W3sib3JkZXJ= in order to fetch the next page of the list.

sort[]string[]

A case-insensitive query parameter that specifies the sort order of the list, which can be either ascending (e.g. accountnumber.ASC) or descending (e.g. accountnumber.DESC). You cannot sort on properties in arrays. If the array-type properties are specified for the sort[] parameter, they are ignored.

expand[]string[]

Allows you to expand responses by including related object information in a single call.

filter[]string[]

A case-insensitive filter on the list.

fields[]string[]

A case-insensitive query parameter that allows you to specify which fields are returned in the response.

includeNullFieldsboolean

Specifies whether to include fields with the null value in the response.

  • If set to true, all fields will be returned in the response, including those with the null value.
  • If set to false, only fields with non-null values will be returned.

Headers

Idempotency-Keystring

Specify a unique idempotency key if you want to perform an idempotent POST or PATCH request. Do not use this header in other request types.

With this header specified, the Zuora server can identify subsequent retries of the same request using this value, which prevents the same operation from being performed multiple times by accident.

Accept-Encodingstring

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-Encodingstring

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-Idstring

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-Idsstring

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-Idsstring

Comma separated IDs. If you have <a href="https://docs.zuora.com/en/zuora-platform/organization-and-entity-management/multi-org/overview-of-multi-org" target="_blank">Zuora Multi-Org</a> 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-Versionstring

The minor API version.

For a list of available minor versions, see API upgrades.

Response

OK

idstring

The unique identifier of the invoice.

createdByIdstring

The unique identifier of the user who created the invoice.

createdDatestring date-time

The time that the invoice gets created in the system, in the YYYY-MM-DD HH:MM:SS format.

updatedByIdstring

The unique identifier of the user who last updated the invoice.

updatedDatestring date-time

The time that the invoice gets updated in the system, in the YYYY-MM-DD HH:MM:SS format.

accountIdstring

The ID of the customer account associated with the invoice.

adjustmentAmountnumber double

The amount of the invoice adjustments associated with the invoice.

amountnumber double

The total amount of the invoice.

amountWithoutTaxnumber double

The invoice amount excluding tax.

autoPayboolean

Whether invoices are automatically picked up for processing in the corresponding payment run.

balancenumber double

The remaining balance of the invoice after all payments, adjustments, and refunds are applied.

billToContactIdstring

The ID of the bill-to contact associated with the invoice.

billToContactSnapshotIdstring

The ID of the bill-to contact snapshot associated with the invoice.

commentsstring

Comments about the invoice.

creditBalanceAdjustmentAmountnumber double

The currency amount of the adjustment applied to the customer's credit balance.

Note: This field is only available if you have the Credit Balance feature enabled and the Invoice Settlement feature disabled.

creditMemoAmountnumber double

The currency amount of all credit memos applied to this invoice.

Note: This field is only available if you have Invoice Settlement enabled. The Invoice Settlement feature is generally available as of Zuora Billing Release 296 (March 2021). This feature includes Unapplied Payments, Credit and Debit Memo, and Invoice Item Settlement. If you want to enable Invoice Settlement, see Invoice Settlement Enablement and Checklist Guide for more information.

currencystring nullable

The currency of the invoice.

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 <a href="https://docs.zuora.com?resourceId=billing-multiple-currencies-overview" target="_blank">Multiple Currency</a>.

dueDatestring date

The date by which the payment for this invoice is due, in yyyy-mm-dd format.

includesOneTimeboolean

Specifies whether the invoice includes one-time charges.

includesRecurringboolean

Specifies whether the invoice includes recurring charges.

includesUsageboolean

Specifies whether the invoice includes usage charges.

invoiceDatestring date

The date that appears on the invoice being created.

invoiceNumberstring

The unique identification number of the invoice.

lastEmailSentDatestring

The date when the invoice was last emailed.

organizationIdstring

ID of the organization this object belongs to.

paymentAmountnumber double

The amount of payments applied to the invoice.

postedBystring

The user ID of the person who moved the invoice to Posted status.

postedDatestring date-time

The date when the invoice was posted.

refundAmountnumber double

Specifies the amount of a refund that was applied against an earlier payment on the invoice.

sequenceSetIdstring nullable

The ID of the sequence set associated with the invoice.

communicationProfileIdstring nullable

The ID of the communication profile associated with the invoice.

shipToContactIdstring

The ID of the ship-to contact associated with the invoice.

shipToContactSnapshotIdstring

The ID of the ship-to contact snapshot associated with the invoice.

soldToContactIdstring

The ID of the sold-to contact associated with the invoice.

soldToContactSnapshotIdstring

The ID of the sold-to contact snapshot associated with the invoice.

source'BillRun' | 'API' | 'ApiSubscribe' | 'ApiAmend'

The source of the invoice.

sourceIdstring

The ID of the invoice source. If an invoice is generated from a bill run, the value is the number of the corresponding bill run.Otherwise, the value is null.

reversedboolean

Whether the invoice is reversed.

sourceType'Subscription' | 'Standalone' | 'Order' | 'Consolidation'

The type of the invoice source.

status'Draft' | 'Posted' | 'Split'

The status of the invoice.

Note:

  • The Split status is applicable only when you use <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/invoice-management/split-invoices/split-invoices-overview" target="_blank">Split Invoice feature</a>.

  • When an invoice is split, its status changes from Draft to Split, and the newly created invoices retain a reference to the original invoice.

targetDatestring date

This date is used to determine which charges are to be billed. All charges that are to be billed on this date or prior will be included in this bill run.

taxAmountnumber double

The amount of taxation.

taxExemptAmountnumber double

The calculated tax amount excluded due to the exemption.

taxMessagestring nullable

The message that the tax engine return if it calculates the taxes of this invoice fails.

taxStatus'Complete' | 'Error' | 'UnknownError' | 'DuplicateDoc' | 'InvalidRequest' | 'InvalidResponse' | 'TaxEngineError' | 'ConcurrentModify' | 'InternalServerError' | 'TaxCodeTemplateError' | 'Voided'

The status that the tax engine return after it calculates the taxes of this invoice. Also, the Voided status indicates that the tax transaction is successfully canceled on the tax vendor's side. If a tax transaction was successfully committed to the third-party tax engine but the invoice failed to post, Zuora automatically detects the issue and voids the tax transaction on the vendor's side.

templateIdstring

The ID of the invoice template.

  • If you have the <a href="https://docs.zuora.com?resourceId=billing-attributes-for-flexible-billing" target="_blank">Flexible Billing Attributes</a> feature enabled, the value of this field depends on the configuration of the invoice template.
    • If you specify an invoice template at the subscription level, the value of this field is automatically populated from the corresponding subscription.
    • If you do not specify any invoice template at the subscription level, the value of this field is automatically populated from the corresponding account.
  • If you have the Flexible Billing Attributes feature disabled, the value of this field is null.
transferredToAccounting'Processing' | 'Error' | 'Ignore' | 'Yes' | 'No'

Whether the invoice was transferred to an external accounting system.

eInvoiceStatus'Processing' | 'RetrieveTimeOut' | 'Generated' | 'Success' | 'Failed' | 'ConditionalSuccess' | 'ApprovedByAuthority' | 'Rejected'

It could be Processing, RetrieveTimeOut, Generated, Success, ConditionalSuccess, ApprovedByAuthority, Failed, and Rejected. If it’s Failed, it will have an error code and message. If it’s Generated or Success, both error code and message are empty, and eInvoiceFileId stores the file id of e-invoice.

eInvoiceFileIdstring

The ID of the e-invoice file.

eInvoiceErrorCodestring

The error code when status is Failed. This code can either be a Zuora-generated error code or one returned by a third-party e-invoice vendor.

eInvoiceErrorMessagestring

The error message when status is "Failed". This message can either be a Zuora-generated error code or one returned by a third-party e-invoice vendor.

paymentLinkstring

A link to the Payment Link page where the customer can pay the invoice.

The link is generated only if the invoice is posted after enabling the Payment Link feature on your tenant.

Note: The Payment Link feature is in the Early Adopter phase. You can enable the Payment Link feature through a self-service configuration in the Manage Features setting for Zuora Payments.

paymentTermstring

The payment term associated with the invoice. The payment term determines the due dates of invoices.

Example response

{
  "paymentTerm": "Net 30"
}

Changes

No recorded changes to this endpoint across all 4 revisions of this API.