object Attachments
{
  "type": "object",
  "properties": {
    "Attachments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Attachment"
      }
    }
  },
  "x-isObjectArray": true
}
object BalanceDetails
{
  "type": "object",
  "properties": {
    "Balance": {
      "type": "number",
      "format": "double",
      "description": "The opening balances of the account. Debits are positive, credits are negative values"
    },
    "CurrencyCode": {
      "type": "string",
      "description": "The currency of the balance (Not required for base currency)"
    },
    "CurrencyRate": {
      "type": "number",
      "format": "double",
      "x-is-money": true,
      "description": "(Optional) Exchange rate to base currency when money is spent or received. If not specified, XE rate for the day is applied"
    }
  },
  "description": "An array to specify multiple currency balances of an account"
}
object Balances
{
  "type": "object",
  "properties": {
    "AccountsPayable": {
      "$ref": "#/components/schemas/AccountsPayable"
    },
    "AccountsReceivable": {
      "$ref": "#/components/schemas/AccountsReceivable"
    }
  },
  "description": "The raw AccountsReceivable(sales invoices) and AccountsPayable(bills) outstanding and overdue amounts, not converted to base currency (read only)"
}
object BankTransaction
{
  "type": "object",
  "required": [
    "Type",
    "LineItems",
    "BankAccount"
  ],
  "properties": {
    "Url": {
      "type": "string",
      "description": "URL link to a source document – shown as “Go to App Name”"
    },
    "Date": {
      "type": "string",
      "description": "Date of transaction – YYYY-MM-DD",
      "x-is-msdate": true
    },
    "Type": {
      "enum": [
        "RECEIVE",
        "RECEIVE-OVERPAYMENT",
        "RECEIVE-PREPAYMENT",
        "SPEND",
        "SPEND-OVERPAYMENT",
        "SPEND-PREPAYMENT",
        "RECEIVE-TRANSFER",
        "SPEND-TRANSFER"
      ],
      "type": "string",
      "description": "See Bank Transaction Types"
    },
    "Total": {
      "type": "number",
      "format": "double",
      "x-is-money": true,
      "description": "Total of bank transaction tax inclusive"
    },
    "Status": {
      "enum": [
        "AUTHORISED",
        "DELETED",
        "VOIDED"
      ],
      "type": "string",
      "description": "See Bank Transaction Status Codes"
    },
    "Contact": {
      "$ref": "#/components/schemas/Contact"
    },
    "SubTotal": {
      "type": "number",
      "format": "double",
      "x-is-money": true,
      "description": "Total of bank transaction excluding taxes"
    },
    "TotalTax": {
      "type": "number",
      "format": "double",
      "x-is-money": true,
      "description": "Total tax on bank transaction"
    },
    "LineItems": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/LineItem"
      },
      "description": "See LineItems"
    },
    "Reference": {
      "type": "string",
      "description": "Reference for the transaction. Only supported for SPEND and RECEIVE transactions."
    },
    "BankAccount": {
      "$ref": "#/components/schemas/Account"
    },
    "CurrencyCode": {
      "$ref": "#/components/schemas/CurrencyCode",
      "type": "string"
    },
    "CurrencyRate": {
      "type": "number",
      "format": "double",
      "x-is-money": true,
      "description": "Exchange rate to base currency when money is spent or received. e.g.0.7500 Only used for bank transactions in non base currency. If this isn’t specified for non base currency accounts then either the user-defined rate (preference) or the XE.com day rate will be used. Setting currency is only supported on overpayments."
    },
    "IsReconciled": {
      "type": "boolean",
      "description": "Boolean to show if transaction is reconciled"
    },
    "PrepaymentID": {
      "type": "string",
      "format": "uuid",
      "example": "00000000-0000-0000-0000-000000000000",
      "readOnly": true,
      "description": "Xero generated unique identifier for a Prepayment. This will be returned on BankTransactions with a Type of SPEND-PREPAYMENT or RECEIVE-PREPAYMENT"
    },
    "OverpaymentID": {
      "type": "string",
      "format": "uuid",
      "example": "00000000-0000-0000-0000-000000000000",
      "readOnly": true,
      "description": "Xero generated unique identifier for an Overpayment. This will be returned on BankTransactions with a Type of SPEND-OVERPAYMENT or RECEIVE-OVERPAYMENT"
    },
    "HasAttachments": {
      "type": "boolean",
      "default": "false",
      "example": false,
      "readOnly": true,
      "description": "Boolean to indicate if a bank transaction has an attachment"
    },
    "UpdatedDateUTC": {
      "type": "string",
      "example": "/Date(1573755038314)/",
      "readOnly": true,
      "description": "Last modified date UTC format",
      "x-is-msdate-time": true
    },
    "LineAmountTypes": {
      "$ref": "#/components/schemas/LineAmountTypes",
      "type": "string"
    },
    "ValidationErrors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ValidationError"
      },
      "description": "Displays array of validation error messages from the API"
    },
    "BankTransactionID": {
      "type": "string",
      "format": "uuid",
      "example": "00000000-0000-0000-0000-000000000000",
      "description": "Xero generated unique identifier for bank transaction"
    },
    "StatusAttributeString": {
      "type": "string",
      "description": "A string to indicate if a invoice status"
    }
  },
  "externalDocs": {
    "url": "http://developer.xero.com/documentation/api/banktransactions/"
  }
}
object BankTransactions
{
  "type": "object",
  "properties": {
    "BankTransactions": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/BankTransaction"
      }
    }
  },
  "x-isObjectArray": true
}
object BankTransfer
{
  "type": "object",
  "required": [
    "FromBankAccount",
    "ToBankAccount",
    "Amount"
  ],
  "properties": {
    "Date": {
      "type": "string",
      "description": "The date of the Transfer YYYY-MM-DD",
      "x-is-msdate": true
    },
    "Amount": {
      "type": "number",
      "format": "double",
      "x-is-money": true,
      "description": "amount of the transaction"
    },
    "Reference": {
      "type": "string",
      "description": "Reference for the transactions."
    },
    "CurrencyRate": {
      "type": "number",
      "format": "double",
      "readOnly": true,
      "x-is-money": true,
      "description": "The currency rate"
    },
    "ToBankAccount": {
      "$ref": "#/components/schemas/Account"
    },
    "BankTransferID": {
      "type": "string",
      "format": "uuid",
      "readOnly": true,
      "description": "The identifier of the Bank Transfer"
    },
    "CreatedDateUTC": {
      "type": "string",
      "example": "/Date(1573755038314)/",
      "readOnly": true,
      "description": "UTC timestamp of creation date of bank transfer",
      "x-is-msdate-time": true
    },
    "HasAttachments": {
      "type": "boolean",
      "default": "false",
      "example": false,
      "readOnly": true,
      "description": "Boolean to indicate if a Bank Transfer has an attachment"
    },
    "ToIsReconciled": {
      "type": "boolean",
      "default": "false",
      "example": false,
      "description": "The Bank Transaction boolean to show if it is reconciled for the destination account"
    },
    "FromBankAccount": {
      "$ref": "#/components/schemas/Account"
    },
    "FromIsReconciled": {
      "type": "boolean",
      "default": "false",
      "example": false,
      "description": "The Bank Transaction boolean to show if it is reconciled for the source account"
    },
    "ValidationErrors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ValidationError"
      },
      "description": "Displays array of validation error messages from the API"
    },
    "ToBankTransactionID": {
      "type": "string",
      "format": "uuid",
      "readOnly": true,
      "description": "The Bank Transaction ID for the destination account"
    },
    "FromBankTransactionID": {
      "type": "string",
      "format": "uuid",
      "readOnly": true,
      "description": "The Bank Transaction ID for the source account"
    }
  },
  "externalDocs": {
    "url": "http://developer.xero.com/documentation/api/bank-transfers/"
  }
}
object BankTransfers
{
  "type": "object",
  "properties": {
    "BankTransfers": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/BankTransfer"
      }
    }
  },
  "x-isObjectArray": true
}
object BatchPayment
{
  "type": "object",
  "properties": {
    "Code": {
      "type": "string",
      "maxLength": 12,
      "description": "(NZ Only) Optional references for the batch payment transaction. It will also show with the batch payment transaction in the bank reconciliation Find & Match screen. Depending on your individual bank, the detail may also show on the bank statement you import into Xero."
    },
    "Date": {
      "type": "string",
      "description": "Date the payment is being made (YYYY-MM-DD) e.g. 2009-09-06",
      "x-is-msdate": true
    },
    "Type": {
      "enum": [
        "PAYBATCH",
        "RECBATCH"
      ],
      "type": "string",
      "readOnly": true,
      "description": "PAYBATCH for bill payments or RECBATCH for sales invoice payments (read-only)"
    },
    "Amount": {
      "type": "number",
      "format": "double",
      "x-is-money": true,
      "description": "The amount of the payment. Must be less than or equal to the outstanding amount owing on the invoice e.g. 200.00"
    },
    "Status": {
      "enum": [
        "AUTHORISED",
        "DELETED"
      ],
      "type": "string",
      "readOnly": true,
      "description": "AUTHORISED or DELETED (read-only). New batch payments will have a status of AUTHORISED. It is not possible to delete batch payments via the API."
    },
    "Account": {
      "$ref": "#/components/schemas/Account"
    },
    "Details": {
      "type": "string",
      "description": "(Non-NZ Only) These details are sent to the org’s bank as a reference for the batch payment transaction. They will also show with the batch payment transaction in the bank reconciliation Find & Match screen. Depending on your individual bank, the detail may also show on the bank statement imported into Xero. Maximum field length = 18"
    },
    "Payments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Payment"
      },
      "description": "An array of payments"
    },
    "Narrative": {
      "type": "string",
      "maxLength": 18,
      "description": "(UK Only) Only shows on the statement line in Xero. Max length =18"
    },
    "Reference": {
      "type": "string",
      "maxLength": 255,
      "description": "(NZ Only) Optional references for the batch payment transaction. It will also show with the batch payment transaction in the bank reconciliation Find & Match screen. Depending on your individual bank, the detail may also show on the bank statement you import into Xero."
    },
    "DateString": {
      "type": "string",
      "description": "Date the payment is being made (YYYY-MM-DD) e.g. 2009-09-06"
    },
    "Particulars": {
      "type": "string",
      "maxLength": 12,
      "description": "(NZ Only) Optional references for the batch payment transaction. It will also show with the batch payment transaction in the bank reconciliation Find & Match screen. Depending on your individual bank, the detail may also show on the bank statement you import into Xero."
    },
    "TotalAmount": {
      "type": "number",
      "format": "double",
      "readOnly": true,
      "x-is-money": true,
      "description": "The total of the payments that make up the batch (read-only)"
    },
    "IsReconciled": {
      "type": "boolean",
      "readOnly": true,
      "description": "Booelan that tells you if the batch payment has been reconciled (read-only)"
    },
    "BatchPaymentID": {
      "type": "string",
      "format": "uuid",
      "readOnly": true,
      "description": "The Xero generated unique identifier for the bank transaction (read-only)"
    },
    "UpdatedDateUTC": {
      "type": "string",
      "example": "/Date(1573755038314)/",
      "readOnly": true,
      "description": "UTC timestamp of last update to the payment",
      "x-is-msdate-time": true
    },
    "ValidationErrors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ValidationError"
      },
      "description": "Displays array of validation error messages from the API"
    }
  },
  "externalDocs": {
    "url": "http://developer.xero.com/documentation/api/BatchPayments/"
  }
}
object BatchPaymentDelete
{
  "type": "object",
  "required": [
    "Status",
    "BatchPaymentID"
  ],
  "properties": {
    "Status": {
      "type": "string",
      "default": "DELETED",
      "description": "The status of the batch payment."
    },
    "BatchPaymentID": {
      "type": "string",
      "format": "uuid",
      "description": "The Xero generated unique identifier for the bank transaction (read-only)"
    }
  },
  "externalDocs": {
    "url": "http://developer.xero.com/documentation/api/accounting/batchpayments"
  }
}
object BatchPaymentDeleteByUrlParam
{
  "type": "object",
  "required": [
    "Status"
  ],
  "properties": {
    "Status": {
      "type": "string",
      "default": "DELETED",
      "description": "The status of the batch payment."
    }
  },
  "externalDocs": {
    "url": "http://developer.xero.com/documentation/api/accounting/batchpayments"
  }
}
object BatchPaymentDetails
{
  "properties": {
    "Code": {
      "type": "string",
      "example": "ABC",
      "maxLength": 12,
      "description": "(NZ Only) Optional references for the batch payment transaction. It will also show with the batch payment transaction in the bank reconciliation Find & Match screen. Depending on your individual bank, the detail may also show on the bank statement you import into Xero."
    },
    "Details": {
      "type": "string",
      "example": "Hello World",
      "description": "(Non-NZ Only) These details are sent to the org’s bank as a reference for the batch payment transaction. They will also show with the batch payment transaction in the bank reconciliation Find & Match screen. Depending on your individual bank, the detail may also show on the bank statement imported into Xero. Maximum field length = 18"
    },
    "Reference": {
      "type": "string",
      "example": "Foobar",
      "maxLength": 12,
      "description": "(NZ Only) Optional references for the batch payment transaction. It will also show with the batch payment transaction in the bank reconciliation Find & Match screen. Depending on your individual bank, the detail may also show on the bank statement you import into Xero."
    },
    "BankAccountName": {
      "type": "string",
      "example": "ACME Bank",
      "description": "Name of bank for use with Batch Payments"
    },
    "BankAccountNumber": {
      "type": "string",
      "example": "123-456-1111111",
      "description": "Bank account number for use with Batch Payments"
    }
  },
  "description": "Bank details for use on a batch payment stored with each contact",
  "externalDocs": {
    "url": "http://developer.xero.com/documentation/api/Contact/"
  }
}
object BatchPayments
{
  "type": "object",
  "properties": {
    "BatchPayments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/BatchPayment"
      }
    }
  },
  "x-isObjectArray": true
}
object Bill
{
  "type": "object",
  "properties": {
    "Day": {
      "type": "integer",
      "description": "Day of Month (0-31)"
    },
    "Type": {
      "$ref": "#/components/schemas/PaymentTermType"
    }
  },
  "externalDocs": {
    "url": "http://developer.xero.com/documentation/api/organisation/"
  }
}
object BrandingTheme
{
  "type": "object",
  "properties": {
    "Name": {
      "type": "string",
      "description": "Name of branding theme"
    },
    "Type": {
      "enum": [
        "INVOICE"
      ],
      "type": "string",
      "description": "Always INVOICE"
    },
    "LogoUrl": {
      "type": "string",
      "description": "The location of the image file used as the logo on this branding theme"
    },
    "SortOrder": {
      "type": "integer",
      "description": "Integer – ranked order of branding theme. The default branding theme has a value of 0"
    },
    "CreatedDateUTC": {
      "type": "string",
      "example": "/Date(1573755038314)/",
      "readOnly": true,
      "description": "UTC timestamp of creation date of branding theme",
      "x-is-msdate-time": true
    },
    "BrandingThemeID": {
      "type": "string",
      "format": "uuid",
      "description": "Xero identifier"
    }
  },
  "externalDocs": {
    "url": "http://developer.xero.com/documentation/api/branding-themes/"
  }
}
object BrandingThemes
{
  "type": "object",
  "properties": {
    "BrandingThemes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/BrandingTheme"
      }
    }
  },
  "x-isObjectArray": true
}
object Budget
{
  "type": "object",
  "properties": {
    "Type": {
      "enum": [
        "OVERALL",
        "TRACKING"
      ],
      "type": "string",
      "description": "Type of Budget. OVERALL or TRACKING"
    },
    "BudgetID": {
      "type": "string",
      "format": "uuid",
      "description": "Xero identifier"
    },
    "Tracking": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/TrackingCategory"
      }
    },
    "BudgetLines": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/BudgetLine"
      }
    },
    "Description": {
      "type": "string",
      "maxLength": 255,
      "description": "The Budget description"
    },
    "UpdatedDateUTC": {
      "type": "string",
      "example": "/Date(1573755038314)/",
      "readOnly": true,
      "description": "UTC timestamp of last update to budget",
      "x-is-msdate-time": true
    }
  },
  "externalDocs": {
    "url": "http://developer.xero.com/documentation/api/budgets/"
  }
}
object BudgetBalance
{
  "type": "object",
  "properties": {
    "Notes": {
      "type": "string",
      "maxLength": 255,
      "description": "Any footnotes associated with this balance"
    },
    "Amount": {
      "type": "number",
      "format": "double",
      "x-is-money": true,
      "description": "LineItem Quantity"
    },
    "Period": {
      "type": "string",
      "description": "Period the amount applies to (e.g. “2019-08”)",
      "x-is-msdate": true
    },
    "UnitAmount": {
      "type": "number",
      "format": "double",
      "x-is-money": true,
      "description": "Budgeted amount"
    }
  }
}
object BudgetLine
{
  "type": "object",
  "properties": {
    "AccountID": {
      "type": "string",
      "format": "uuid",
      "description": "See Accounts"
    },
    "AccountCode": {
      "type": "string",
      "example": 90,
      "description": "See Accounts"
    },
    "BudgetBalances": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/BudgetBalance"
      }
    }
  },
  "externalDocs": {
    "url": "http://developer.xero.com/documentation/api/budgets/"
  }
}
object Budgets
{
  "type": "object",
  "properties": {
    "Budgets": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Budget"
      }
    }
  },
  "x-isObjectArray": true
}
object CISOrgSetting
{
  "properties": {
    "Rate": {
      "type": "number",
      "format": "double",
      "readOnly": true,
      "x-is-money": true,
      "description": "CIS Deduction rate for the organisation"
    },
    "CISContractorEnabled": {
      "type": "boolean",
      "description": "true or false - Boolean that describes if the organisation is a CIS Contractor"
    },
    "CISSubContractorEnabled": {
      "type": "boolean",
      "description": "true or false - Boolean that describes if the organisation is a CIS SubContractor"
    }
  },
  "externalDocs": {
    "url": "https://developer.xero.com/documentation/api/organisation"
  }
}
object CISOrgSettings
{
  "type": "object",
  "properties": {
    "CISSettings": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/CISOrgSetting"
      }
    }
  },
  "x-isObjectArray": true
}
object CISSetting
{
  "properties": {
    "Rate": {
      "type": "number",
      "format": "double",
      "readOnly": true,
      "x-is-money": true,
      "description": "CIS Deduction rate for the contact if he is a subcontractor. If the contact is not CISEnabled, then the rate is not returned"
    },
    "CISEnabled": {
      "type": "boolean",
      "description": "Boolean that describes if the contact is a CIS Subcontractor"
    }
  },
  "externalDocs": {
    "url": "http://developer.xero.com/documentation/api/contacts/"
  }
}
object CISSettings
{
  "type": "object",
  "properties": {
    "CISSettings": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/CISSetting"
      }
    }
  },
  "x-isObjectArray": true
}
object Contact
{
  "type": "object",
  "properties": {
    "Name": {
      "type": "string",
      "maxLength": 255,
      "description": "Full name of contact/organisation (max length = 255)"
    },
    "Phones": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Phone"
      },
      "description": "Store certain phone types for a contact – see phone types"
    },
    "Website": {
      "type": "string",
      "readOnly": true,
      "description": "Website address for contact (read only)"
    },
    "Balances": {
      "$ref": "#/components/schemas/Balances"
    },
    "Discount": {
      "type": "number",
      "format": "double",
      "readOnly": true,
      "x-is-money": true,
      "description": "The default discount rate for the contact (read only)"
    },
    "LastName": {
      "type": "string",
      "maxLength": 255,
      "description": "Last name of contact person (max length = 255)"
    },
    "Addresses": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Address"
      },
      "description": "Store certain address types for a contact – see address types"
    },
    "ContactID": {
      "type": "string",
      "format": "uuid",
      "description": "Xero identifier"
    },
    "FirstName": {
      "type": "string",
      "maxLength": 255,
      "description": "First name of contact person (max length = 255)"
    },
    "TaxNumber": {
      "type": "string",
      "maxLength": 50,
      "description": "Tax number of contact – this is also known as the ABN (Australia), GST Number (New Zealand), VAT Number (UK) or Tax ID Number (US and global) in the Xero UI depending on which regionalized version of Xero you are using (max length = 50)"
    },
    "IsCustomer": {
      "type": "boolean",
      "description": "true or false – Boolean that describes if a contact has any AR invoices entered against them. Cannot be set via PUT or POST – it is automatically set when an accounts receivable invoice is generated against this contact."
    },
    "IsSupplier": {
      "type": "boolean",
      "description": "true or false – Boolean that describes if a contact that has any AP  invoices entered against them. Cannot be set via PUT or POST – it is automatically set when an accounts payable invoice is generated against this contact."
    },
    "Attachments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Attachment"
      },
      "description": "Displays array of attachments from the API"
    },
    "EmailAddress": {
      "type": "string",
      "maxLength": 255,
      "description": "Email address of contact person (umlauts not supported) (max length  = 255)"
    },
    "PaymentTerms": {
      "$ref": "#/components/schemas/PaymentTerm"
    },
    "AccountNumber": {
      "type": "string",
      "maxLength": 50,
      "description": "A user defined account number. This can be updated via the API and the Xero UI (max length = 50)"
    },
    "BatchPayments": {
      "$ref": "#/components/schemas/BatchPaymentDetails"
    },
    "BrandingTheme": {
      "$ref": "#/components/schemas/BrandingTheme"
    },
    "CompanyNumber": {
      "type": "string",
      "maxLength": 50,
      "description": "Company registration number (max length = 50)"
    },
    "ContactGroups": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ContactGroup"
      },
      "description": "Displays which contact groups a contact is included in"
    },
    "ContactNumber": {
      "type": "string",
      "maxLength": 50,
      "description": "This can be updated via the API only i.e. This field is read only on the Xero contact screen, used to identify contacts in external systems (max length = 50). If the Contact Number is used, this is displayed as Contact Code in the Contacts UI in Xero."
    },
    "ContactStatus": {
      "enum": [
        "ACTIVE",
        "ARCHIVED",
        "GDPRREQUEST"
      ],
      "type": "string",
      "description": "Current status of a contact – see contact status types"
    },
    "ContactPersons": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ContactPerson"
      },
      "description": "See contact persons"
    },
    "HasAttachments": {
      "type": "boolean",
      "default": "false",
      "example": false,
      "description": "A boolean to indicate if a contact has an attachment"
    },
    "UpdatedDateUTC": {
      "type": "string",
      "example": "/Date(1573755038314)/",
      "readOnly": true,
      "description": "UTC timestamp of last update to contact",
      "x-is-msdate-time": true
    },
    "XeroNetworkKey": {
      "type": "string",
      "description": "Store XeroNetworkKey for contacts."
    },
    "DefaultCurrency": {
      "$ref": "#/components/schemas/CurrencyCode",
      "type": "string"
    },
    "ValidationErrors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ValidationError"
      },
      "description": "Displays validation errors returned from the API"
    },
    "MergedToContactID": {
      "type": "string",
      "format": "uuid",
      "description": "ID for the destination of a merged contact. Only returned when using paging or when fetching a contact by ContactId or ContactNumber."
    },
    "BankAccountDetails": {
      "type": "string",
      "description": "Bank account number of contact"
    },
    "HasValidationErrors": {
      "type": "boolean",
      "default": "false",
      "example": false,
      "description": "A boolean to indicate if a contact has an validation errors"
    },
    "TrackingCategoryName": {
      "type": "string",
      "description": "The name of the Tracking Category assigned to the contact under SalesTrackingCategories and PurchasesTrackingCategories"
    },
    "StatusAttributeString": {
      "type": "string",
      "description": "Status of object"
    },
    "AccountsPayableTaxType": {
      "type": "string",
      "description": "The tax type from TaxRates"
    },
    "TrackingCategoryOption": {
      "type": "string",
      "description": "The name of the Tracking Option assigned to the contact under SalesTrackingCategories and PurchasesTrackingCategories"
    },
    "SalesDefaultAccountCode": {
      "type": "string",
      "description": "The default sales account code for contacts"
    },
    "SalesTrackingCategories": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/SalesTrackingCategory"
      },
      "description": "The default sales tracking categories for contacts"
    },
    "AccountsReceivableTaxType": {
      "type": "string",
      "description": "The tax type from TaxRates"
    },
    "SalesDefaultLineAmountType": {
      "enum": [
        "INCLUSIVE",
        "EXCLUSIVE",
        "NONE"
      ],
      "type": "string",
      "description": "The default sales line amount type for a contact. Only available when summaryOnly parameter or paging is used, or when fetch by ContactId or ContactNumber."
    },
    "PurchasesDefaultAccountCode": {
      "type": "string",
      "description": "The default purchases account code for contacts"
    },
    "PurchasesTrackingCategories": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/SalesTrackingCategory"
      },
      "description": "The default purchases tracking categories for contacts"
    },
    "PurchasesDefaultLineAmountType": {
      "enum": [
        "INCLUSIVE",
        "EXCLUSIVE",
        "NONE"
      ],
      "type": "string",
      "description": "The default purchases line amount type for a contact Only available when summaryOnly parameter or paging is used, or when fetch by ContactId or ContactNumber."
    }
  },
  "externalDocs": {
    "url": "http://developer.xero.com/documentation/api/contacts/"
  }
}
object ContactGroup
{
  "type": "object",
  "properties": {
    "Name": {
      "type": "string",
      "description": "The Name of the contact group. Required when creating a new contact  group"
    },
    "Status": {
      "enum": [
        "ACTIVE",
        "DELETED"
      ],
      "type": "string",
      "description": "The Status of a contact group. To delete a contact group update the status to DELETED. Only contact groups with a status of ACTIVE are returned on GETs."
    },
    "Contacts": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Contact"
      },
      "description": "The ContactID and Name of Contacts in a contact group. Returned on GETs when the ContactGroupID is supplied in the URL."
    },
    "ContactGroupID": {
      "type": "string",
      "format": "uuid",
      "description": "The Xero identifier for an contact group – specified as a string following the endpoint name. e.g. /297c2dc5-cc47-4afd-8ec8-74990b8761e9"
    }
  },
  "externalDocs": {
    "url": "http://developer.xero.com/documentation/api/contactgroups/"
  }
}
object ContactGroups
{
  "type": "object",
  "properties": {
    "ContactGroups": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ContactGroup"
      }
    }
  },
  "x-isObjectArray": true
}
object ContactPerson
{
  "type": "object",
  "properties": {
    "LastName": {
      "type": "string",
      "description": "Last name of person"
    },
    "FirstName": {
      "type": "string",
      "description": "First name of person"
    },
    "EmailAddress": {
      "type": "string",
      "description": "Email address of person"
    },
    "IncludeInEmails": {
      "type": "boolean",
      "description": "boolean to indicate whether contact should be included on emails with invoices etc."
    }
  },
  "externalDocs": {
    "url": "http://developer.xero.com/documentation/api/contacts/"
  }
}
object Contacts
{
  "type": "object",
  "properties": {
    "Contacts": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Contact"
      }
    }
  },
  "x-isObjectArray": true
}
object ConversionBalances
{
  "type": "object",
  "properties": {
    "Balance": {
      "type": "number",
      "format": "double",
      "description": "The opening balances of the account. Debits are positive, credits are negative values"
    },
    "AccountCode": {
      "type": "string",
      "description": "The account code for a account"
    },
    "BalanceDetails": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/BalanceDetails"
      }
    }
  },
  "description": "Balance supplied for each account that has a value as at the conversion date."
}
object ConversionDate
{
  "type": "object",
  "properties": {
    "Year": {
      "type": "integer",
      "example": 2020,
      "description": "The year the organisation starts using Xero. Value is an integer greater than 2006"
    },
    "Month": {
      "type": "integer",
      "example": 1,
      "description": "The month the organisation starts using Xero. Value is an integer between 1 and 12"
    }
  },
  "description": "The date when the organisation starts using Xero"
}
string CountryCode
{
  "enum": [
    "AD",
    "AE",
    "AF",
    "AG",
    "AI",
    "AL",
    "AM",
    "AN",
    "AO",
    "AQ",
    "AR",
    "AS",
    "AT",
    "AU",
    "AW",
    "AZ",
    "BA",
    "BB",
    "BD",
    "BE",
    "BF",
    "BG",
    "BH",
    "BI",
    "BJ",
    "BL",
    "BM",
    "BN",
    "BO",
    "BR",
    "BS",
    "BT",
    "BW",
    "BY",
    "BZ",
    "CA",
    "CC",
    "CD",
    "CF",
    "CG",
    "CH",
    "CI",
    "CK",
    "CL",
    "CM",
    "CN",
    "CO",
    "CR",
    "CU",
    "CV",
    "CW",
    "CX",
    "CY",
    "CZ",
    "DE",
    "DJ",
    "DK",
    "DM",
    "DO",
    "DZ",
    "EC",
    "EE",
    "EG",
    "EH",
    "ER",
    "ES",
    "ET",
    "FI",
    "FJ",
    "FK",
    "FM",
    "FO",
    "FR",
    "GA",
    "GB",
    "GD",
    "GE",
    "GG",
    "GH",
    "GI",
    "GL",
    "GM",
    "GN",
    "GQ",
    "GR",
    "GT",
    "GU",
    "GW",
    "GY",
    "HK",
    "HN",
    "HR",
    "HT",
    "HU",
    "ID",
    "IE",
    "IL",
    "IM",
    "IN",
    "IO",
    "IQ",
    "IR",
    "IS",
    "IT",
    "JE",
    "JM",
    "JO",
    "JP",
    "KE",
    "KG",
    "KH",
    "KI",
    "KM",
    "KN",
    "KP",
    "KR",
    "KW",
    "KY",
    "KZ",
    "LA",
    "LB",
    "LC",
    "LI",
    "LK",
    "LR",
    "LS",
    "LT",
    "LU",
    "LV",
    "LY",
    "MA",
    "MC",
    "MD",
    "ME",
    "MF",
    "MG",
    "MH",
    "MK",
    "ML",
    "MM",
    "MN",
    "MO",
    "MP",
    "MR",
    "MS",
    "MT",
    "MU",
    "MV",
    "MW",
    "MX",
    "MY",
    "MZ",
    "NA",
    "NC",
    "NE",
    "NG",
    "NI",
    "NL",
    "NO",
    "NP",
    "NR",
    "NU",
    "NZ",
    "OM",
    "PA",
    "PE",
    "PF",
    "PG",
    "PH",
    "PK",
    "PL",
    "PM",
    "PN",
    "PR",
    "PS",
    "PT",
    "PW",
    "PY",
    "QA",
    "RE",
    "RO",
    "RS",
    "RU",
    "RW",
    "SA",
    "SB",
    "SC",
    "SD",
    "SE",
    "SG",
    "SH",
    "SI",
    "SJ",
    "SK",
    "SL",
    "SM",
    "SN",
    "SO",
    "SR",
    "SS",
    "ST",
    "SV",
    "SX",
    "SY",
    "SZ",
    "TC",
    "TD",
    "TG",
    "TH",
    "TJ",
    "TK",
    "TL",
    "TM",
    "TN",
    "TO",
    "TR",
    "TT",
    "TV",
    "TW",
    "TZ",
    "UA",
    "UG",
    "US",
    "UY",
    "UZ",
    "VA",
    "VC",
    "VE",
    "VG",
    "VI",
    "VN",
    "VU",
    "WF",
    "WS",
    "XK",
    "YE",
    "YT",
    "ZA",
    "ZM",
    "ZW"
  ],
  "type": "string"
}
object CreditNote
{
  "type": "object",
  "properties": {
    "Date": {
      "type": "string",
      "description": "The date the credit note is issued YYYY-MM-DD. If the Date element is not specified then it will default to the current date based on the timezone setting of the organisation",
      "x-is-msdate": true
    },
    "Type": {
      "enum": [
        "ACCPAYCREDIT",
        "ACCRECCREDIT"
      ],
      "type": "string",
      "description": "See Credit Note Types"
    },
    "Total": {
      "type": "number",
      "format": "double",
      "x-is-money": true,
      "description": "The total of the Credit Note(subtotal + total tax)"
    },
    "Status": {
      "enum": [
        "DRAFT",
        "SUBMITTED",
        "DELETED",
        "AUTHORISED",
        "PAID",
        "VOIDED"
      ],
      "type": "string",
      "description": "See Credit Note Status Codes"
    },
    "CISRate": {
      "type": "number",
      "format": "double",
      "readOnly": true,
      "x-is-money": true,
      "description": "CIS Deduction rate for the organisation"
    },
    "Contact": {
      "$ref": "#/components/schemas/Contact"
    },
    "DueDate": {
      "type": "string",
      "description": "Date invoice is due – YYYY-MM-DD",
      "x-is-msdate": true
    },
    "Payments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Payment"
      },
      "description": "See Payments"
    },
    "SubTotal": {
      "type": "number",
      "format": "double",
      "x-is-money": true,
      "description": "The subtotal of the credit note excluding taxes"
    },
    "TotalTax": {
      "type": "number",
      "format": "double",
      "x-is-money": true,
      "description": "The total tax on the credit note"
    },
    "Warnings": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ValidationError"
      },
      "description": "Displays array of warning messages from the API"
    },
    "HasErrors": {
      "type": "boolean",
      "default": "false",
      "example": false,
      "description": "A boolean to indicate if a credit note has an validation errors"
    },
    "LineItems": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/LineItem"
      },
      "description": "See Invoice Line Items"
    },
    "Reference": {
      "type": "string",
      "description": "ACCRECCREDIT only – additional reference number"
    },
    "Allocations": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Allocation"
      },
      "description": "See Allocations"
    },
    "CISDeduction": {
      "type": "number",
      "format": "double",
      "readOnly": true,
      "x-is-money": true,
      "description": "CIS deduction for UK contractors"
    },
    "CreditNoteID": {
      "type": "string",
      "format": "uuid",
      "description": "Xero generated unique identifier"
    },
    "CurrencyCode": {
      "$ref": "#/components/schemas/CurrencyCode",
      "type": "string",
      "description": "The specified currency code"
    },
    "CurrencyRate": {
      "type": "number",
      "format": "double",
      "x-is-money": true,
      "description": "The currency rate for a multicurrency invoice. If no rate is specified, the XE.com day rate is used"
    },
    "AppliedAmount": {
      "type": "number",
      "format": "double",
      "example": 2,
      "x-is-money": true,
      "description": "The amount of applied to an invoice"
    },
    "SentToContact": {
      "type": "boolean",
      "readOnly": true,
      "description": "boolean to indicate if a credit note has been sent to a contact via  the Xero app (currently read only)"
    },
    "HasAttachments": {
      "type": "boolean",
      "default": "false",
      "example": false,
      "description": "boolean to indicate if a credit note has an attachment"
    },
    "UpdatedDateUTC": {
      "type": "string",
      "example": "/Date(1573755038314)/",
      "readOnly": true,
      "description": "UTC timestamp of last update to the credit note",
      "x-is-msdate-time": true
    },
    "BrandingThemeID": {
      "type": "string",
      "format": "uuid",
      "description": "See BrandingThemes"
    },
    "FullyPaidOnDate": {
      "type": "string",
      "description": "Date when credit note was fully paid(UTC format)",
      "x-is-msdate": true
    },
    "LineAmountTypes": {
      "$ref": "#/components/schemas/LineAmountTypes",
      "type": "string"
    },
    "RemainingCredit": {
      "type": "number",
      "format": "double",
      "x-is-money": true,
      "description": "The remaining credit balance on the Credit Note"
    },
    "CreditNoteNumber": {
      "type": "string",
      "description": "ACCRECCREDIT – Unique alpha numeric code identifying credit note (when missing will auto-generate from your Organisation Invoice Settings)"
    },
    "ValidationErrors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ValidationError"
      },
      "description": "Displays array of validation error messages from the API"
    },
    "StatusAttributeString": {
      "type": "string",
      "description": "A string to indicate if a invoice status"
    }
  },
  "externalDocs": {
    "url": "http://developer.xero.com/documentation/api/credit-notes/"
  }
}
object CreditNotes
{
  "type": "object",
  "properties": {
    "CreditNotes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/CreditNote"
      }
    }
  },
  "x-isObjectArray": true
}
object Currencies
{
  "type": "object",
  "properties": {
    "Currencies": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Currency"
      }
    }
  },
  "x-isObjectArray": true
}
object Currency
{
  "type": "object",
  "properties": {
    "Code": {
      "$ref": "#/components/schemas/CurrencyCode",
      "type": "string"
    },
    "Description": {
      "type": "string",
      "description": "Name of Currency"
    }
  },
  "externalDocs": {
    "url": "http://developer.xero.com/documentation/api/currencies/"
  }
}
string CurrencyCode
{
  "enum": [
    "AED",
    "AFN",
    "ALL",
    "AMD",
    "ANG",
    "AOA",
    "ARS",
    "AUD",
    "AWG",
    "AZN",
    "BAM",
    "BBD",
    "BDT",
    "BGN",
    "BHD",
    "BIF",
    "BMD",
    "BND",
    "BOB",
    "BRL",
    "BSD",
    "BTN",
    "BWP",
    "BYN",
    "BYR",
    "BZD",
    "CAD",
    "CDF",
    "CHF",
    "CLF",
    "CLP",
    "CNY",
    "COP",
    "CRC",
    "CUC",
    "CUP",
    "CVE",
    "CZK",
    "DJF",
    "DKK",
    "DOP",
    "DZD",
    "EEK",
    "EGP",
    "ERN",
    "ETB",
    "EUR",
    "FJD",
    "FKP",
    "GBP",
    "GEL",
    "GHS",
    "GIP",
    "GMD",
    "GNF",
    "GTQ",
    "GYD",
    "HKD",
    "HNL",
    "HRK",
    "HTG",
    "HUF",
    "IDR",
    "ILS",
    "INR",
    "IQD",
    "IRR",
    "ISK",
    "JMD",
    "JOD",
    "JPY",
    "KES",
    "KGS",
    "KHR",
    "KMF",
    "KPW",
    "KRW",
    "KWD",
    "KYD",
    "KZT",
    "LAK",
    "LBP",
    "LKR",
    "LRD",
    "LSL",
    "LTL",
    "LVL",
    "LYD",
    "MAD",
    "MDL",
    "MGA",
    "MKD",
    "MMK",
    "MNT",
    "MOP",
    "MRO",
    "MRU",
    "MUR",
    "MVR",
    "MWK",
    "MXN",
    "MXV",
    "MYR",
    "MZN",
    "NAD",
    "NGN",
    "NIO",
    "NOK",
    "NPR",
    "NZD",
    "OMR",
    "PAB",
    "PEN",
    "PGK",
    "PHP",
    "PKR",
    "PLN",
    "PYG",
    "QAR",
    "RON",
    "RSD",
    "RUB",
    "RWF",
    "SAR",
    "SBD",
    "SCR",
    "SDG",
    "SEK",
    "SGD",
    "SHP",
    "SKK",
    "SLE",
    "SLL",
    "SOS",
    "SRD",
    "STD",
    "STN",
    "SVC",
    "SYP",
    "SZL",
    "THB",
    "TJS",
    "TMT",
    "TND",
    "TOP",
    "TRY",
    "TTD",
    "TWD",
    "TZS",
    "UAH",
    "UGX",
    "USD",
    "UYU",
    "UZS",
    "VEF",
    "VES",
    "VND",
    "VUV",
    "WST",
    "XAF",
    "XCD",
    "XOF",
    "XPF",
    "YER",
    "ZAR",
    "ZMW",
    "ZMK",
    "ZWD"
  ],
  "type": "string",
  "description": "3 letter alpha code for the currency – see list of currency codes",
  "x-enum-varnames": [
    "AED",
    "AFN",
    "ALL",
    "AMD",
    "ANG",
    "AOA",
    "ARS",
    "AUD",
    "AWG",
    "AZN",
    "BAM",
    "BBD",
    "BDT",
    "BGN",
    "BHD",
    "BIF",
    "BMD",
    "BND",
    "BOB",
    "BRL",
    "BSD",
    "BTN",
    "BWP",
    "BYN",
    "BYR",
    "BZD",
    "CAD",
    "CDF",
    "CHF",
    "CLF",
    "CLP",
    "CNY",
    "COP",
    "CRC",
    "CUC",
    "CUP",
    "CVE",
    "CZK",
    "DJF",
    "DKK",
    "DOP",
    "DZD",
    "EEK",
    "EGP",
    "ERN",
    "ETB",
    "EUR",
    "FJD",
    "FKP",
    "GBP",
    "GEL",
    "GHS",
    "GIP",
    "GMD",
    "GNF",
    "GTQ",
    "GYD",
    "HKD",
    "HNL",
    "HRK",
    "HTG",
    "HUF",
    "IDR",
    "ILS",
    "INR",
    "IQD",
    "IRR",
    "ISK",
    "JMD",
    "JOD",
    "JPY",
    "KES",
    "KGS",
    "KHR",
    "KMF",
    "KPW",
    "KRW",
    "KWD",
    "KYD",
    "KZT",
    "LAK",
    "LBP",
    "LKR",
    "LRD",
    "LSL",
    "LTL",
    "LVL",
    "LYD",
    "MAD",
    "MDL",
    "MGA",
    "MKD",
    "MMK",
    "MNT",
    "MOP",
    "MRO",
    "MRU",
    "MUR",
    "MVR",
    "MWK",
    "MXN",
    "MXV",
    "MYR",
    "MZN",
    "NAD",
    "NGN",
    "NIO",
    "NOK",
    "NPR",
    "NZD",
    "OMR",
    "PAB",
    "PEN",
    "PGK",
    "PHP",
    "PKR",
    "PLN",
    "PYG",
    "QAR",
    "RON",
    "RSD",
    "RUB",
    "RWF",
    "SAR",
    "SBD",
    "SCR",
    "SDG",
    "SEK",
    "SGD",
    "SHP",
    "SKK",
    "SLE",
    "SLL",
    "SOS",
    "SRD",
    "STN",
    "STD",
    "SVC",
    "SYP",
    "SZL",
    "THB",
    "TJS",
    "TMT",
    "TND",
    "TOP",
    "TRY_LIRA",
    "TTD",
    "TWD",
    "TZS",
    "UAH",
    "UGX",
    "USD",
    "UYU",
    "UZS",
    "VEF",
    "VES",
    "VND",
    "VUV",
    "WST",
    "XAF",
    "XCD",
    "XOF",
    "XPF",
    "YER",
    "ZAR",
    "ZMW",
    "ZMK",
    "ZWD",
    "EMPTY_CURRENCY"
  ]
}
object Element
{
  "type": "object",
  "properties": {
    "ItemID": {
      "type": "string",
      "format": "uuid"
    },
    "ContactID": {
      "type": "string",
      "format": "uuid"
    },
    "InvoiceID": {
      "type": "string",
      "format": "uuid"
    },
    "CreditNoteID": {
      "type": "string",
      "format": "uuid"
    },
    "BatchPaymentID": {
      "type": "string",
      "format": "uuid",
      "description": "Unique ID for batch payment object with validation error"
    },
    "PurchaseOrderID": {
      "type": "string",
      "format": "uuid"
    },
    "ValidationErrors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ValidationError"
      },
      "description": "Array of Validation Error message"
    },
    "BankTransactionID": {
      "type": "string",
      "format": "uuid"
    }
  },
  "externalDocs": {
    "url": "https://developer.xero.com/documentation/api/http-response-codes"
  }
}
object Employee
{
  "type": "object",
  "properties": {
    "Status": {
      "enum": [
        "ACTIVE",
        "ARCHIVED",
        "GDPRREQUEST",
        "DELETED"
      ],
      "type": "string",
      "description": "Current status of an employee – see contact status types"
    },
    "LastName": {
      "type": "string",
      "maxLength": 255,
      "description": "Last name of an employee (max length = 255)"
    },
    "FirstName": {
      "type": "string",
      "maxLength": 255,
      "description": "First name of an employee (max length = 255)"
    },
    "EmployeeID": {
      "type": "string",
      "format": "uuid",
      "description": "The Xero identifier for an employee e.g. 297c2dc5-cc47-4afd-8ec8-74990b8761e9"
    },
    "ExternalLink": {
      "$ref": "#/components/schemas/ExternalLink"
    },
    "UpdatedDateUTC": {
      "type": "string",
      "example": "/Date(1573755038314)/",
      "readOnly": true,
      "x-is-msdate-time": true
    },
    "ValidationErrors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ValidationError"
      },
      "description": "Displays array of validation error messages from the API"
    },
    "StatusAttributeString": {
      "type": "string",
      "example": "ERROR",
      "description": "A string to indicate if a invoice status"
    }
  },
  "externalDocs": {
    "url": "http://developer.xero.com/documentation/api/employees/"
  }
}
object Employees
{
  "type": "object",
  "properties": {
    "Employees": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Employee"
      }
    }
  },
  "x-isObjectArray": true
}
object Error
{
  "type": "object",
  "properties": {
    "Type": {
      "type": "string",
      "description": "Exception type"
    },
    "Message": {
      "type": "string",
      "description": "Exception message"
    },
    "Elements": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Element"
      },
      "description": "Array of Elements of validation Errors"
    },
    "ErrorNumber": {
      "type": "integer",
      "description": "Exception number"
    }
  },
  "externalDocs": {
    "url": "https://developer.xero.com/documentation/api/http-response-codes"
  }
}
object ExpenseClaim
{
  "type": "object",
  "properties": {
    "User": {
      "$ref": "#/components/schemas/User"
    },
    "Total": {
      "type": "number",
      "format": "double",
      "readOnly": true,
      "x-is-money": true,
      "description": "The total of an expense claim being paid"
    },
    "Status": {
      "enum": [
        "SUBMITTED",
        "AUTHORISED",
        "PAID",
        "VOIDED",
        "DELETED"
      ],
      "type": "string",
      "description": "Current status of an expense claim – see status types"
    },
    "Payments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Payment"
      },
      "description": "See Payments"
    },
    "Receipts": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Receipt"
      }
    },
    "AmountDue": {
      "type": "number",
      "format": "double",
      "readOnly": true,
      "x-is-money": true,
      "description": "The amount due to be paid for an expense claim"
    },
    "ReceiptID": {
      "type": "string",
      "format": "uuid",
      "description": "The Xero identifier for the Receipt e.g. e59a2c7f-1306-4078-a0f3-73537afcbba9"
    },
    "AmountPaid": {
      "type": "number",
      "format": "double",
      "readOnly": true,
      "x-is-money": true,
      "description": "The amount still to pay for an expense claim"
    },
    "ReportingDate": {
      "type": "string",
      "readOnly": true,
      "description": "The date the expense claim will be reported in Xero YYYY-MM-DD",
      "x-is-msdate": true
    },
    "ExpenseClaimID": {
      "type": "string",
      "format": "uuid",
      "description": "Xero generated unique identifier for an expense claim"
    },
    "PaymentDueDate": {
      "type": "string",
      "readOnly": true,
      "description": "The date when the expense claim is due to be paid YYYY-MM-DD",
      "x-is-msdate": true
    },
    "UpdatedDateUTC": {
      "type": "string",
      "example": "/Date(1573755038314)/",
      "readOnly": true,
      "description": "Last modified date UTC format",
      "x-is-msdate-time": true
    }
  },
  "externalDocs": {
    "url": "http://developer.xero.com/documentation/api/expense-claims/"
  }
}
object ExpenseClaims
{
  "type": "object",
  "properties": {
    "ExpenseClaims": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ExpenseClaim"
      }
    }
  },
  "x-isObjectArray": true
}
object ExternalLink
{
  "type": "object",
  "properties": {
    "Url": {
      "type": "string",
      "description": "URL for service e.g. http://twitter.com/xeroapi"
    },
    "LinkType": {
      "enum": [
        "Facebook",
        "GooglePlus",
        "LinkedIn",
        "Twitter",
        "Website"
      ],
      "type": "string",
      "description": "See External link types"
    },
    "Description": {
      "type": "string"
    }
  },
  "externalDocs": {
    "url": "http://developer.xero.com/documentation/api/organisation/"
  }
}
object HistoryRecord
{
  "type": "object",
  "properties": {
    "User": {
      "type": "string",
      "description": "has a value of 0"
    },
    "Changes": {
      "type": "string",
      "description": "Name of branding theme"
    },
    "DateUTC": {
      "type": "string",
      "example": "/Date(1573755038314)/",
      "readOnly": true,
      "description": "UTC timestamp of creation date of branding theme",
      "x-is-msdate-time": true
    },
    "Details": {
      "type": "string",
      "description": "details"
    }
  },
  "externalDocs": {
    "url": "https://developer.xero.com/documentation/api/history-and-notes"
  }
}
object HistoryRecords
{
  "type": "object",
  "properties": {
    "HistoryRecords": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/HistoryRecord"
      }
    }
  },
  "x-isObjectArray": true
}
object ImportSummary
{
  "type": "object",
  "properties": {
    "Accounts": {
      "$ref": "#/components/schemas/ImportSummaryAccounts"
    },
    "Organisation": {
      "$ref": "#/components/schemas/ImportSummaryOrganisation"
    }
  },
  "description": "A summary of the import from setup endpoint",
  "externalDocs": {
    "url": "https://developer.xero.com/documentation/api-guides/conversions"
  }
}
object ImportSummaryAccounts
{
  "type": "object",
  "properties": {
    "New": {
      "type": "integer",
      "format": "int32",
      "description": "The number of new accounts created"
    },
    "Total": {
      "type": "integer",
      "format": "int32",
      "description": "The total number of accounts in the org"
    },
    "Locked": {
      "type": "integer",
      "format": "int32",
      "description": "The number of locked accounts"
    },
    "System": {
      "type": "integer",
      "format": "int32",
      "description": "The number of system accounts"
    },
    "Deleted": {
      "type": "integer",
      "format": "int32",
      "description": "The number of accounts deleted"
    },
    "Errored": {
      "type": "integer",
      "format": "int32",
      "description": "The number of accounts that had an error"
    },
    "Present": {
      "type": "boolean"
    },
    "Updated": {
      "type": "integer",
      "format": "int32",
      "description": "The number of accounts updated"
    },
    "NewOrUpdated": {
      "type": "integer",
      "format": "int32",
      "description": "The number of new or updated accounts"
    }
  },
  "description": "A summary of the accounts changes"
}
object ImportSummaryObject
{
  "properties": {
    "ImportSummary": {
      "$ref": "#/components/schemas/ImportSummary"
    }
  },
  "externalDocs": {
    "url": "https://developer.xero.com/documentation/api-guides/conversions"
  }
}
object ImportSummaryOrganisation
{
  "type": "object",
  "properties": {
    "Present": {
      "type": "boolean"
    }
  }
}
object Invoice
{
  "type": "object",
  "properties": {
    "Url": {
      "type": "string",
      "description": "URL link to a source document – shown as “Go to [appName]” in the Xero app"
    },
    "Date": {
      "type": "string",
      "description": "Date invoice was issued – YYYY-MM-DD. If the Date element is not specified it will default to the current date based on the timezone setting of the organisation",
      "x-is-msdate": true
    },
    "Type": {
      "enum": [
        "ACCPAY",
        "ACCPAYCREDIT",
        "APOVERPAYMENT",
        "APPREPAYMENT",
        "ACCREC",
        "ACCRECCREDIT",
        "AROVERPAYMENT",
        "ARPREPAYMENT"
      ],
      "type": "string",
      "description": "See Invoice Types"
    },
    "Total": {
      "type": "number",
      "format": "double",
      "readOnly": true,
      "x-is-money": true,
      "description": "Total of Invoice tax inclusive (i.e. SubTotal + TotalTax). This will be ignored if it doesn’t equal the sum of the LineAmounts"
    },
    "Status": {
      "enum": [
        "DRAFT",
        "SUBMITTED",
        "DELETED",
        "AUTHORISED",
        "PAID",
        "VOIDED"
      ],
      "type": "string",
      "description": "See Invoice Status Codes"
    },
    "CISRate": {
      "type": "number",
      "format": "double",
      "readOnly": true,
      "x-is-money": true,
      "description": "CIS Deduction rate for the organisation"
    },
    "Contact": {
      "$ref": "#/components/schemas/Contact"
    },
    "DueDate": {
      "type": "string",
      "description": "Date invoice is due – YYYY-MM-DD",
      "x-is-msdate": true
    },
    "Payments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Payment"
      },
      "readOnly": true,
      "description": "See Payments"
    },
    "SubTotal": {
      "type": "number",
      "format": "double",
      "readOnly": true,
      "x-is-money": true,
      "description": "Total of invoice excluding taxes"
    },
    "TotalTax": {
      "type": "number",
      "format": "double",
      "readOnly": true,
      "x-is-money": true,
      "description": "Total tax on invoice"
    },
    "Warnings": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ValidationError"
      },
      "description": "Displays array of warning messages from the API"
    },
    "AmountDue": {
      "type": "number",
      "format": "double",
      "readOnly": true,
      "x-is-money": true,
      "description": "Amount remaining to be paid on invoice"
    },
    "HasErrors": {
      "type": "boolean",
      "default": "false",
      "example": false,
      "description": "A boolean to indicate if a invoice has an validation errors"
    },
    "InvoiceID": {
      "type": "string",
      "format": "uuid",
      "description": "Xero generated unique identifier for invoice"
    },
    "LineItems": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/LineItem"
      },
      "description": "See LineItems"
    },
    "Reference": {
      "type": "string",
      "description": "ACCREC only – additional reference number"
    },
    "AmountPaid": {
      "type": "number",
      "format": "double",
      "readOnly": true,
      "x-is-money": true,
      "description": "Sum of payments received for invoice"
    },
    "Attachments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Attachment"
      },
      "description": "Displays array of attachments from the API"
    },
    "CreditNotes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/CreditNote"
      },
      "readOnly": true,
      "description": "Details of credit notes that have been applied to an invoice"
    },
    "Prepayments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Prepayment"
      },
      "readOnly": true,
      "description": "See Prepayments"
    },
    "CISDeduction": {
      "type": "number",
      "format": "double",
      "readOnly": true,
      "x-is-money": true,
      "description": "CIS deduction for UK contractors"
    },
    "CurrencyCode": {
      "$ref": "#/components/schemas/CurrencyCode",
      "type": "string"
    },
    "CurrencyRate": {
      "type": "number",
      "format": "double",
      "x-is-money": true,
      "description": "The currency rate for a multicurrency invoice. If no rate is specified, the XE.com day rate is used. (max length = [18].[6])"
    },
    "IsDiscounted": {
      "type": "boolean",
      "readOnly": true,
      "description": "boolean to indicate if an invoice has a discount"
    },
    "Overpayments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Overpayment"
      },
      "readOnly": true,
      "description": "See Overpayments"
    },
    "InvoiceNumber": {
      "type": "string",
      "maxLength": 255,
      "description": "ACCREC – Unique alpha numeric code identifying invoice (when missing will auto-generate from your Organisation Invoice Settings) (max length = 255)"
    },
    "SentToContact": {
      "type": "boolean",
      "description": "Boolean to set whether the invoice in the Xero app should be marked as “sent”. This can be set only on invoices that have been approved"
    },
    "TotalDiscount": {
      "type": "number",
      "format": "double",
      "readOnly": true,
      "x-is-money": true,
      "description": "Total of discounts applied on the invoice line items"
    },
    "AmountCredited": {
      "type": "number",
      "format": "double",
      "readOnly": true,
      "x-is-money": true,
      "description": "Sum of all credit notes, over-payments and pre-payments applied to invoice"
    },
    "HasAttachments": {
      "type": "boolean",
      "default": "false",
      "example": false,
      "readOnly": true,
      "description": "boolean to indicate if an invoice has an attachment"
    },
    "UpdatedDateUTC": {
      "type": "string",
      "example": "/Date(1573755038314)/",
      "readOnly": true,
      "description": "Last modified date UTC format",
      "x-is-msdate-time": true
    },
    "BrandingThemeID": {
      "type": "string",
      "format": "uuid",
      "description": "See BrandingThemes"
    },
    "FullyPaidOnDate": {
      "type": "string",
      "readOnly": true,
      "description": "The date the invoice was fully paid. Only returned on fully paid invoices",
      "x-is-msdate": true
    },
    "LineAmountTypes": {
      "$ref": "#/components/schemas/LineAmountTypes",
      "type": "string"
    },
    "ValidationErrors": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ValidationError"
      },
      "description": "Displays array of validation error messages from the API"
    },
    "PlannedPaymentDate": {
      "type": "string",
      "description": "Shown on bills (Accounts Payable) when this has been set",
      "x-is-msdate": true
    },
    "RepeatingInvoiceID": {
      "type": "string",
      "format": "uuid",
      "description": "Xero generated unique identifier for repeating invoices"
    },
    "ExpectedPaymentDate": {
      "type": "string",
      "description": "Shown on sales invoices (Accounts Receivable) when this has been set",
      "x-is-msdate": true
    },
    "StatusAttributeString": {
      "type": "string",
      "description": "A string to indicate if a invoice status"
    }
  },
  "externalDocs": {
    "url": "http://developer.xero.com/documentation/api/invoices/"
  }
}
Load more schemas