Skip to content

Releases: XeroAPI/Xero-Java

3.5.0

16 Mar 20:53
800bea8

Choose a tag to compare

Build off OpenAPI Spec v 2.0.5
https://github.com/XeroAPI/Xero-OpenAPI/releases/tag/2.0.5

ACCOUNTING

  • Change deletePayment method to accept a default PaymentDelete object that has a single property - status with a default value of "DELETED"

Missing ENUM ARPREPAYMENT added to Invoice Type

PROJECTS
ProjectsApi (plural) replaced with ProjectApi class

PAYROLL AU

  • Official support for AU Payroll added
  • Unit tests written
  • All Dates are in MS DateFormat - for this reason they are typed as Strings.

Each date has an additional getter in the model that returns the native date. Use getXXXXDateAsDate() to retrieve Java dates.

i.e. getStartDateAsDate() returns native date 2019-11-12 or datetime 2019-11-12T21:05:24.755-08:00

i.e. getStartDate() returns a string /Date(322560000000+0000)/

StringUtil

  • convertStringToDate method added
  • convertStringToDateTime method added

These are based off the CustomDateDeserializer code

PaySlip and PayItem create operation does NOT return an empty JSON object - this is a known issue with the API and is not an problem with the SDK.

3.4.0

05 Mar 05:52
ca40b73

Choose a tag to compare

Update based on OAS version 2.0.3
https://github.com/XeroAPI/Xero-OpenAPI/releases/tag/2.0.3

PurchaseOrder
Add operation for getPurchaseOrderByNumber

AppliedAmount property added to the following models
CreditNote
Prepayment
Overpayment

Update projects - add misisng getTask operation
Unit tests for Projects API added

Add getTask by ID and return a single task
Add missing "description" property from Task model

3.3.2

29 Feb 04:19
cd4c771

Choose a tag to compare

This release is based off changes in OAS 2.0.2
https://github.com/XeroAPI/Xero-OpenAPI/releases/tag/2.0.2

3.3.1

19 Feb 19:22
1395f02

Choose a tag to compare

Release based on changes in OpenAPI spec.

See release notes
https://github.com/XeroAPI/Xero-OpenAPI/releases/tag/2.0.1

3.3.0

13 Feb 01:17
be86415

Choose a tag to compare

OAS v2.0.0
https://github.com/XeroAPI/Xero-OpenAPI/releases/tag/2.0.0

To address the use case where a queryString includes the unitdp=4 param we need to change objects with attributes that support more than two decimal points to to change the number datatype from double to float.

Added missing unitdp to methods ...

Added to the following ..

BankTransactions

  • getBankTransaction
  • createBankTransactions
  • updateBankTransaction
  • updateOrCreate

CreditNotes

  • getCreditNotes
  • createCreditNotes
  • updateCreditNote
  • updateOrCreateCreditNotes

Invoices

  • getInvoice
  • createInvoices
  • updateInvoice
  • updateOrCreateInvoices

Items

  • getItem
  • createItems
  • updateItem
  • updateOrCreateItems

Receipts

  • getReceipts
  • getReceipt
  • createReceipt
  • updateReceipt

Objects that use LineItems are impacted

  • BankTransations
  • CreditNotes
  • Invoices
  • Receipts

the two properties that changed from double to float

  • Quantity
  • UnitAmount

The Purchase object property changed from double to float

  • UnitPrice

The Item object has the property changed from double to float

  • QuantityOnHand

Added ARCHIVED Status to Manual Journal object
Added SalesTaxPeriod NONE to organisation object
Added Reference attribute to Prepayment object
Added VOIDED status to Receipt object
Added DELETED status to RepeatingInvoice object

Updated corresponding Unit Tests

Remove req. ReportTaxTypes from TaxRate object

3.2.3

05 Feb 01:20
03bf73c

Choose a tag to compare

Documentation changes and enums …
Added ENUMS

  • Accounts

Removed Required flag for fields on Invoices, Receipts

  • these are fine if the object is only used for create new object, but they are also used as nested objects in other objects (batchpayment, etc) where only the ID is necessary.

Fix CreditNote tests

Edits to path of sandbox url in tests

Update tests for HistoryRecord component change …

The OpenAPI spec we've moved HistoryRecord responses into components - this helps make the spec more DRY but means GetSandbox doesn't have an example response to return on all 13 "get" or "create" history endpoints. The solution is to mock only the BatchPayment history get and create with an example response for use in the unit tests. This validate ALL history calls since they all use the same part of the spec.

Remove Required attributes on objects that are used for create/update and as nested children. This makes the objects are more flexibile for different use cases. Objects changed.

  • Items
  • LinkedTransaction
  • PurchaseOrder

Quotes validated and unit test created …
Tests for Quote

  • getQuotes
  • getQuotes
  • createQuotes
  • updateQuotes
  • updateOrCreateQutoes

3.2.2

22 Jan 03:01
6a03de4

Choose a tag to compare

createItem removed

updateOrCreateItems added

ReportBankSummary

  • fixed params to includ fromDate and toDate

add IDs to Element class …
This will help with finding out which object had a validation error on update

Mismatch on Casing for file names in AU Payroll
Rename Payruns.java to PayRuns.java
Rename Payrun.java to PayRun.java
Rename Superfunds.java to SuperFunds.java
Rename Superfund.java to SuperFund.java
Rename SuperfundProducts.java to SuperFundProducts.java
Rename SuperFundProducts to SuperFundProduct.java
Rename SuperfundProduct.java to SuperFundProducts

v3.2.0

17 Jan 16:13

Choose a tag to compare

Accounting
Attempt to have both create and create can't be supported with OAS. Instead we need to support Multiple Create and Multiple Update where supported by the API
REMOVED

  • createBankTransaction
  • createContact
  • createCreditNote
    -createInvoice
    -createPurchaseOrder
  • removed related unit tests for these methods

ADDED

  • updateOrCreateBankTransactions
  • updateOrCreateContacts
  • updateOrCreateCreditNotes
  • updateOrCreateInvoices
  • updateOrCreatePurchaseOrders

Added missing attribute StatusAttributeString
from Contact, Item objects

Add missing summarizeErrors for BatchPayments

Add add connection timeout

Fixed assets
Updated models and added unit tests
Fixed Assets -Add a few missing attributes
depreciableObjectId
depreciableObjectType
bookEffectiveDateOfChangeId
isDeleteEnabledForDate
accountingBookValue

v 3.1.9

09 Jan 18:46

Choose a tag to compare

Remove hardcoded api.xero.com and allow it to be set when initializing ApiClient class.

v3.1.8

09 Jan 01:31

Choose a tag to compare

Xero's API support PUT for single and multiple objects on 10 endpoints.

  • tried to use /endpoint POST for multiple and PUT for singular (no id resource), but the POST resulted in an "update" and not create - therefore validation errors were not properly returned.

Added x-method extension to OpenAPI spec and set the value to PUT. This is picked up in the mustache template if present and overrides the default httpMethod.

Confirmed that this solves the issue with summarizeError=false not functioning for multi object create.
master