Xero Connector Reference | MuleSoft Documentation
# Xero Connector Reference
Xero is a SaaS-based accounting application used primarily by small to medium sized businesses for accounting functions such as invoice creation and tracking, receiving and tracking payments, managing inventory, storing customer contacts, and creating purchase orders and quotes.
## Connections
To connect to a system, whether it is a source of data or the target where you are sending data, you must create a connection with that system’s required credentials. You typically connect to different systems within a flow and can reuse each connection every time you need to connect.
This system requires the following credential information for its connections:
To establish a connection from Composer to Xero, you must select the Xero Organization to which you want to connect in the **Organization** field. 

Connection Name
    
Enter a connection name that will help you remember the details of this connection. You can reuse connections multiple times in a single flow, and in more than one flow, and the credentials are hidden after you create the connection. Therefore, it’s helpful to provide a name that easily identifies this connection from others.
Only you can see the connection. Other users in your Composer app must create their own connections. 

Username
    
The OAuth username that you use to log in to Xero. 

Password
    
The OAuth password that you use to log in to Xero.
## Triggers
Each flow starts with either a _scheduler_ or a _trigger_. Schedulers are set to a default frequency of 15 minutes. Triggers, such as "each time a new record is created", are defined by you and provide multiple options related to the data in your system.
Triggers use a polling process to actively check for new updates from an external system. The polling frequency five minutes.
This system provides the following trigger options: 

New or updated Contact
    
Checks for a new or updated contact record. Provide a value for the following fields:
  * **Organization**
  * **Contact Type**



New or updated item
    
Checks for a new or updated item record. Provide a value for the following fields:
  * **Organization**
  * **Is purchased**
  * **Is tracked as inventory**



New or updated payment
    
Checks for a new or updated payment. Provide a value for the **Organization** field. 

On New or Update Invoice
    
Checks for a new or updated invoice. Provide a value for the following fields:
  * **Organization**
  * **Invoice type**
  * **Invoice status**


### Polling Frequency
For triggers in this connector, the **Polling Frequency** field is required. This field enables you to select how often Composer makes a request to the underling system API to look for changes to records in active flows. You can select a different polling frequency for each flow in your organization. With a shorter frequency, the flow executes more often; however, a shorter frequency consumes more API calls. For example, if you have an order management flow, you might require nearly real-time updates, which can be achieved with a 15-second polling interval (which equates to 5760 API calls per day). In contrast, if your flow updates a pricing catalog, you could poll the flow every hour (which equates to 24 API calls per day).
## Actions
After you connect to a system and define the trigger or configure a scheduler, you define the actions that the flow performs. For example, you can copy a record between different systems, such as Workday and Salesforce. The actions you can perform depend on which system you are connected to.
This system provides the following actions: 

Create or update contact
    
Creates a new contact record nor updates an existing contact record. Provide a value for the following fields:
  * **Organization**
  * **Contact name**
  * If you add additional contacts, you must also provide a value for **Email address**.



Search contacts
    
Returns a list of contact records based on values entered. Provide a value for **Organization**. 

Get contact by ID
    
Returns a single contact record based on the ID value. Provide a value for the following fields:
  * **Organization**
  * **Contact ID**



Create or update invoice
    
Creates or updates an invoice record. Only direct columns within Invoice are supported. Provide a value for the following fields:
  * **Organization**
  * **Invoice type**
  * **Contact name**



Update invoice headers
    
Updates specific fields in an invoice record. Provide a value for the following fields:
  * **Organization**
  * **Invoice Reference Type**
  * **Invoice Reference**



Create or update item
    
Creates or updates a field in the item record. Provide a value for the following fields:
  * **Organization**
  * **Item Code**



Get Invoices
    
Returns new or updated invoice records. Provide a value for **Organization**.
## Objects
The Action: **Create or update invoice** object is available.
## Custom Fields
Custom fields are not supported. Using MuleSoft Composer, you can access standard field values for actions and triggers that you set in the Xero record.
## See Also
  * Mulesoft Composer: Overview
  * MuleSoft Composer: Getting Started
  * Composer Connector Reference
  * Knowledge Articles