# XeroApi
import StarterToolInfo from "@/app/_components/starter-tool-info";
import ToolInfo from "@/app/_components/tool-info";
import Badges from "@/app/_components/badges";
import TabbedCodeBlock from "@/app/_components/tabbed-code-block";
import TableOfContents from "@/app/_components/table-of-contents";
import ToolFooter from "@/app/_components/tool-footer";
import { Callout } from "nextra/components";
The XeroApi MCP Server provides a comprehensive set of tools for interacting with Xero accounting data. These tools let agents and apps:
- Access and manage core accounting entities: accounts, invoices, credit notes, payments, bank transactions/transfers, journals, manual journals, prepayments, overpayments, and reconciliations.
- Work with contacts, contact groups, purchase orders, quotes, items, budgets, and repeating invoices.
- Retrieve, download, and manage attachments across accounts, contacts, invoices, bank transactions, journals, purchase orders, quotes, receipts, and more (by ID or filename).
- Create and retrieve history/audit records for payments, invoices, payments/batch payments, bank transactions/transfers, purchase orders, quotes, receipts, items, journals, and repeating invoices.
- Run and fetch financial and management reports: balance sheet, profit & loss, trial balance, budget summary, bank summary, aged receivables/payables, executive summary, and custom reports.
- Manage organizational settings: organisation details, tenants/connections, CIS settings, currencies, tax rates, tracking categories/options, and branding themes.
- Create or delete resources where supported (e.g., accounts, inventory items, tracking categories/options, linked transactions, allocations, tenant connections) and perform setup actions such as setting financial setup (chart of accounts and conversion).
- Retrieve lists of users, contacts, payment services, batch payments, and a wide range of Xero entities for integration, reporting, reconciliation, and automation tasks.
## Available Tools
If you need to perform an action that's not listed here, you can [get in touch
with us](mailto:contact@arcade.dev) to request a new tool, or [create your own
tools](/guides/create-tools/tool-basics/build-mcp-server).
## XeroApi.RetrieveFullChartOfAccounts
Retrieves the full chart of accounts from Xero.
**Parameters**
- **xero_tenant_identifier** (`string`, required) Unique identifier for the Xero tenant to retrieve its accounts.
- **filter_by_attribute** (`string`, optional) Filter accounts by specific attributes or conditions using string syntax.
- **order_by_element** (`string`, optional) Specify a field to order the returned accounts (e.g., 'Name' or 'AccountType').
- **only_modified_since_timestamp** (`string`, optional) Specify a timestamp to return only records created or modified since that time. The timestamp should be in ISO 8601 format.
## XeroApi.RetrieveAccountDetails
Retrieve chart of accounts using a unique account ID.
**Parameters**
- **account_id** (`string`, required) Unique identifier for the Account object to retrieve specific account details.
- **xero_tenant_identifier** (`string`, required) Xero identifier for the tenant to retrieve the account details from.
## XeroApi.DeleteAccount
Delete a chart of accounts in Xero.
**Parameters**
- **account_id** (`string`, required) The unique identifier for the Account object to be deleted.
- **xero_tenant_identifier** (`string`, required) Xero identifier for the Tenant. Required to specify which tenant's account to delete.
## XeroApi.RetrieveAccountAttachments
Retrieve attachments for a specified account.
**Parameters**
- **account_id** (`string`, required) Unique identifier for the account object to retrieve attachments from.
- **tenant_identifier** (`string`, required) Xero identifier for the Tenant, used to specify which tenant's data to access.
## XeroApi.RetrieveAccountAttachment
Retrieve a specific account attachment by ID.
**Parameters**
- **account_unique_identifier** (`string`, required) Unique identifier for the Account object to retrieve the attachment from.
- **attachment_id** (`string`, required) Unique identifier for the attachment you want to retrieve from an account. This ID is necessary to specify the exact attachment you need.
- **xero_tenant_identifier** (`string`, required) Xero identifier for the Tenant. Required to specify which tenant's account attachment you want to retrieve.
- **mime_type_of_attachment** (`string`, required) The MIME type of the attachment file, such as image/jpg or application/pdf.
## XeroApi.RetrieveAccountAttachmentByFilename
Retrieve an attachment for a specific account by filename.
**Parameters**
- **account_id** (`string`, required) Unique identifier for the Account object in Xero.
- **attachment_file_name** (`string`, required) The name of the attachment to retrieve for a specific account.
- **tenant_identifier** (`string`, required) The unique Xero identifier for the Tenant. Required to access the specific tenant's attachments.
- **mime_type_of_attachment** (`string`, required) The MIME type of the attachment file to retrieve, such as image/jpg or application/pdf.
## XeroApi.RetrieveBatchPayments
Retrieve batch payments for invoices.
**Parameters**
- **tenant_identifier** (`string`, required) Xero identifier for the Tenant required to access its specific batch payment data.
- **filter_by_element** (`string`, optional) Apply a filter to the batch payments using any specified element.
- **order_by_element** (`string`, optional) Specify the element to sort the batch payments by. The value should be a string representing the element.
- **modified_since_timestamp** (`string`, optional) Timestamp to filter records modified or created since then. Format: ISO 8601 date and time.
## XeroApi.GetBatchPaymentDetails
Retrieve details of a specific batch payment by ID.
**Parameters**
- **batch_payment_id** (`string`, required) Unique identifier for the batch payment to retrieve details.
- **xero_tenant_id** (`string`, required) The unique Xero identifier for the tenant, necessary for accessing tenant-specific data.
## XeroApi.RetrieveBatchPaymentHistory
Retrieve the history of a specific batch payment.
**Parameters**
- **batch_payment_id** (`string`, required) Unique identifier for the batch payment to retrieve its history.
- **xero_tenant_id** (`string`, required) The unique identifier for the Xero tenant. Required to access specific tenant data.
## XeroApi.CreateBatchPaymentHistoryRecord
Creates a history record for a batch payment.
**Parameters**
- **batch_payment_id** (`string`, required) Unique identifier for the specific batch payment in Xero.
- **xero_tenant_identifier** (`string`, required) Xero identifier for Tenant. This is required to specify which tenant's batch payment history is being recorded.
- **idempotency_key** (`string`, optional) A unique string to prevent duplicate processing. Maximum 128 characters.
## XeroApi.RetrieveBankTransactions
Retrieve spent or received money transactions from Xero.
**Parameters**
- **xero_tenant_id** (`string`, required) Xero identifier for the Tenant, required to specify which account to access.
- **filter_by_element** (`string`, optional) Specify criteria to filter transactions by any element. Use valid filter expressions based on transaction fields.
- **order_transactions_by** (`string`, optional) Specify the element by which to order the transactions, such as date or amount.
- **transaction_page_number** (`integer`, optional) Specifies which page of up to 100 bank transactions to retrieve.
- **use_four_decimal_places** (`integer`, optional) Indicate if unit amounts should use four decimal places (e.g., 4).
- **records_per_page** (`integer`, optional) Specify the number of records to retrieve per page. This controls the pagination size.
- **modified_since_timestamp** (`string`, optional) Return records created or modified since this UTC timestamp (ISO 8601 format).
## XeroApi.RetrieveBankTransaction
Retrieve bank transaction details by ID.
**Parameters**
- **bank_transaction_id** (`string`, required) Unique identifier for a specific bank transaction in Xero.
- **xero_tenant_id** (`string`, required) The Xero identifier for the tenant (organization). Required to access the specific tenant's data.
- **use_four_decimal_places** (`integer`, optional) Option to use four decimal places for unit amounts. Specify '4' to enable.
## XeroApi.RetrieveBankTransactionAttachments
Retrieve attachments from a specific bank transaction.
**Parameters**
- **bank_transaction_id** (`string`, required) Xero generated unique identifier for a bank transaction, used to retrieve corresponding attachments.
- **xero_tenant_id** (`string`, required) The unique identifier for a Xero tenant, required to access specific tenant data.
## XeroApi.RetrieveBankTransactionAttachment
Retrieve a specific attachment from a bank transaction.
**Parameters**
- **bank_transaction_id** (`string`, required) Xero generated unique identifier for a bank transaction.
- **attachment_id** (`string`, required) Unique identifier for the Attachment object.
- **xero_tenant_identifier** (`string`, required) Xero unique identifier for the Tenant. This is required to specify which organization data is to be accessed.
- **attachment_mime_type** (`string`, required) The mime type of the attachment file to retrieve, such as image/jpeg or application/pdf.
## XeroApi.GetBankTransactionAttachment
Retrieve an attachment from a bank transaction by filename.
**Parameters**
- **bank_transaction_id** (`string`, required) Xero generated unique identifier for a bank transaction. Required to retrieve the correct attachment.
- **attachment_filename** (`string`, required) Name of the attachment to retrieve from the bank transaction.
- **xero_tenant_identifier** (`string`, required) The unique identifier for the Xero tenant associated with the bank transaction.
- **attachment_mime_type** (`string`, required) The MIME type of the attachment file to retrieve, such as image/jpg or application/pdf.
## XeroApi.GetBankTransactionHistory
Retrieve history of a specific bank transaction by ID.
**Parameters**
- **bank_transaction_id** (`string`, required) The unique identifier for a bank transaction generated by Xero. Use this ID to retrieve specific transaction history.
- **tenant_identifier** (`string`, required) Xero unique identifier for the tenant. Required to access tenant-specific data.
## XeroApi.CreateBankTransactionHistory
Creates a record in the bank transaction history.
**Parameters**
- **bank_transaction_id** (`string`, required) Xero-generated unique identifier for the bank transaction to create a history record.
- **tenant_id** (`string`, required) Xero identifier for the tenant. This is required to specify which Xero account the transaction history will be associated with.
- **idempotency_key** (`string`, optional) A unique key to prevent duplicate processing. Maximum 128 characters.
## XeroApi.RetrieveBankTransfers
Retrieve all bank transfers from Xero.
**Parameters**
- **xero_tenant_identifier** (`string`, required) A unique string identifier for the Xero tenant to retrieve bank transfers from.
- **filter_bank_transfers** (`string`, optional) String to filter bank transfer records by a specific element, such as status or date range.
- **order_by_element** (`string`, optional) Specify the field to order the bank transfer records by. Use the field names available in the Xero bank transfer dataset.
- **modified_since_timestamp** (`string`, optional) Filter records to only include those created or modified since this timestamp. Use ISO 8601 format (e.g., '2023-10-01T00:00:00Z').
## XeroApi.RetrieveBankTransfer
Retrieve details of a specific bank transfer using its ID.
**Parameters**
- **bank_transfer_id** (`string`, required) The unique identifier for a bank transfer generated by Xero.
- **tenant_id** (`string`, required) Xero identifier for the tenant. This is required to specify which tenant's data to access.
## XeroApi.RetrieveBankTransferAttachments
Retrieve attachments from a specific bank transfer in Xero.
**Parameters**
- **bank_transfer_id** (`string`, required) Xero-generated unique identifier for a bank transfer. Required to retrieve associated attachments.
- **tenant_identifier** (`string`, required) The unique Xero identifier for your tenant. This ID specifies which tenant the bank transfer belongs to.
## XeroApi.FetchBankTransferAttachment
Fetch a specific bank transfer attachment by ID.
**Parameters**
- **bank_transfer_unique_id** (`string`, required) Xero-generated unique identifier for a bank transfer. It is required to locate the specific transfer for the attachment.
- **attachment_id** (`string`, required) Unique identifier for the attachment object that you want to retrieve from a specific bank transfer.
- **tenant_identifier** (`string`, required) The Xero identifier for the tenant you want to access.
- **attachment_mime_type** (`string`, required) The MIME type of the attachment to retrieve, e.g., image/jpg, application/pdf.
## XeroApi.RetrieveBankTransferAttachment
Retrieve a bank transfer attachment by file name.
**Parameters**
- **bank_transfer_id** (`string`, required) Xero-generated unique identifier for a bank transfer. Required to specify which bank transfer's attachment is being retrieved.
- **attachment_file_name** (`string`, required) The name of the attachment file to retrieve from the bank transfer.
- **xero_tenant_identifier** (`string`, required) The unique identifier for the Xero tenant associated with the bank transfer.
- **attachment_mime_type** (`string`, required) The MIME type of the attachment file, such as 'image/jpg' or 'application/pdf'.
## XeroApi.GetBankTransferHistory
Retrieve specific bank transfer history by ID.
**Parameters**
- **bank_transfer_id** (`string`, required) Unique identifier for the Xero bank transfer needed to retrieve its history.
- **tenant_identifier** (`string`, required) Xero identifier for the tenant. Required to specify which tenant's bank transfer history to retrieve.
## XeroApi.CreateBankTransferHistory
Create a history record for a bank transfer.
**Parameters**
- **bank_transfer_id** (`string`, required) Xero generated unique identifier for the specific bank transfer to create a history record for.
- **xero_tenant_id** (`string`, required) The unique identifier for a Xero tenant. Required to specify which tenant's data to access.
- **idempotency_key** (`string`, optional) A unique string to safely retry requests without risk of duplication, limited to 128 characters.
## XeroApi.GetBrandingThemes
Retrieve all branding themes from Xero.
**Parameters**
- **xero_tenant_id** (`string`, required) The unique identifier for the Xero tenant to retrieve branding themes.
## XeroApi.RetrieveBrandingTheme
Retrieve details of a specific branding theme.
**Parameters**
- **branding_theme_id** (`string`, required) Unique identifier for a branding theme to retrieve its details.
- **tenant_identifier** (`string`, required) The Xero identifier for the Tenant. This is required to specify which tenant's branding theme to retrieve.
## XeroApi.GetPaymentServicesForBrandingTheme
Retrieve payment services for a specific branding theme.
**Parameters**
- **branding_theme_id** (`string`, required) Unique identifier for a Branding Theme to retrieve associated payment services.
- **xero_tenant_id** (`string`, required) Xero identifier for the Tenant. This unique ID is required to specify which tenant's data is being accessed.
## XeroApi.RetrieveBudgets
Retrieve a list of budgets from Xero.
**Parameters**
- **tenant_identifier** (`string`, required) The unique Xero identifier for the tenant. Required for accessing specific tenant data.
- **filter_by_budget_id** (`string`, optional) Filter to retrieve a specific budget by its BudgetID.
- **filter_start_date** (`string`, optional) The start date to filter budgets until. Expected format is YYYY-MM-DD.
- **filter_by_end_date** (`string`, optional) Specify the end date to filter the budgets. Use the format YYYY-MM-DD.
## XeroApi.RetrieveBudgetDetails
Retrieve detailed information about a budget including lines.
**Parameters**
- **budget_identifier** (`string`, required) Unique identifier for budgets. Required to retrieve specific budget details including budget lines.
- **tenant_identifier** (`string`, required) Xero identifier for the Tenant to specify which tenant's budget to retrieve.
- **filter_end_date** (`string`, optional) Specifies the end date to filter the budget data. Use the format YYYY-MM-DD.
- **filter_start_date** (`string`, optional) The start date from which to filter the budget details. Format must be YYYY-MM-DD.
## XeroApi.FetchAllXeroContacts
Retrieve all contacts from a Xero organization.
**Parameters**
- **tenant_identifier** (`string`, required) A unique string to identify the tenant in Xero.
- **filter_by_element** (`string`, optional) Specify conditions to filter contacts by any element within their data fields.
- **sort_order** (`string`, optional) Specifies the sorting order for contacts based on a specified element, such as name or date.
- **contact_ids** (`array[string]`, optional) Comma-separated list of ContactIDs to retrieve specific contacts. Use this to filter the contacts returned by their unique IDs in a single call.
- **pagination_page_number** (`integer`, optional) The specific page number to retrieve when fetching contacts. Each page returns up to 100 contacts.
- **search_term** (`string`, optional) A case-insensitive search term for filtering contacts by Name, FirstName, LastName, ContactNumber, or EmailAddress.
- **records_per_page** (`integer`, optional) Number of contact records to retrieve per page.
- **modified_since_timestamp** (`string`, optional) Retrieve only records created or modified after the specified timestamp. Use ISO 8601 format for the timestamp.
- **include_archived_contacts** (`boolean`, optional) Set to true to include contacts with a status of ARCHIVED in the response. False will exclude them.
- **retrieve_summary_only_contacts** (`boolean`, optional) Set to true to retrieve only lightweight contact fields, excluding computation-heavy data for faster API responses.
## XeroApi.GetXeroContactByNumber
Retrieve a contact from Xero by contact number.
**Parameters**
- **contact_number** (`string`, required) The unique contact number to identify a Xero contact; max length 50 characters.
- **xero_tenant_identifier** (`string`, required) Xero identifier for the tenant. It is required to specify which organization's data to retrieve.
## XeroApi.RetrieveXeroContact
Retrieve specific contact information from Xero.
**Parameters**
- **contact_id** (`string`, required) Provide the unique identifier for the contact to retrieve their information from Xero.
- **xero_tenant_identifier** (`string`, required) The unique identifier for the tenant in Xero, required to retrieve contact details.
## XeroApi.GetContactAttachments
Retrieve attachments for a Xero contact.
**Parameters**
- **contact_id** (`string`, required) Unique identifier for a contact in Xero.
- **xero_tenant_identifier** (`string`, required) The unique Xero tenant identifier for the organisation.
## XeroApi.RetrieveContactAttachment
Retrieve a specific contact attachment by ID.
**Parameters**
- **contact_id** (`string`, required) Unique identifier for a Contact in Xero to retrieve a specific attachment.
- **attachment_id** (`string`, required) Unique identifier for the Attachment object from a contact in Xero.
- **tenant_identifier** (`string`, required) The unique identifier for the tenant in Xero to access specific data connected to a tenant account.
- **attachment_mime_type** (`string`, required) The MIME type of the attachment file (e.g., image/jpeg, application/pdf).
## XeroApi.GetContactAttachment
Retrieve a contact's attachment by file name.
**Parameters**
- **contact_identifier** (`string`, required) Unique identifier for a contact in Xero to retrieve its specific attachment.
- **attachment_file_name** (`string`, required) Specify the name of the attachment to retrieve from the contact.
- **xero_tenant_identifier** (`string`, required) Xero identifier for the Tenant. This is required to specify which tenant's data should be accessed.
- **attachment_mime_type** (`string`, required) The MIME type of the attachment file, such as image/jpg or application/pdf.
## XeroApi.GetContactCisSettings
Retrieve CIS settings for a Xero contact.
**Parameters**
- **contact_identifier** (`string`, required) Unique identifier for a specific contact in Xero.
- **tenant_identifier** (`string`, required) Xero identifier for the tenant. Required for accessing the correct organization within Xero.
## XeroApi.GetContactHistory
Retrieve history records for a specific contact.
**Parameters**
- **contact_id** (`string`, required) Unique identifier for a contact to retrieve their history records.
- **tenant_identifier** (`string`, required) The unique Xero identifier for the tenant. Required to access specific tenant data.
## XeroApi.AddContactHistoryRecord
Create a new history record for a contact in Xero.
**Parameters**
- **contact_unique_identifier** (`string`, required) Unique identifier for a Contact in Xero. Required to specify which contact the history record is for.
- **tenant_identifier** (`string`, required) Xero identifier for the Tenant. Required to specify which tenant's contact history to update.
- **idempotency_key** (`string`, optional) A unique string up to 128 characters to safely retry requests without duplicate processing.
## XeroApi.RetrieveContactGroups
Retrieve contact group IDs and names from Xero.
**Parameters**
- **tenant_identifier** (`string`, required) Xero identifier for the Tenant. Required to access the correct tenant's contact groups.
- **filter_criteria** (`string`, optional) A string to filter contact groups based on specified criteria, using any element.
- **order_by** (`string`, optional) Specify the criteria to order the contact groups by. It can be any element to sort the results accordingly.
## XeroApi.RetrieveContactGroup
Retrieve a specific contact group by ID.
**Parameters**
- **contact_group_id** (`string`, required) Unique identifier for a Contact Group in Xero. Use this to retrieve specific group details.
- **xero_tenant_id** (`string`, required) Identifier for the Xero tenant needed to access specific tenant data.
## XeroApi.RemoveContactsFromGroup
Removes all contacts from a specified contact group in Xero.
**Parameters**
- **contact_group_id** (`string`, required) Unique identifier for the contact group to remove contacts from.
- **xero_tenant_identifier** (`string`, required) Xero identifier for the specific tenant required to access its data.
## XeroApi.RemoveContactFromGroup
Delete a specific contact from a contact group.
**Parameters**
- **contact_group_id** (`string`, required) Unique identifier for a contact group to specify which group the contact should be removed from.
- **contact_identifier** (`string`, required) Unique identifier for a contact to be removed from the group.
- **tenant_identifier** (`string`, required) Xero identifier for the tenant. Required for specifying the target tenant in requests.
## XeroApi.GetCreditNotes
Retrieve credit notes from the Xero service.
**Parameters**
- **tenant_identifier** (`string`, required) The unique identifier for the Xero tenant. Required to specify which tenant's credit notes to retrieve.
- **filter_by_element** (`string`, optional) A string to filter credit notes by specific criteria using any element.
- **sort_credit_notes** (`string`, optional) Specifies the order to retrieve credit notes, e.g., by date or amount.
- **page_number** (`integer`, optional) The page number to retrieve. Each page returns up to 100 credit notes with line items.
- **unit_decimal_places** (`integer`, optional) Specify the number of decimal places for unit amounts. For example, use 4 for four decimal places.
- **number_of_records_per_page** (`integer`, optional) Defines the number of credit notes to retrieve per page from the Xero service. This helps control the size of each result set.
- **modified_since_timestamp** (`string`, optional) Only retrieve records created or modified after this timestamp (in ISO 8601 format).
## XeroApi.RetrieveCreditNote
Retrieve a credit note using its unique ID.
**Parameters**
- **credit_note_id** (`string`, required) Unique identifier for the credit note to retrieve details from Xero.
- **tenant_identifier** (`string`, required) The unique Xero identifier for the tenant associated with the credit note. It is required to specify which tenant's data to access.
- **use_four_decimal_places** (`integer`, optional) Specify if four decimal places should be used for unit amounts. Default is false.
## XeroApi.GetCreditNoteAttachments
Fetch attachments for a specific credit note from Xero.
**Parameters**
- **credit_note_id** (`string`, required) Unique identifier for a specific Credit Note in Xero to fetch attachments.
- **tenant_identifier** (`string`, required) Xero identifier for the tenant. Required to specify which tenant's data to access.
## XeroApi.GetCreditNoteAttachment
Retrieve specific attachment from a credit note by ID.
**Parameters**
- **credit_note_id** (`string`, required) Unique identifier for the credit note you want to retrieve an attachment from.
- **attachment_id** (`string`, required) Unique identifier for the attachment object to be retrieved.
- **xero_tenant_identifier** (`string`, required) Xero identifier for the Tenant. It's required to specify which organization to access.
- **attachment_mime_type** (`string`, required) The MIME type of the attachment file to retrieve, such as image/jpg or application/pdf.
## XeroApi.RetrieveCreditNoteAttachment
Retrieve a specific credit note attachment by file name.
**Parameters**
- **credit_note_id** (`string`, required) Unique identifier for a Credit Note. Use this ID to specify which credit note's attachment you want to retrieve.
- **attachment_file_name** (`string`, required) The name of the attachment to be retrieved from the credit note (e.g., invoice.pdf).
- **xero_tenant_identifier** (`string`, required) Unique identifier for the Xero Tenant. Required to specify which tenant's data to access.
- **attachment_mime_type** (`string`, required) The MIME type of the attachment file to retrieve, such as 'image/jpg' or 'application/pdf'.
## XeroApi.GetCreditNotePdf
Retrieve a credit note as a PDF file.
**Parameters**
- **credit_note_id** (`string`, required) Unique identifier for the credit note to retrieve as a PDF.
- **tenant_identifier** (`string`, required) Xero identifier for the tenant to retrieve the specific credit note PDF.
## XeroApi.DeleteCreditNoteAllocation
Remove an allocation from a specific credit note.
**Parameters**
- **credit_note_unique_id** (`string`, required) Unique identifier for a specific credit note to delete the allocation from.
- **allocation_id** (`string`, required) Unique identifier for the Allocation object needing deletion from a credit note.
- **xero_tenant_id** (`string`, required) Unique Xero identifier for the Tenant. Required to specify which tenant's data is being accessed.
## XeroApi.GetCreditNoteHistory
Retrieve history records of a specific credit note.
**Parameters**
- **credit_note_id** (`string`, required) Unique identifier for a specific credit note. Required to retrieve its history records.
- **xero_tenant_id** (`string`, required) The unique identifier for a Xero tenant. Required to access tenant-specific data.
## XeroApi.FetchCreditNoteHistory
Retrieve the history of a specific credit note.
**Parameters**
- **credit_note_id** (`string`, required) Unique identifier for the credit note whose history you want to retrieve.
- **xero_tenant_id** (`string`, required) Xero identifier for the tenant. Required to specify which tenant's credit note history to retrieve.
- **idempotency_key** (`string`, optional) String to safely retry requests without creating duplicates. Max 128 characters.
## XeroApi.GetXeroCurrencies
Retrieve currencies from your Xero organization.
**Parameters**
- **xero_tenant_identifier** (`string`, required) Xero identifier for the tenant. Required to access organization-specific data.
- **filter_criteria** (`string`, optional) A string to filter the currencies based on specific criteria, such as currency code or name.
- **order_by** (`string`, optional) Specify the element to order the currencies by. Accepts a string corresponding to an element in the currency data.
## XeroApi.RetrieveExpenseClaims
Fetches expense claims from Xero.
**Parameters**
- **xero_tenant_identifier** (`string`, required) The unique identifier for the Xero tenant required to specify which organization's data to retrieve.
- **filter_by_element** (`string`, optional) Apply a filter based on specific elements in the expense claims.
- **order_by** (`string`, optional) Specify the element by which to order the expense claims, such as date or amount.
- **modified_since_timestamp** (`string`, optional) Retrieve records created or modified since this timestamp in ISO 8601 format (e.g., '2023-10-04T00:00:00Z').
## XeroApi.RetrieveExpenseClaim
Retrieve details of a specific expense claim by ID.
**Parameters**
- **expense_claim_id** (`string`, required) Unique identifier for an expense claim to retrieve its details.
- **xero_tenant_id** (`string`, required) Xero tenant identifier for the specific business or organization you are retrieving the expense claim from.
## XeroApi.RetrieveExpenseClaimHistory
Retrieve the history of a specific expense claim.
**Parameters**
- **expense_claim_id** (`string`, required) Unique identifier for retrieving the specific expense claim history.
- **xero_tenant_id** (`string`, required) Xero identifier for the tenant. This is required to specify which tenant's data to access.
## XeroApi.AddExpenseClaimHistory
Creates a history record for an expense claim.
**Parameters**
- **expense_claim_id** (`string`, required) Unique identifier for the specific expense claim to add a history record.
- **xero_tenant_id** (`string`, required) The unique identifier for the Xero tenant. This is required to specify which tenant the expense claim history record is associated with.
- **idempotency_key** (`string`, optional) A unique string (max 128 characters) to safely retry requests without duplicating processing.
## XeroApi.RetrieveInvoices
Retrieve sales invoices or purchase bills from Xero.
**Parameters**
- **xero_tenant_id** (`string`, required) Unique identifier for a Xero tenant to retrieve invoices specific to that tenant.
- **filter_by_condition** (`string`, optional) Filter using a condition expression defined on any element, similar to a SQL WHERE clause.
- **order_by** (`string`, optional) Specify the criteria for ordering invoices, such as date or amount.
- **invoice_ids** (`array[string]`, optional) Comma-separated list of Invoice IDs to filter results.
- **filter_by_invoice_numbers** (`array[string]`, optional) Filter results by providing a list of invoice numbers. Each item should be a string representing one invoice number.
- **filter_contact_ids** (`array[string]`, optional) Comma-separated list of ContactIDs to filter invoices.
- **filter_by_statuses** (`array[string]`, optional) Filter invoices by a list of statuses for improved response times. Use explicit parameters instead of OR conditions.
- **page_number** (`integer`, optional) Specify the page number to retrieve. Up to 100 invoices per page can be returned.
- **unit_decimal_places** (`integer`, optional) Specify the number of decimal places for unit amounts, e.g., 4 for four decimal places.
- **records_per_page** (`integer`, optional) Specify the number of invoice records to retrieve per page.
- **search_term** (`string`, optional) A case-insensitive search parameter for fields like InvoiceNumber and Reference.
- **modified_since_timestamp** (`string`, optional) Return only records created or modified since this timestamp. Use the format 'YYYY-MM-DDTHH:MM:SS'.
- **include_archived_invoices** (`boolean`, optional) Set to true to include invoices with a status of ARCHIVED in the response.
- **filter_by_created_by_my_app** (`boolean`, optional) Set to true to retrieve only invoices created by your app.
- **retrieve_summary_only** (`boolean`, optional) Set to true to retrieve a smaller, lightweight version of the response for quicker API calls, excluding computation-heavy fields.
## XeroApi.GetInvoiceDetails
Retrieve a specific invoice using its unique ID.
**Parameters**
- **invoice_identifier** (`string`, required) Unique identifier for the invoice to be retrieved.
- **xero_tenant_id** (`string`, required) Xero identifier for the Tenant. Used to specify which tenant's invoice is retrieved.
- **unit_decimal_places** (`integer`, optional) Specify the number of decimal places to use for unit amounts, e.g., 4 for four decimal places.
## XeroApi.RetrieveInvoicePdf
Retrieve an invoice or purchase bill as a PDF.
**Parameters**
- **invoice_id** (`string`, required) Unique identifier for the invoice to retrieve as a PDF from Xero.
- **tenant_identifier** (`string`, required) The unique Xero identifier for the tenant. This is required to specify the account from which to retrieve the invoice PDF.
## XeroApi.RetrieveInvoiceAttachments
Retrieve attachments for a specific invoice or bill.
**Parameters**
- **invoice_id** (`string`, required) Unique identifier for the invoice to retrieve attachments from.
- **tenant_identifier** (`string`, required) Xero identifier for the Tenant that owns the invoice.
## XeroApi.RetrieveInvoiceAttachmentById
Retrieve a specific invoice attachment by ID.
**Parameters**
- **invoice_id** (`string`, required) The unique identifier for the invoice to retrieve the attachment from.
- **attachment_id** (`string`, required) Unique identifier for the attachment object in Xero.
- **tenant_identifier** (`string`, required) Xero identifier for the tenant. Required to specify the tenant from which the attachment is being retrieved.
- **attachment_mime_type** (`string`, required) The MIME type of the attachment file, e.g., image/jpg or application/pdf.
## XeroApi.GetInvoiceAttachment
Retrieve an attachment from an invoice by filename.
**Parameters**
- **invoice_id** (`string`, required) Unique identifier for the invoice from which to retrieve the attachment.
- **attachment_file_name** (`string`, required) Specify the exact name of the attachment to retrieve from the invoice or purchase bill.
- **tenant_identifier** (`string`, required) Xero identifier for the Tenant to specify which organization's data to access.
- **attachment_mime_type** (`string`, required) The MIME type of the attachment file being retrieved, such as image/jpg or application/pdf.
## XeroApi.RetrieveOnlineInvoiceUrl
Retrieve a URL for viewing an online invoice.
**Parameters**
- **invoice_identifier** (`string`, required) Unique identifier for the invoice to retrieve its online URL.
- **xero_tenant_id** (`string`, required) Xero tenant identifier needed to retrieve the correct online invoice.
## XeroApi.RetrieveInvoiceHistory
Retrieve history of a specific invoice.
**Parameters**
- **invoice_id** (`string`, required) Unique identifier for the invoice to retrieve its history.
- **tenant_identifier** (`string`, required) Xero identifier for the tenant. This is required to specify which tenant's data to access.
## XeroApi.CreateInvoiceHistory
Create a history record for a specific invoice.
**Parameters**
- **invoice_id** (`string`, required) Unique identifier for the invoice. This is required to create a history record for the specified invoice in Xero.
- **tenant_identifier** (`string`, required) Xero identifier for the Tenant. Required for specifying which tenant the invoice history belongs to.
- **idempotency_key** (`string`, optional) A string up to 128 characters to safely retry requests without duplicate processing.
## XeroApi.GetInvoiceReminderSettings
Retrieve invoice reminder settings from Xero.
**Parameters**
- **xero_tenant_id** (`string`, required) The unique identifier for the Xero tenant. This is required to access specific tenant data.
## XeroApi.GetItems
Retrieve items from Xero.
**Parameters**
- **xero_tenant_id** (`string`, required) The unique identifier for a Xero tenant. Required to specify which tenant's data to retrieve.
- **filter_criteria** (`string`, optional) Filter items by specific criteria using any element such as field names or conditions.
- **order_by_element** (`string`, optional) Specify the sorting order of items by any element, such as name or price.
- **unit_decimal_places** (`integer`, optional) Defines the number of decimal places for unit amounts, e.g., 4 for four decimal places.
- **modified_since_timestamp** (`string`, optional) Fetch records created or modified since the provided timestamp (e.g., '2023-01-01T00:00:00Z').
## XeroApi.RetrieveXeroItem
Retrieve a specific item from Xero using its ID.
**Parameters**
- **item_identifier** (`string`, required) The unique identifier for the item in Xero. This is required to retrieve specific item details.
- **xero_tenant_identifier** (`string`, required) Xero identifier for the Tenant. This is required to specify which tenant's data should be accessed.
- **use_unit_decimal_places** (`integer`, optional) Specify the number of unit decimal places to use, e.g., 4 for four decimal places in unit amounts.
## XeroApi.DeleteInventoryItem
Delete a specific item from inventory.
**Parameters**
- **item_id** (`string`, required) Unique identifier for the item to be deleted.
- **tenant_identifier** (`string`, required) The unique identifier for the Xero tenant to specify which tenant's data to access.
## XeroApi.GetItemHistory
Retrieve history for a specific item from Xero.
**Parameters**
- **item_id** (`string`, required) Unique identifier for the item whose history you want to retrieve in Xero.
- **xero_tenant_id** (`string`, required) Provide the unique Xero identifier associated with the Tenant to access its data.
## XeroApi.CreateItemHistory
Creates a history record for a specific item in Xero.
**Parameters**
- **item_id** (`string`, required) Unique identifier for the item to create a history record for in Xero.
- **tenant_identifier** (`string`, required) Xero identifier for the tenant, required to specify which tenant's item history is being updated.
- **idempotency_key** (`string`, optional) A unique key to ensure request retrying without duplication, max 128 characters.
## XeroApi.GetFinancialJournals
Retrieve financial journal entries from Xero.
**Parameters**
- **tenant_identifier** (`string`, required) The unique Xero identifier for the tenant. Required to specify which tenant's journals are retrieved.
- **journal_number_offset** (`integer`, optional) Specify the journal number offset. Journals with a number greater than this will be returned.
- **modified_since_timestamp** (`string`, optional) Return records created or modified since this timestamp. Use a string format like 'YYYY-MM-DDTHH:MM:SSZ'.
- **retrieve_cash_basis_journals** (`boolean`, optional) Set to true to retrieve journals on a cash basis. Defaults to false for accrual basis.
## XeroApi.RetrieveSpecificJournal
Retrieve a specific journal using its unique ID.
**Parameters**
- **journal_id** (`string`, required) Unique identifier for the journal to be retrieved.
- **xero_tenant_identifier** (`string`, required) A unique identifier for the Xero tenant. Required to specify which tenant's journal should be accessed.
## XeroApi.RetrieveJournalByNumber
Retrieve a specific journal by its unique number.
**Parameters**
- **journal_number** (`integer`, required) The unique number identifying the journal entry to retrieve.
- **tenant_identifier** (`string`, required) The unique identifier for a Xero tenant to specify the context for the journal retrieval.
## XeroApi.RetrieveLinkedTransactions
Retrieve linked transactions from Xero.
**Parameters**
- **tenant_identifier** (`string`, required) The Xero identifier for a specific tenant. Required for identifying the tenant whose linked transactions are being retrieved.
- **page_number** (`integer`, optional) Specify the page number to retrieve in paginated results, starting from 1.
- **linked_transaction_id** (`string`, optional) The Xero identifier for a Linked Transaction to retrieve specific billable expenses.
- **source_transaction_id** (`string`, optional) Filter by SourceTransactionID to get linked transactions from a specific ACCPAY invoice.
- **filter_by_contact_id** (`string`, optional) Filter results by the customer's ContactID to get linked transactions for a specific customer.
- **filter_by_status** (`string`, optional) Filter linked transactions by status when combined with ContactID. Retrieves transactions associated with a customer based on this status.
- **filter_by_target_transaction_id** (`string`, optional) Filter linked transactions by TargetTransactionID to get those allocated to a specific ACCREC invoice.
## XeroApi.GetLinkedTransaction
Retrieve specific linked transaction details by ID.
**Parameters**
- **linked_transaction_id** (`string`, required) Unique identifier for the linked transaction to be retrieved.
- **tenant_id** (`string`, required) Xero tenant identifier for accessing the correct organization.
## XeroApi.DeleteLinkedTransaction
Delete a specific linked transaction.
**Parameters**
- **linked_transaction_id** (`string`, required) Unique identifier for the linked transaction to be deleted.
- **xero_tenant_identifier** (`string`, required) Provide the unique Xero identifier for the tenant to specify the context of the deletion.
## XeroApi.RetrieveManualJournals
Retrieve manual journals from Xero.
**Parameters**
- **tenant_identifier** (`string`, required) The unique Xero identifier for the Tenant to retrieve manual journals from.
- **filter_criteria** (`string`, optional) Filter manual journals based on specified criteria, such as date or amount.
- **order_by_element** (`string`, optional) Specify the element to order the results by. Use field names like date, amount, etc.
- **page_number** (`integer`, optional) The page number to retrieve, e.g., page=1. Returns up to 100 manual journals per call.
- **records_per_page** (`integer`, optional) Specify the number of manual journal records to retrieve per page.
- **modified_since_timestamp** (`string`, optional) Retrieve records created or modified since this timestamp (ISO 8601 format).
## XeroApi.RetrieveManualJournal
Retrieve details of a specific manual journal.
**Parameters**
- **manual_journal_id** (`string`, required) Unique identifier for the manual journal you want to retrieve.
- **xero_tenant_id** (`string`, required) The unique identifier for a Xero tenant. Required to access tenant-specific data.
## XeroApi.RetrieveJournalAttachments
Retrieve attachments for a specific manual journal.
**Parameters**
- **manual_journal_id** (`string`, required) The unique identifier for a specific manual journal to retrieve its attachments.
- **tenant_id** (`string`, required) The unique Xero identifier for the tenant to access the manual journal attachments.
## XeroApi.RetrieveJournalAttachment
Retrieve a specific attachment from a manual journal using its ID.
**Parameters**
- **manual_journal_id** (`string`, required) Unique identifier for the manual journal from which to retrieve the attachment.
- **attachment_id** (`string`, required) Provide the unique identifier for the attachment object to retrieve it from a manual journal.
- **xero_tenant_id** (`string`, required) The unique Xero identifier for the tenant. Required to specify which tenant's data to access.
- **attachment_mime_type** (`string`, required) Specify the mime type of the attachment (e.g., image/jpg, application/pdf) to retrieve.
## XeroApi.GetJournalAttachmentByFilename
Retrieve a manual journal attachment by file name.
**Parameters**
- **manual_journal_id** (`string`, required) Unique identifier for the manual journal. Required to retrieve the specific attachment.
- **attachment_file_name** (`string`, required) The name of the attachment file to retrieve from the manual journal.
- **xero_tenant_identifier** (`string`, required) The unique identifier for the Xero tenant, used to specify the particular organization's data to access.
- **attachment_file_mime_type** (`string`, required) The MIME type of the attachment file, such as image/jpeg or application/pdf.
## XeroApi.GetManualJournalHistory
Retrieve history for a specific manual journal.
**Parameters**
- **manual_journal_id** (`string`, required) Unique identifier for the manual journal. Used to retrieve its historical details from Xero.
- **xero_tenant_id** (`string`, required) Xero identifier for a specific tenant. This is required to identify which tenant's data to retrieve.
## XeroApi.CreateJournalHistoryRecord
Creates a history record for a specific manual journal.
**Parameters**
- **manual_journal_id** (`string`, required) Unique identifier for a specific manual journal in Xero.
- **tenant_identifier** (`string`, required) Xero identifier for the tenant is required to specify which tenant's manual journal is being updated.
- **idempotency_key** (`string`, optional) A unique string, up to 128 characters, to safely retry requests without duplicate processing.
## XeroApi.GetXeroOrganisationDetails
Retrieves Xero organisation details.
**Parameters**
- **xero_tenant_id** (`string`, required) The unique identifier for the Xero tenant. This ID is required to specify which organisation's details to retrieve.
## XeroApi.RetrieveXeroOrganisationActions
Retrieve key actions allowed in Xero organisation.
**Parameters**
- **xero_tenant_id** (`string`, required) Xero identifier for the tenant to specify which organisation's actions to retrieve.
## XeroApi.GetCisSettings
Retrieve CIS settings for a Xero organisation.
**Parameters**
- **organisation_id** (`string`, required) The unique Xero identifier for the organisation to retrieve CIS settings for.
- **xero_tenant_identifier** (`string`, required) Xero identifier for the Tenant. Required to specify which tenant's CIS settings to retrieve.
## XeroApi.RetrieveOverpayments
Retrieve overpayments from the accounting system.
**Parameters**
- **tenant_identifier** (`string`, required) The unique identifier for the Xero tenant to retrieve overpayments for.
- **filter_criteria** (`string`, optional) Filter overpayments by a specific element or condition. Use syntax like "Property=value" for filtering.
- **order_by_element** (`string`, optional) Specify the element by which to order the retrieved overpayments. Accepts any valid field.
- **page_number** (`integer`, optional) The page number for retrieving overpayments. Up to 100 overpayments will be returned per page.
- **unit_decimal_places** (`integer`, optional) The number of decimal places to use for unit amounts. Accepts up to four decimals.
- **records_per_page** (`integer`, optional) Specify the number of records to retrieve per page. Determines the page size for the results.
- **records_modified_since** (`string`, optional) Return records created or modified after the specified timestamp in ISO 8601 format.
## XeroApi.RetrieveSpecificOverpayment
Retrieve details of a specific overpayment by ID.
**Parameters**
- **overpayment_id** (`string`, required) Unique identifier for the overpayment to be retrieved. This ID is required to fetch the specific details of the overpayment from Xero.
- **xero_tenant_identifier** (`string`, required) The unique identifier for the Xero tenant. Required to specify which organization's data to access.
## XeroApi.DeleteOverpaymentAllocation
Delete an allocation from an overpayment in Xero.
**Parameters**
- **overpayment_id** (`string`, required) Unique identifier for a specific overpayment in Xero.
- **allocation_id** (`string`, required) Unique identifier for the Allocation object to be deleted.
- **xero_tenant_identifier** (`string`, required) Xero identifier for the tenant. Required to specify which tenant's data to access.
## XeroApi.GetOverpaymentHistory
Retrieve history records for a specific overpayment in Xero.
**Parameters**
- **overpayment_id** (`string`, required) Unique identifier for a specific overpayment in Xero.
- **xero_tenant_id** (`string`, required) Unique identifier for the tenant in Xero. Used to specify which tenant's data to access.
## XeroApi.RecordOverpaymentHistory
Creates a history record for a specific overpayment.
**Parameters**
- **overpayment_id** (`string`, required) Unique identifier for an overpayment that you want to create a history record for.
- **xero_tenant_id** (`string`, required) The unique identifier for the Xero tenant. Required to specify which tenant to apply the overpayment history record to.
- **idempotency_key** (`string`, optional) A unique string (max 128 characters) for safely retrying requests without duplicate processing.
## XeroApi.FetchInvoicePayments
Retrieve payments for invoices and credit notes in Xero.
**Parameters**
- **xero_tenant_identifier** (`string`, required) Xero identifier for the Tenant. This is required to access the specific tenant's data.
- **filter_condition** (`string`, optional) Specify the filter condition for retrieving payments, based on any element.
- **order_by** (`string`, optional) Specify the order of payments by any element, such as date or amount.
- **page_number** (`integer`, optional) The page number to retrieve, starting from 1. Up to 100 payments are returned per page.
- **records_per_page** (`integer`, optional) Specify the number of records to retrieve per page, up to a maximum of 100.
- **modified_since_timestamp** (`string`, optional) Only records created or modified since this timestamp will be retrieved. Use ISO 8601 format (e.g., 'YYYY-MM-DDTHH:MM:SSZ').
## XeroApi.RetrieveInvoicePayment
Retrieve specific payment details using a payment ID.
**Parameters**
- **payment_id** (`string`, required) Unique identifier for the payment, used to retrieve specific payment details in Xero.
- **xero_tenant_id** (`string`, required) Xero identifier for the tenant. This is required to specify which organization's data to access.
## XeroApi.RetrievePaymentHistory
Retrieve the history records of a specific payment.
**Parameters**
- **payment_identifier** (`string`, required) Unique identifier for a specific payment to retrieve its history.
- **tenant_identifier** (`string`, required) Xero identifier for the tenant. Used to specify which tenant's data to access.
## XeroApi.CreatePaymentHistoryRecord
Create a history record for a specific payment.
**Parameters**
- **payment_identifier** (`string`, required) Unique identifier for a specific payment in Xero.
- **xero_tenant_id** (`string`, required) The unique identifier for the Xero tenant. This is required to specify which tenant's data the action applies to.
- **idempotency_key** (`string`, optional) A unique key to safely retry requests and prevent duplicate processing. Maximum 128 characters.
## XeroApi.RetrievePaymentServices
Retrieve available payment services from Xero.
**Parameters**
- **xero_tenant_id** (`string`, required) Unique identifier for the Xero tenant. Required to retrieve specific payment services for the tenant.
## XeroApi.RetrievePrepayments
Retrieve prepayment details from Xero.
**Parameters**
- **xero_tenant_identifier** (`string`, required) The unique Xero identifier for the Tenant. Required for specifying which account's prepayments to retrieve.
- **filter_condition** (`string`, optional) Provide a filter condition to specify which prepayments to retrieve.
- **order_criteria** (`string`, optional) Specifies the order of elements. Use field names for custom sorting, such as 'Date ASC' or 'Amount DESC'.
- **page_number** (`integer`, optional) Specify the page number to retrieve, up to 100 prepayments per page.
- **unit_decimal_places** (`integer`, optional) Specify the number of decimal places (e.g., 4) for unit amounts. Use for precise calculations.
- **records_per_page** (`integer`, optional) The number of prepayment records to retrieve per page. This controls how many results are returned in a single call.
- **modified_since_timestamp** (`string`, optional) Only return records created or modified since the specified timestamp (e.g., '2023-10-01T00:00:00Z').
## XeroApi.GetPrepaymentDetails
Retrieve details of a specified prepayment from Xero.
**Parameters**
- **prepayment_id** (`string`, required) The unique identifier for the prepayment you want to retrieve.
- **xero_tenant_id** (`string`, required) The unique Xero identifier for the tenant. Required to retrieve specific prepayment data.
## XeroApi.DeletePrepaymentAllocation
Delete an allocation from a prepayment in Xero.
**Parameters**
- **prepayment_id** (`string`, required) Unique identifier for a PrePayment. Required to specify which prepayment the allocation will be deleted from.
- **allocation_id** (`string`, required) Unique identifier for the Allocation object to be deleted from a prepayment.
- **xero_tenant_identifier** (`string`, required) Xero identifier for the tenant in which the prepayment allocation deletion will occur.
## XeroApi.GetPrepaymentHistory
Retrieve history for a specific prepayment.
**Parameters**
- **prepayment_id** (`string`, required) Unique identifier for the prepayment to retrieve its history.
- **xero_tenant_id** (`string`, required) Unique identifier for the Xero tenant, required to access its data.
## XeroApi.CreatePrepaymentHistory
Creates a history record for a specific prepayment.
**Parameters**
- **prepayment_id** (`string`, required) Unique identifier for the specific PrePayment to create a history record for.
- **xero_tenant_id** (`string`, required) Xero identifier for the Tenant. This is required to specify which tenant's data the prepayment history applies to.
- **idempotency_key** (`string`, optional) A unique string to safely retry requests without duplicate processing, up to 128 characters.
## XeroApi.RetrievePurchaseOrders
Retrieve purchase orders from Xero.
**Parameters**
- **xero_tenant_id** (`string`, required) Unique identifier for the Xero tenant to access specific organization's data.
- **filter_by_status** (`string`, optional) Filter purchase orders by status. Accepted values are: 'DRAFT', 'SUBMITTED', 'AUTHORISED', 'BILLED', 'DELETED'.
- **filter_by_start_date** (`string`, optional) Specify the start date for filtering purchase orders. Use format 'YYYY-MM-DD'.
- **filter_by_end_date** (`string`, optional) Filter purchase orders by end date (format: YYYY-MM-DD).
- **order_by_element** (`string`, optional) Specifies the element by which to sort the purchase orders, such as date or status. Accepts any valid field name.
- **page_number** (`integer`, optional) Specifies the page of results to retrieve. Increment to access subsequent pages of purchase orders.
- **records_per_page** (`integer`, optional) Specify the number of purchase order records to retrieve per page.
- **modified_since_timestamp** (`string`, optional) Timestamp to filter records created or modified since this time. Use ISO 8601 format (e.g., '2023-01-01T00:00:00Z').
## XeroApi.GetPurchaseOrderPdf
Retrieve a purchase order as a PDF using its ID.
**Parameters**
- **purchase_order_id** (`string`, required) Unique identifier for a purchase order to retrieve it as a PDF.
- **tenant_identifier** (`string`, required) The Xero identifier for the Tenant. Required to specify which tenant's data to access.
## XeroApi.RetrievePurchaseOrder
Retrieve details of a specific purchase order by ID.
**Parameters**
- **purchase_order_id** (`string`, required) Unique identifier for a purchase order. Required to retrieve specific purchase order details.
- **xero_tenant_id** (`string`, required) Xero identifier for the tenant. This is required to specify which tenant's purchase order to retrieve.
## XeroApi.RetrievePurchaseOrderByNumber
Fetches a purchase order using its unique number.
**Parameters**
- **purchase_order_number** (`string`, required) Unique identifier for the purchase order to be fetched.
- **xero_tenant_id** (`string`, required) Unique identifier for the Xero tenant. Required to specify the account from which to retrieve the purchase order.
## XeroApi.RetrievePurchaseOrderHistory
Retrieve the history of a specific purchase order.
**Parameters**
- **purchase_order_id** (`string`, required) Unique identifier for the purchase order to retrieve its history.
- **tenant_identifier** (`string`, required) Xero identifier for the tenant, required to specify which organization data belongs to.
## XeroApi.CreatePurchaseOrderHistory
Create a history record for a purchase order.
**Parameters**
- **purchase_order_id** (`string`, required) Unique identifier for a Purchase Order. Pass the specific ID for which a history record will be created.
- **tenant_identifier** (`string`, required) The unique Xero identifier for the tenant. Required for API requests.
- **idempotency_key** (`string`, optional) A unique key to safely retry requests without duplicate processing; 128 character max.
## XeroApi.RetrievePurchaseOrderAttachments
Retrieve attachments for a specific purchase order.
**Parameters**
- **purchase_order_id** (`string`, required) Unique identifier for a purchase order to retrieve its attachments.
- **xero_tenant_id** (`string`, required) The unique Xero identifier for the tenant linked to the purchase order. Required to authenticate and access tenant-specific data.
## XeroApi.FetchPurchaseOrderAttachment
Retrieve a specific attachment from a purchase order.
**Parameters**
- **purchase_order_id** (`string`, required) Unique identifier for a Purchase Order to retrieve a specific attachment.
- **attachment_id** (`string`, required) Unique identifier for the attachment object to be retrieved.
- **xero_tenant_id** (`string`, required) Xero identifier for the Tenant. This is required to specify which organization the request is for.
- **attachment_mime_type** (`string`, required) The MIME type of the attachment file to retrieve, e.g., image/jpg, application/pdf.
## XeroApi.RetrievePoAttachmentByFilename
Retrieve a purchase order attachment by filename.
**Parameters**
- **purchase_order_id** (`string`, required) Unique identifier for the purchase order you want to retrieve the attachment from.
- **attachment_file_name** (`string`, required) Name of the attachment file to be retrieved from the purchase order.
- **xero_tenant_identifier** (`string`, required) Xero unique identifier for the tenant organization. Required to specify which organization's data to retrieve.
- **attachment_mime_type** (`string`, required) The MIME type of the attachment file to retrieve, e.g., image/jpg or application/pdf.
## XeroApi.RetrieveSalesQuotes
Retrieve sales quotes from Xero.
**Parameters**
- **xero_tenant_id** (`string`, required) Xero tenant identifier for accessing the specific account's data.
- **filter_start_date** (`string`, optional) Filter quotes issued after a specified date in YYYY-MM-DD format.
- **filter_date_to** (`string`, optional) Filter for sales quotes before a specified date in YYYY-MM-DD format.
- **expiry_date_after** (`string`, optional) Filter to retrieve quotes expiring after the specified date. Format: YYYY-MM-DD.
- **filter_expiry_date_before** (`string`, optional) Filter for quotes expiring before a specified date (YYYY-MM-DD).
- **contact_id** (`string`, optional) Filter the sales quotes by specifying the contact ID to which they belong.
- **quote_status** (`string`, optional) Filter quotes by their status (e.g., DRAFT, SENT).
- **page_number** (`integer`, optional) The page number to retrieve, allowing pagination through quotes. Each page returns up to 100 quotes.
- **order_by_element** (`string`, optional) Specify the element to order the sales quotes by.
- **quote_number_filter** (`string`, optional) Filter sales quotes by specifying the quote number (e.g., QU-0001).
- **modified_since_timestamp** (`string`, optional) Retrieve records created or modified after this timestamp.
## XeroApi.RetrieveQuote
Retrieve details of a specific quote by ID.
**Parameters**
- **quote_id** (`string`, required) Unique identifier for a quote to retrieve its details.
- **xero_tenant_id** (`string`, required) Provide the Xero identifier for the tenant to specify the account context.
## XeroApi.RetrieveQuoteHistory
Retrieves history records of a specific quote.
**Parameters**
- **quote_id** (`string`, required) Unique identifier for the quote to retrieve its history records.
- **xero_tenant_identifier** (`string`, required) The unique identifier for the Xero tenant. Required to specify which tenant's quote history to retrieve.
## XeroApi.AddQuoteHistory
Creates a history record for a specific quote.
**Parameters**
- **quote_identifier** (`string`, required) Unique identifier for a quote to which the history will be added.
- **xero_tenant_id** (`string`, required) Xero identifier for the tenant. Required for specifying the tenant within the Xero system.
- **idempotency_key** (`string`, optional) Unique key to safely retry requests and avoid duplicate processing (max 128 characters).
## XeroApi.RetrieveQuotePdf
Retrieve a specific quote as a PDF file using the quote ID.
**Parameters**
- **quote_id** (`string`, required) A unique identifier for the quote to retrieve as a PDF.
- **tenant_identifier** (`string`, required) The unique Xero tenant identifier required to access the specific quote.
## XeroApi.RetrieveQuoteAttachments
Retrieve attachments for a specific quote in Xero.
**Parameters**
- **quote_id** (`string`, required) Unique identifier for a quote in Xero to retrieve its attachments.
- **tenant_identifier** (`string`, required) The unique Xero tenant identifier required to retrieve the quote attachments.
## XeroApi.GetQuoteAttachment
Retrieve a specific attachment from a quote by ID.
**Parameters**
- **quote_id** (`string`, required) Unique identifier for a quote. Used to specify which quote the attachment belongs to.
- **attachment_id** (`string`, required) Unique identifier for the attachment object you wish to retrieve.
- **xero_tenant_identifier** (`string`, required) The unique Xero identifier for the tenant required to access the attachment.
- **attachment_content_type** (`string`, required) The MIME type of the attachment file to retrieve, such as image/jpeg or application/pdf.
## XeroApi.RetrieveQuoteAttachmentByFilename
Retrieve an attachment from a quote using filename.
**Parameters**
- **quote_identifier** (`string`, required) Unique identifier for a Quote. Use this to specify which quote's attachment you want to retrieve.
- **attachment_filename** (`string`, required) Name of the attachment file to retrieve from the quote.
- **xero_tenant_identifier** (`string`, required) Xero tenant's unique identifier. Required to specify which tenant's data to access.
- **attachment_mime_type** (`string`, required) The MIME type of the attachment file (e.g., image/jpg, application/pdf).
## XeroApi.GetDraftExpenseReceipts
Retrieve draft expense claim receipts from Xero.
**Parameters**
- **xero_tenant_id** (`string`, required) The unique identifier for a Xero tenant. Used to specify which tenant's data to retrieve.
- **filter_condition** (`string`, optional) A string to filter draft expense receipts based on specified criteria.
- **order_receipts_by** (`string`, optional) Specify the attribute by which to order the receipts. For example, by date or amount.
- **unit_decimal_places** (`integer`, optional) Specifies the number of decimal places for unit amounts. For example, set to 4 for four decimal places.
- **modified_since_timestamp** (`string`, optional) A timestamp to filter records updated or created since this date. Format should be in ISO 8601, e.g., '2023-10-10T00:00:00Z'.
## XeroApi.RetrieveDraftExpenseClaimReceipt
Retrieve a draft expense claim receipt using its ID.
**Parameters**
- **receipt_id** (`string`, required) The unique identifier for the draft expense claim receipt to retrieve.
- **tenant_identifier** (`string`, required) The unique Xero identifier for the tenant. Required to specify which organization's data is being accessed.
- **use_four_decimal_places** (`integer`, optional) Set to true to use four decimal places for unit amounts, false for standard.
## XeroApi.GetReceiptAttachments
Retrieve attachments for a specific expense claim receipt.
**Parameters**
- **receipt_id** (`string`, required) Unique identifier for the expense claim receipt to retrieve attachments.
- **tenant_identifier** (`string`, required) The unique Xero identifier for the tenant. Required to access tenant-specific data.
## XeroApi.RetrieveReceiptAttachment
Retrieve a specific attachment from an expense receipt.
**Parameters**
- **receipt_id** (`string`, required) Unique identifier for a receipt used to retrieve its attachment.
- **attachment_id** (`string`, required) Unique identifier for the attachment object you want to retrieve.
- **xero_tenant_id** (`string`, required) Xero identifier for the Tenant. Required to specify which tenant's data to access.
- **attachment_mime_type** (`string`, required) Specify the MIME type of the attachment, e.g., 'image/jpg' or 'application/pdf'.
## XeroApi.GetExpenseReceiptAttachment
Retrieve an attachment from a receipt by file name.
**Parameters**
- **receipt_id** (`string`, required) The unique identifier for a specific expense receipt. This is used to locate the correct receipt attachment.
- **attachment_file_name** (`string`, required) The name of the attachment to retrieve from the expense claim receipt.
- **xero_tenant_identifier** (`string`, required) Xero identifier for the Tenant. Required to specify the organization context in Xero from which to retrieve the attachment.
- **attachment_mime_type** (`string`, required) The MIME type of the attachment file, such as image/jpg or application/pdf, that you are retrieving from the receipt.
## XeroApi.RetrieveReceiptHistory
Retrieve detailed history for a specific receipt.
**Parameters**
- **receipt_id** (`string`, required) Unique identifier for the receipt to retrieve its history.
- **tenant_identifier** (`string`, required) The unique Xero identifier for the tenant associated with the receipt.
## XeroApi.RecordReceiptHistory
Creates a history record for a specific receipt.
**Parameters**
- **receipt_id** (`string`, required) Unique identifier for a receipt used to create a history record.
- **tenant_identifier** (`string`, required) Xero tenant identifier required for creating the receipt history.
- **idempotency_key** (`string`, optional) String up to 128 characters to safely retry requests without risk of duplication.
## XeroApi.GetRepeatingInvoices
Retrieve repeating invoices from Xero.
**Parameters**
- **tenant_identifier** (`string`, required) The unique identifier for the tenant in Xero. Required to retrieve specific tenant data.
- **filter_by_element** (`string`, optional) Filter invoices using a specific element condition. Use Xero's query language for filtering expressions.
- **order_by_element** (`string`, optional) Specify the element to order the repeating invoices by. It accepts a string indicating the element to sort by.
## XeroApi.GetRepeatingInvoice
Retrieve a specific repeating invoice using its unique ID.
**Parameters**
- **repeating_invoice_id** (`string`, required) Unique identifier for the specific repeating invoice to retrieve.
- **tenant_id** (`string`, required) Xero tenant identifier required to access a specific tenant's data.
## XeroApi.RetrieveRepeatingInvoiceAttachments
Retrieve attachments from a specified repeating invoice.
**Parameters**
- **repeating_invoice_id** (`string`, required) Unique identifier for a repeating invoice in Xero. Needed to retrieve the corresponding attachments.
- **xero_tenant_identifier** (`string`, required) A unique identifier for the Xero tenant. Required to access specific tenant data.
## XeroApi.RetrieveRepeatingInvoiceAttachmentById
Retrieve a specific attachment from a repeating invoice.
**Parameters**
- **repeating_invoice_id** (`string`, required) Unique identifier for a Repeating Invoice in Xero system.
- **attachment_id** (`string`, required) Unique identifier for the attachment object you want to retrieve from the repeating invoice.
- **xero_tenant_identifier** (`string`, required) Xero identifier for the tenant needed to retrieve the repeating invoice attachment.
- **attachment_mime_type** (`string`, required) The MIME type of the attachment file, such as image/jpg or application/pdf.
## XeroApi.RetrieveRepeatingInvoiceAttachment
Retrieve a repeating invoice attachment by file name.
**Parameters**
- **repeating_invoice_id** (`string`, required) Unique identifier for a specific repeating invoice. This is necessary to locate the invoice attachment.
- **attachment_file_name** (`string`, required) The name of the attachment file you wish to retrieve from the repeating invoice.
- **xero_tenant_identifier** (`string`, required) Xero tenant ID needed to identify the specific organization in Xero.
- **attachment_mime_type** (`string`, required) Specify the MIME type of the attachment file to retrieve, such as image/jpg or application/pdf.
## XeroApi.GetRepeatingInvoiceHistory
Retrieve history record for a specific repeating invoice.
**Parameters**
- **repeating_invoice_id** (`string`, required) Unique identifier for the specific repeating invoice to retrieve history for.
- **xero_tenant_id** (`string`, required) The unique identifier for the Xero tenant associated with the repeating invoice.
## XeroApi.CreateRepeatingInvoiceHistory
Creates a history record for a repeating invoice.
**Parameters**
- **repeating_invoice_id** (`string`, required) Unique identifier for a Repeating Invoice to create a history record.
- **tenant_identifier** (`string`, required) Xero identifier for the tenant, required for accessing specific tenant data.
- **idempotency_key** (`string`, optional) A unique string, max 128 characters, to safely retry requests without duplication.
## XeroApi.Retrieve1099Reports
Retrieves 1099 tax reports.
**Parameters**
- **xero_tenant_identifier** (`string`, required) The unique identifier for the tenant in Xero. Required to access the specific tenant's 1099 report data.
- **report_year** (`string`, optional) The year for which the 1099 report should be retrieved, in YYYY format.
## XeroApi.GetAgedPayablesReportByContact
Retrieve aged payables report by contact.
**Parameters**
- **contact_identifier** (`string`, required) Unique identifier for the contact to retrieve the aged payables report.
- **xero_tenant_identifier** (`string`, required) Xero identifier for the Tenant. Required to specify which tenant's data is being accessed.
- **report_date** (`string`, optional) The specific date for the Aged Payables By Contact report in YYYY-MM-DD format.
- **report_from_date** (`string`, optional) Specify the start date for filtering the report, in YYYY-MM-DD format (e.g. 2021-02-01).
- **report_end_date** (`string`, optional) Filter the report by specifying the end date, formatted as YYYY-MM-DD (e.g., 2021-02-28).
## XeroApi.GetAgedReceivablesReportByContact
Retrieve aged receivables report by contact.
**Parameters**
- **contact_identifier** (`string`, required) Unique identifier for a Contact to retrieve their aged receivables report.
- **tenant_identifier** (`string`, required) Unique Xero identifier for the Tenant. Required to specify which tenant's data to retrieve.
- **report_date** (`string`, optional) The specific date for which the aged receivables report by contact is generated.
- **start_date_filter** (`string`, optional) Filter the report starting from this date (YYYY-MM-DD).
- **filter_by_to_date** (`string`, optional) Specify the end date for filtering the aged receivables report, e.g., '2021-02-28'.
## XeroApi.GetBalanceSheetReport
Retrieve the balance sheet report from Xero.
**Parameters**
- **xero_tenant_identifier** (`string`, required) Xero identifier for the Tenant. Used to specify which organization's data to retrieve in Xero.
- **report_date** (`string`, optional) The specific date for which to retrieve the Balance Sheet report. Format as YYYY-MM-DD.
- **number_of_periods** (`integer`, optional) The number of periods to include in the Balance Sheet report.
- **comparison_timeframe** (`string`, optional) The period size for comparison, e.g., MONTH, QUARTER, or YEAR.
- **balance_sheet_tracking_option_id_1** (`string`, optional) The first tracking option ID for generating the Balance Sheet report in Xero.
- **tracking_option_id_2** (`string`, optional) The tracking option ID for secondary categorization in the Balance Sheet report. This allows for filtering or segmentation based on a second tracking category within Xero.
- **use_standard_layout** (`boolean`, optional) Set to true to use the standard layout for the Balance Sheet report in Xero.
- **return_cash_basis** (`boolean`, optional) Set to True to return the Balance Sheet report using a cash basis.
## XeroApi.GetBankSummaryReport
Retrieve bank summary reports from Xero.
**Parameters**
- **xero_tenant_id** (`string`, required) Unique identifier for the Xero tenant. Required for accessing the relevant account data.
- **start_date_filter** (`string`, optional) Filter the report by the starting date, formatted as YYYY-MM-DD. For example, 2021-02-01.
- **end_date_filter** (`string`, optional) Filter the report by the end date, formatted as YYYY-MM-DD, e.g., 2021-02-28.
## XeroApi.RetrieveSpecificReport
Retrieve a specific report using a ReportID.
**Parameters**
- **report_id** (`string`, required) Unique identifier for a specific report to be retrieved.
- **xero_tenant_id** (`string`, required) Xero identifier for the Tenant. This is required to specify which tenant's data is being accessed.
## XeroApi.GetBudgetSummaryReport
Retrieves the budget summary report from Xero.
**Parameters**
- **xero_tenant_identifier** (`string`, required) The unique Xero identifier for the tenant, required for authentication and data retrieval.
- **report_date** (`string`, optional) The specific date for the budget summary report in YYYY-MM-DD format, e.g., 2018-03-31.
- **number_of_periods_to_compare** (`integer`, optional) The number of periods for comparison, must be an integer between 1 and 12.
- **comparison_timeframe** (`integer`, optional) Specify the period size for comparison: 1 for month, 3 for quarter, or 12 for year.
## XeroApi.RetrieveExecutiveSummaryReport
Retrieve an executive summary report for financial insights.
**Parameters**
- **xero_tenant_identifier** (`string`, required) The Xero identifier for the tenant. Required to specify which tenant's data should be retrieved.
- **report_date** (`string`, optional) The date for the Bank Summary report in the format YYYY-MM-DD (e.g., 2018-03-31).
## XeroApi.RetrieveUniqueReportsList
Retrieve a list of unique reports from Xero.
**Parameters**
- **xero_tenant_id** (`string`, required) The unique identifier for the Xero tenant to retrieve reports for.
## XeroApi.GetProfitAndLossReport
Retrieve profit and loss report from Xero.
**Parameters**
- **tenant_identifier** (`string`, required) The Xero identifier for the tenant. Required to specify which tenant's data to access.
- **from_date** (`string`, optional) Filter the report by the starting date in YYYY-MM-DD format, e.g., 2021-02-01.
- **end_date** (`string`, optional) Filter by the end date of the report in YYYY-MM-DD format, e.g., 2021-02-28.
- **number_of_comparison_periods** (`integer`, optional) The number of periods to compare, must be an integer between 1 and 12.
- **comparison_timeframe** (`string`, optional) The period size to compare to for the report. Options are MONTH, QUARTER, or YEAR.
- **tracking_category_id** (`string`, optional) The first tracking category ID for the Profit and Loss report filter. Expect a string representing the tracking category identifier.
- **secondary_tracking_category_id** (`string`, optional) The ID of the second tracking category for the Profit and Loss report.
- **tracking_option_1_id** (`string`, optional) The identifier for the first tracking option in the Profit and Loss report.
- **tracking_option_id_2** (`string`, optional) The second tracking option identifier for filtering the Profit and Loss report.
- **return_standard_layout** (`boolean`, optional) Set to true to return the Profit and Loss report in the standard layout.
- **return_cash_basis_only** (`boolean`, optional) Specify true to return the Profit and Loss report on a cash only basis.
## XeroApi.GetTrialBalanceReport
Fetches the trial balance report from Xero.
**Parameters**
- **tenant_identifier** (`string`, required) The unique identifier for the Xero tenant to retrieve the trial balance report for.
- **report_date** (`string`, optional) The specific date for the Trial Balance report in YYYY-MM-DD format.
- **return_cash_basis_only** (`boolean`, optional) Set to true to return the trial balance report on a cash-only basis, false for accrual.
## XeroApi.SetFinancialSetup
Sets up the financial chart of accounts and conversion details.
**Parameters**
- **xero_tenant_identifier** (`string`, required) Xero tenant ID required to identify the specific tenant for the request.
- **financial_setup_details** (`json`, required) JSON object containing accounts, conversion balances, and a conversion date for setting up the financial chart in Xero.
- **idempotency_key** (`string`, optional) A unique string up to 128 characters to safely retry requests without duplicating processing.
## XeroApi.RetrieveTaxRates
Retrieve tax rates from Xero.
**Parameters**
- **xero_tenant_id** (`string`, required) A unique identifier for the Xero tenant. This is required to access tenant-specific data.
- **filter_by_element** (`string`, optional) Apply a filter to the tax rates by specifying an element condition (e.g. 'Status=="ACTIVE"').
- **order_by_element** (`string`, optional) Specify the element to order the tax rates by. Provide any valid field or attribute name.
## XeroApi.GetTaxRateByTaxType
Retrieve a specific tax rate using a TaxType code.
**Parameters**
- **tax_type_code** (`string`, required) A valid TaxType code used to retrieve the specific tax rate.
- **xero_tenant_identifier** (`string`, required) Xero identifier for the tenant. Required to specify which tenant's data is being accessed.
## XeroApi.GetTrackingCategories
Retrieve tracking categories and options from Xero.
**Parameters**
- **xero_tenant_identifier** (`string`, required) Unique identifier for the Xero tenant. Required to specify the tenant from which tracking categories should be retrieved.
- **filter_conditions** (`string`, optional) String to filter tracking categories by specific conditions.
- **order_by_element** (`string`, optional) Specify the element to order the tracking categories and options by.
- **include_archived_categories** (`boolean`, optional) Set to true to include categories and options with a status of ARCHIVED in the response.
## XeroApi.GetTrackingCategory
Retrieve tracking category details using its unique ID.
**Parameters**
- **tracking_category_id** (`string`, required) Unique identifier for the tracking category to retrieve details for.
- **xero_tenant_id** (`string`, required) A string representing the Xero identifier for the tenant. Required to access tenant-specific data.
## XeroApi.RemoveTrackingCategory
Deletes a specific tracking category from Xero.
**Parameters**
- **tracking_category_id** (`string`, required) Unique identifier for the tracking category to be deleted in Xero.
- **xero_tenant_identifier** (`string`, required) Xero identifier for the tenant. Required to specify which tenant's tracking category to delete.
## XeroApi.DeleteTrackingOption
Deletes a specific tracking category option in Xero.
**Parameters**
- **tracking_category_id** (`string`, required) Unique identifier for the tracking category to specify which category the option will be deleted from.
- **tracking_option_id** (`string`, required) Unique identifier for a tracking option to be deleted in Xero.
- **xero_tenant_id** (`string`, required) The unique identifier for a Xero tenant. This specifies which tenant's data will be affected.
## XeroApi.RetrieveXeroUsers
Retrieve users from the Xero platform.
**Parameters**
- **xero_tenant_identifier** (`string`, required) Xero identifier for the specific tenant. This is required to specify the tenant for which users are to be retrieved.
- **filter_by_criteria** (`string`, optional) A string to filter users based on specific criteria in Xero.
- **order_by_element** (`string`, optional) Specify the element to order the retrieved users by, such as name or date.
- **modified_since_timestamp** (`string`, optional) Return only records created or modified since this timestamp, formatted as an ISO 8601 string.
## XeroApi.RetrieveSpecificUser
Retrieve details of a specific user from Xero.
**Parameters**
- **user_identifier** (`string`, required) Unique identifier for a User in Xero system.
- **xero_tenant_identifier** (`string`, required) Xero identifier for the Tenant. Use this to specify which tenant the user belongs to.
## XeroApi.GetConnectedTenants
Fetch active Tenants connections from Xero organization.
**Parameters**
- **filter_auth_event_id** (`string`, optional) A string used to filter the results by a specific authEventId, narrowing down the connections returned.
## XeroApi.DeleteTenantConnection
Delete a specified Xero connection using its ID.
**Parameters**
- **tenant_connection_id** (`string`, required) Unique identifier for the Xero connection to be deleted.