Skip to main content

InvoiceItemAdjustment

Zuora

InvoiceItemAdjustment

If you have the Invoice Settlement feature enabled, this object is deprecated and only available for backward compatibility. 

An invoice item adjustment modifies a specific line item invoice. You use an invoice item adjustment to change a line item's details, such as its taxes or discounts. Adjustments are automatically tied to the accounting code and revenue recognition code that are associated with the item's charge.

These are the characteristics of an invoice item adjustment:

  • Always for a charge in an invoice
  • Tied to all accounting and revenue recognition information associated with the charge
  • Only one invoice item adjustment to one charge
  • Named with the prefix, IILA-

Use the InvoiceItemAdjustment object to apply an adjustment to an InvoiceItem object in an Invoice object.

Supported calls

You can use this object with the following calls:

Field Descriptions

All field names are case sensitive. Check enumerated values in descriptions to confirm capitalization and spacing. See Field Types for additional information.

Name

Required to Create?

Allowed Operations

Description

AccountId

optional

Query
Filter

The ID of the account that owns the invoice.

Type: zns:ID

Version notes: --

Values: inherited from Account.ID for the invoice owner

AccountingCode

optional

Create
Query
Filter

The accounting code for the invoice item. Accounting codes group transactions that contain similar accounting attributes.

Type: string

Character limit: 100

Version notes: --

Values: inherited from InvoiceItem.AccountingCode

AdjustmentDate

required

Create
Query
Filter

The date when the invoice item adjustment is applied. This date must be the same as the invoice's date or later.

Type

  • date: Supported as of WSDL version 69+
  • dateTime: Supported through WSDL version 68

Character limit: 29

Version notes: --

Values: a valid date and time value

AdjustmentNumber

optional

Create
Query
Filter

A unique string to identify an individual invoice item adjustment.

Type: string

Character limit: 255

Version notes: --

Values: automatically generated

Amount

required

Create
Query
Filter

The amount of the invoice item adjustment. The value of Amount must be positive. Use the required parameter Type to either credit or charge (debit) this amount on the invoice. 

Type: decimal (currency)

Character limit: 16

Version notes: --

Values: a valid currency amount

CancelledById

optional

Query
Filter

The ID of the Zuora user who canceled the invoice item adjustment. Zuora generates this read-only field only if the adjustment is canceled.

Type: zns:ID

Character limit: 32

Version notes: --

Values: automatically generated

CancelledDate

optional

Query
Filter

The date when the invoice item adjustment is canceled. Zuora generates this read-only field if this adjustment is canceled.

Type: dateTime

Character limit: 29

Version notes: --

Values: automatically generated

Comment

optional

Create
Query
Filter

Use this field to record comments about the invoice item adjustment.

Type: string

Character limit: 255

Version notes: --

Values: a string of 255 characters or fewer

CreatedById

optional

Create
Query
Filter

The user ID of the person who created the invoice item.

Type: zns:ID

Character limit: 32

Version notes: WSDL 20.0+

Values: automatically generated

CreatedDate

optional

Query
Filter

The date the invoice item was created.

Type: dateTime

Character limit: 29

Version notes: WSDL 20.0+

Values: automatically generated

CustomerName optional

Query
Filter

The name of the account that owns the associated invoice.

Type: string
Character limit: 50
Version notes: --
Values: inherited from Account.Name

Note: This value changes if Account.Name is updated. The values of UpdatedById and UpdatedDate for the InvoiceItemAdjustment do not change when Account.Name is updated.

CustomerNumber optional

Query
Filter

The unique account number of the customer's account.

Type: string
Character limit: 70
Version notes: --
Values: inherited from Account.AccountNumber

Note: This value changes if Account.AccountNumber is updated. The values of UpdatedById and UpdatedDate for the InvoiceItemAdjustment do not change when Account.AccountNumber is updated.

DeferredRevenueAccount

optional

Create
Query
Filter

Records the deferred accounting code in the finance system.

Type: string

Character limit: 100

Version notes: WSDL 63.0+

Values: If this field is not passed in, a value from InvoiceItem will be used.

This feature is in Limited Availability. If you want to have access to the feature, submit a request at Zuora Global Support

ExcludeItemBillingFromRevenueAccounting

optional

Create
Query
Update

Indicates whether the billing item is to be excluded from revenue accounting.

Type: boolean

Character limit: 100

Version notes: WSDL 117.0+

Values: automatically generated from one of the following: True, False (default)

Note: This field is only available if you have the Billing - Revenue Integration feature enabled.

Id

optional

Query
Filter

The ID of this object. Upon creation, the ID for this object is InvoiceItemAdjustmentId.

Type: zns:ID

Character limit: 32

Version notes: --

Values: automatically generated

InvoiceId

required

Create
Query
Filter

The ID of the invoice associated with the adjustment. The adjustment invoice item is in this invoice. This field is optional if you specify a value for the InvoiceNumber field.

Type: zns:ID

Character limit: 3

Version notes: --

Values: a valid invoice ID

InvoiceItemName

optional

Query
Filter

The name of the invoice item's charge. This field is required in query() calls, but is inherited in other calls.

Type: string

Character limit: 255

Version notes: --

Values: inherited from InvoiceItem.ChargeName

InvoiceNumber

required

Create
Query
Filter

The unique identification number for the invoice that contains the invoice item. This field is optional if you specify a value for the InvoiceId field.

Type: string

Character limit: 32

Version notes: --

Valuesa valid invoice number

ReasonCode

optional

Create
Query
Update
Filter

A code identifying the reason for the transaction. Must be an existing reason code or empty. If you do not specify a value, Zuora uses the default reason code.

Type: string

Character limit: 32

Version notes: WSDL 47.0+

Values: a valid reason code

RecognizedRevenueAccount

optional

Create
Query
Filter

Records the recognized accounting code in the finance system.

Type: string

Character limit: 100

Version notes: WSDL 63.0+

Values: If this field is not passed in, a value from InvoiceItem will be used.

This feature is in Limited Availability. If you want to have access to the feature, submit a request at Zuora Global Support

ReferenceId

optional

Create
Query
Filter

A code to reference an object external to Zuora. For example, you can use this field to reference a case number in an external system.

Type: string

Character limit: 60

Version notes: --

Values: a string of 60 characters or fewer

ServiceEndDate

optional

Query
Filter

The end date of the service period associated with the invoice item. Service ends one second before the date in this value. This field is required in query() calls.

Type

  • date: Supported as of WSDL version 69+
  • dateTime: Supported through WSDL version 68

Character limit: 29

Version notes: --

Values: a valid date

ServiceStartDate

optional

Query
Filter

The start date of the service period associated with the invoice item. Service ends one second before the date in this value. This field is required in query() calls.

Type

  • date: Supported as of WSDL version 69+
  • dateTime: Supported through WSDL version 68

Character limit: 29

Version notes: --

Values: a valid date

SourceId

required

Create
Query
Filter

The ID of the item specified in the SourceType field.

Type: zns:ID

Character limit: 32

Version notes: --

Values: a valid invoice item ID or taxation item ID

SourceType

required

Create
Query
Filter

The type of adjustment.

Type: string (enum)

Character limit: 13

Version notes: --

Values: InvoiceDetail, Tax

Status

optional

Query
Update
Filter

The status of the invoice item adjustment. This field is required in query() calls, but is automatically generated in other calls.

Typestring (enum)

Character limit: 9

Version notes: --

Values: Canceled, Processed

TransferredToAccounting

optional

Query
Update
Filter

Indicates the status of the adjustment's transfer to an external accounting system, such as NetSuite.

Typestring (enum)

Character limit: 10

Version notes: --

Values: Processing, Yes, Error, Ignore

Type

required

Create
Query
Filter

Indicates whether the adjustment credits or debits the invoice item amount.

Typestring (enum)

Character limit: 6

Version notes: --

Values: Credit, Charge

UpdatedById

optional

Query
Filter

The ID of the user who last updated the invoice item.

Type: zns:ID

Character limit: 32

Version notes: WSDL 20.0+

Values: automatically generated

UpdatedDate

optional

Query
Filter

The date when the invoice item was last updated.

Type: dateTime

Character limit: 29

Version notes: WSDL 20.0+

Values: automatically generated

Additional Field Detail

Id

The ID of this object. Every object has a unique identifier that Zuora automatically assigns upon creation. You use this ID later when you work with the object. For example, if you send an amend() call to modify an existing subscription, then you need to include the specific Subscriptionobject's ID with the call.

The ID for the InvoiceItemAdjustment object is InvoiceItemAdjustmentId.

Return to the top of the Fields section

Type

Indicates whether the adjustment credits or debits the invoice item amount. Set the value to Credit to create a credit memo, which gives a credit on the invoice item or lowers its charge. Set the value to Charge to create a debit memo, which increases the invoice item's charge.

Return to the top of the Fields section

Examples

The following sections provide examples of working with InvoiceItemAdjustment.

Creating an InvoiceItemAdjustment

An InvoiceItemAdjustment is used when you want to adjust a line item from an invoice. The line item can be either an InvoiceItem or TaxationItem.

To create a $2.00 credit InvoiceItemAdjustment for an invoice line item where the Invoice Number is specified:

<soapenv:Body>
<ns1:create xmlns:ns1="http://api.zuora.com/">
  <ns1:zObjects xmlns:ns2="http://object.api.zuora.com/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:InvoiceItemAdjustment">
    <ns2:AccountingCode>test-1</ns2:AccountingCode>
    <ns2:AdjustmentDate>2010-02-02T12:00:00.343+08:00</ns2:AdjustmentDate>
    <ns2:Amount>2.00</ns2:Amount>
    <ns2:Comment>test</ns2:Comment>
    <ns2:InvoiceNumber>INV-1278576579796</ns2:InvoiceNumber>
    <ns2:SourceId>2c92c0855b8b091b015b8e73b90070d9</ns2:SourceId>
    <ns2:SourceType>InvoiceDetail</ns2:SourceType>
    <ns2:Type>Credit</ns2:Type>
  </ns1:zObjects>
</ns1:create>
</soapenv:Body>

To create a $5.00 credit InvoiceItemAdjustment for an taxation line item where the InvoiceId is specified:

<soapenv:Body>
  <ns1:create xmlns:ns1="http://api.zuora.com/">
    <ns1:zObjects xmlns:ns2="http://object.api.zuora.com/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:InvoiceItemAdjustment">
      <ns2:AccountingCode>Accountind Code-2</ns2:AccountingCode>
      <ns2:AdjustmentDate>2010-02-02T12:00:00.343+08:00</ns2:AdjustmentDate>
      <ns2:Amount>5.00</ns2:Amount>
      <ns2:Comment>Adjust taxation line item</ns2:Comment>
      <ns2:InvoiceId>2c92c0945ab26a4f015ac69b22ba374d</ns2:InvoiceId>
      <ns2:SourceId>2c92c0945e9da8ef015ea260b78e7b93</ns2:SourceId>
      <ns2:SourceType>Tax</ns2:SourceType>
      <ns2:Type>Credit</ns2:Type>
    </ns1:zObjects>
  </ns1:create>
</soapenv:Body>

Canceling an InvoiceItemAdjustment

You can cancel an InvoiceItemAdjustment programmatically by updating its status to canceled.

<ns1:update xmlns:ns1="http://api.zuora.com/">
  <ns1:zObjects xmlns:ns2="http://object.api.zuora.com/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:InvoiceItemAdjustment">
    <ns2:Id>402892df29b11b9f0129b11c75150008</ns2:Id>
    <ns2:Status>Canceled</ns2:Status>
  </ns1:zObjects>
</ns1:update>