Welcome to Zuora Product Documentation

Explore our rich library of product information

Date field changes in the WSDL

Describes the date field changes and provides guidelines on how to check your SOAP API integrations.

In WSDL 68 and earlier, Zuora treats 56 SOAP API date fields as dateTime fields. From WSDL 69 and later, Zuora treats these fields as date fields. These fields are no longer compatible with dateTime values.

After checking and updating your integrations, you are ready to download and use WSDL 69 or later.​

SOAP API

Before downloading and using WSDL 69, check your SOAP API integration to see if you are passing or receiving any dateTime values to or from date fields.

AQuA API

The date field changes described in this article also apply to AQuA API versions 69 and later. This is because the API version of AQuA is based on the corresponding version of the Zuora WSDL—for example, API version 69 is based on WSDL version 69.

  • If you want to use API version 69 or later, check your AQuA integration to ensure that you are not passing in or expecting to receive any dateTime values from date fields.

  • If you don't want to use API version 69 or later, ensure that you specify the version you do want to use in the apiVersion field of your AQuA queries. Otherwise, AQuA will use the latest version by default, which will result in a different date field format and may cause your existing integration to break.

Zuora CPQ

If you use Zuora CPQ, review the affected date fields, and check and update your integration code.

Changes in date fields since WSDL 69

To use WSDL 69 or later, check your Zuora SOAP API integration for date fields that send or receive dateTime values. The response from a date field will only be a date. The response from a dateTime field will only be a dateTime. If you try to pass a dateTime to a date field when using WSDL 69 or later, you will get an INVALID_VALUE error message.

To become compliant:

  • Remove any time and time zone offset components from values you use with a SOAP API date field.

  • Change your Zuora integration to expect that time and time zone offset components are not returned from a date field.

For example:

  • 2015-02-28T23:23:23 becomes 2015-02-28

  • 2015-02-28T23:23:23-08:00 becomes 2015-02-28

As an example, from WSDL 69 and later, ContractEffectiveDate is a date field and will only accept or return a date value:

date.png

In WSDL 68 and earlier, ContractEffectiveDate is a dateTime field and will accept or return a dateTime value:

datetime.png

Date fields you need to check

After you change your date fields, you need to check the following fields in your SOAP API integration:

Object

Field

Account

LastInvoiceDate

TaxExemptEffectiveDate

TaxExemptExpirationDate

AccountingPeriod

EndDate

StartDate

Amendment

ContractEffectiveDate

CustomerAcceptanceDate

EffectiveDate

ServiceActivationDate

TermStartDate

BillRun

InvoiceDate

TargetDate

BillingPreviewRequest

TargetDate

BillingPreviewRun

TargetDate

ChargeMetrics

UpToDate

CreditBalanceAdjustment

AdjustmentDate

ExternalPaymentOptions

EffectiveDate

Invoice

DueDate

InvoiceDate

TargetDate

InvoiceAdjustment

Note: This object is deprecated on Production in WSDL version 64.0.

RevRecStartDate

InvoiceItem

RevRecStartDate

ServiceEndDate

ServiceStartDate

InvoiceItemAdjustment

AdjustmentDate

ServiceEndDate

ServiceStartDate

InvoiceSplitItem

InvoiceDate

Payment

EffectiveDate

PaymentMethod

MandateCreationDate

MandateUpdateDate

PaymentMethodSnapshot

MandateCreationDate

MandateUpdateDate

Product

EffectiveEndDate

EffectiveStartDate

ProductRatePlan

EffectiveEndDate

EffectiveStartDate

RatePlanCharge

ChargedThroughDate

EffectiveEndDate

EffectiveStartDate

ProcessedThroughDate

TriggerDate

Refund

RefundDate

SubscribeInvoiceProcessingOptions

InvoiceDate

InvoiceTargetDate

Subscription

CancelledDate

ContractAcceptanceDate

ContractEffectiveDate

ServiceActivationDate

SubscriptionEndDate

SubscriptionStartDate

TermEndDate

TermStartDate

TaxationItem

TaxDate

Querying SOAP API objects using ZOQL

Using WSDL 68 or earlier, you can filter date or dateTime fields with date or dateTime values.

When using WSDL 69 or later, you must use a dateTime value to filter a dateTime field. You can only use a date value to filter a date field.

For example you must use a date value to filter ContractEffectiveDate :

select AutoRenew from subscription where ContractEffectiveDate = '2015-02-28'

See Zuora Object Query Language (ZOQL) for more information.

Data Source export actions

In WSDL 68 and earlier, the output format of dates and dateTimes in data source exports depends on how data was entered into Zuora. Integrations that use data source exports in WSDL 68 or earlier may need to accommodate both date and dateTime values for the same field.

From WSDL 69 and later, the output from dateTime fields is a dateTime and the output from date fields is a date. For example:

  • A value of 2015-02-13T23:18:00-08:00 will be exported as 2015-02-13T23:18:00-08:00

  • A value of 2015-02-13 will be exported as 2015-02-13

See Data Exports introduction for more information.