Skip to content

Xero

Xero is an online accounting software platform designed for small businesses and accountants to manage finances efficiently.

Categories: accounting

Type: xero/v1


Connections

Version: 1

OAuth2 Authorization Code

Properties

NameLabelTypeControl TypeDescriptionRequired
clientIdClient IdSTRINGTEXTtrue
clientSecretClient SecretSTRINGTEXTtrue

Actions

Create Bill

Name: createBill

Creates draft bill (Accounts Payable).

Properties

NameLabelTypeControl TypeDescriptionRequired
ContactIDContact IDSTRINGSELECTID of the contact to create the bill for.true
DateDateDATEDATEDate of the bill. If no date is specified, the current date will be used.true
DueDateDue DateDATEDATEDate bill is due. If no date is specified, the current date will be used.false
LineAmountTypesLine Amount TypeSTRING
Options Exclusive, Inclusive, NoTax
SELECTfalse
LineItemsLine ItemsARRAY
Items [{STRING(Description), NUMBER(Quantity), NUMBER(UnitAmount), STRING(AccountCode)}($LineItem)]
ARRAY_BUILDERLine items on the bill.true
CurrencyCodeCurrencySTRINGSELECTCurrency that bill is raised in.false
ReferenceInvoice ReferenceSTRINGTEXTReference number of the bill.false

Output

Type: OBJECT

Properties

NameTypeControl Type
TypeSTRINGTEXT
ReferenceSTRINGTEXT
ContactOBJECT
Properties {STRING(ContactID), STRING(Name), STRING(EmailAddress)}
OBJECT_BUILDER
DateStringSTRINGTEXT
DueDateStringSTRINGTEXT
StatusSTRINGTEXT
LineAmountTypesSTRINGTEXT
LineItemsARRAY
Items [{STRING(Description), INTEGER(Quantity), NUMBER(UnitAmount)}]
ARRAY_BUILDER
CurrencyCodeSTRINGTEXT

JSON Example

{
"label" : "Create Bill",
"name" : "createBill",
"parameters" : {
"ContactID" : "",
"Date" : "2021-01-01",
"DueDate" : "2021-01-01",
"LineAmountTypes" : "",
"LineItems" : [ {
"Description" : "",
"Quantity" : 0.0,
"UnitAmount" : 0.0,
"AccountCode" : ""
} ],
"CurrencyCode" : "",
"Reference" : ""
},
"type" : "xero/v1/createBill"
}

Create Contact

Name: createContact

Creates a new contact.

Properties

NameLabelTypeControl TypeDescriptionRequired
NameNameSTRINGTEXTFull name of a contact or organisation.true
CompanyNumberCompany NumberSTRINGTEXTCompany registration number.false
AccountNumberAccount NumberSTRINGTEXTUnique account number to identify, reference and search for the contact.false
ContactStatusContact StatusSTRING
Options ACTIVE, ARCHIVED, GDPRREQUEST
SELECTCurrent status of a contact.false
FirstNameFirst NameSTRINGTEXTFirst name of primary person.false
LastNameLast NameSTRINGTEXTLast name of primary person.false
EmailAddressEmail AddressSTRINGEMAILEmail address of contact person.false
BankAccountDetailsBank Account NumberSTRINGTEXTBank account number of contact.false
TaxNumberTax NumberSTRINGTEXTTax 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.false
PhonesPhonesARRAY
Items [{STRING(PhoneType), STRING(PhoneNumber), STRING(PhoneAreaCode), STRING(PhoneCountryCode)}]
ARRAY_BUILDERfalse
AddressesAddressesARRAY
Items [{STRING(AddressType), STRING(City), STRING(Region), STRING(PostalCode), STRING(Country)}]
ARRAY_BUILDERfalse

Output

Type: OBJECT

Properties

NameTypeControl Type
ContactIDSTRINGTEXT
CompanyNumberSTRINGTEXT
AccountNumberSTRINGTEXT
ContactStatusSTRINGTEXT
NameSTRINGTEXT
FirstNameSTRINGTEXT
LastNameSTRINGTEXT
EmailAddressSTRINGTEXT
BankAccountDetailsSTRINGTEXT
TaxNumberSTRINGTEXT
AddressesARRAY
Items [{STRING(AddressType), STRING(City), STRING(Region), STRING(PostalCode), STRING(Country)}]
ARRAY_BUILDER
PhonesARRAY
Items [{STRING(PhoneType), STRING(PhoneNumber), STRING(PhoneAreaCode), STRING(PhoneCountryCode)}]
ARRAY_BUILDER

JSON Example

{
"label" : "Create Contact",
"name" : "createContact",
"parameters" : {
"Name" : "",
"CompanyNumber" : "",
"AccountNumber" : "",
"ContactStatus" : "",
"FirstName" : "",
"LastName" : "",
"EmailAddress" : "",
"BankAccountDetails" : "",
"TaxNumber" : "",
"Phones" : [ {
"PhoneType" : "",
"PhoneNumber" : "",
"PhoneAreaCode" : "",
"PhoneCountryCode" : ""
} ],
"Addresses" : [ {
"AddressType" : "",
"City" : "",
"Region" : "",
"PostalCode" : "",
"Country" : ""
} ]
},
"type" : "xero/v1/createContact"
}

Create Invoice

Name: createSalesInvoice

Creates draft invoice (Acount Receivable).

Properties

NameLabelTypeControl TypeDescriptionRequired
ContactIDContact IDSTRINGSELECTID of the contact to create the invoice for.true
DateDateDATEDATEDate invoice was issued. If no date is specified, the current date will be used.false
DueDateDue DateDATEDATEDate invoice is due. If no date is specified, the current date will be used.false
LineAmountTypesLine Amount TypeSTRING
Options Exclusive, Inclusive, NoTax
SELECTfalse
LineItemsLine ItemsARRAY
Items [{STRING(Description), INTEGER(Quantity), NUMBER(UnitAmount), NUMBER(DiscountRate)}]
ARRAY_BUILDERLine items on the invoice.true
CurrencyCodeCurrency CodeSTRINGSELECTCurrency code that invoice is raised in.false
ReferenceInvoice ReferenceSTRINGTEXTReference number of the invoice.false

Output

Type: OBJECT

Properties

NameTypeControl Type
TypeSTRINGTEXT
ReferenceSTRINGTEXT
ContactOBJECT
Properties {STRING(ContactID), STRING(Name), STRING(EmailAddress)}
OBJECT_BUILDER
DateStringSTRINGTEXT
DueDateStringSTRINGTEXT
StatusSTRINGTEXT
LineAmountTypesSTRINGTEXT
LineItemsARRAY
Items [{STRING(Description), INTEGER(Quantity), NUMBER(UnitAmount)}]
ARRAY_BUILDER
CurrencyCodeSTRINGTEXT

JSON Example

{
"label" : "Create Invoice",
"name" : "createSalesInvoice",
"parameters" : {
"ContactID" : "",
"Date" : "2021-01-01",
"DueDate" : "2021-01-01",
"LineAmountTypes" : "",
"LineItems" : [ {
"Description" : "",
"Quantity" : 1,
"UnitAmount" : 0.0,
"DiscountRate" : 0.0
} ],
"CurrencyCode" : "",
"Reference" : ""
},
"type" : "xero/v1/createSalesInvoice"
}

Create Quote

Name: createQuote

Creates a new quote draft.

Properties

NameLabelTypeControl TypeDescriptionRequired
ContactIDContact IDSTRINGSELECTID of the contact that the quote is being raised for.true
DateDateDATEDATEDate quote was issued.true
LineItemsLine ItemsARRAY
Items [{STRING(Description), INTEGER(Quantity), NUMBER(UnitAmount), NUMBER(DiscountRate)}]
ARRAY_BUILDERLine items on the invoice.true
LineAmountTypesLine Amount TypeSTRING
Options Exclusive, Inclusive, NoTax
SELECTfalse
ExpiryDateExpiry DateDATEDATEDate quote expiresfalse
CurrencyCodeCurrency CodeSTRINGSELECTThe currency code that quote has been raised in.false
QuoteNumberQuote NumberSTRINGTEXTUnique alpha numeric code identifying a quote.false
ReferenceReferenceSTRINGTEXTAdditional reference numberfalse
BrandingThemeIDBranding Theme IDSTRINGSELECTThe branding theme ID to be applied to this quote.false
TitleTitleSTRINGTEXTThe title of the quote.false
SummarySummarySTRINGTEXTThe summary of the quote.false
TermsTermsSTRINGTEXT_AREAThe terms of the quote.false

Output

Type: OBJECT

Properties

NameTypeControl Type
QuoteIDSTRINGTEXT
QuoteNumberSTRINGTEXT
ReferenceSTRINGTEXT
TermsSTRINGTEXT
ContactOBJECT
Properties {STRING(ContactID), STRING(Name), STRING(EmailAddress)}
OBJECT_BUILDER
LineItemsARRAY
Items [{STRING(LineItemID), STRING(Description), NUMBER(UnitAmount), INTEGER(DiscountRate), INTEGER(Quantity)}]
ARRAY_BUILDER
DateStringSTRINGTEXT
ExpiryDateStringSTRINGTEXT
StatusSTRINGTEXT
CurrencyCodeSTRINGTEXT
TitleSTRINGTEXT
BrandingThemeIDSTRINGTEXT
SummarySTRINGTEXT
LineAmountTypesSTRINGTEXT

JSON Example

{
"label" : "Create Quote",
"name" : "createQuote",
"parameters" : {
"ContactID" : "",
"Date" : "2021-01-01",
"LineItems" : [ {
"Description" : "",
"Quantity" : 1,
"UnitAmount" : 0.0,
"DiscountRate" : 0.0
} ],
"LineAmountTypes" : "",
"ExpiryDate" : "2021-01-01",
"CurrencyCode" : "",
"QuoteNumber" : "",
"Reference" : "",
"BrandingThemeID" : "",
"Title" : "",
"Summary" : "",
"Terms" : ""
},
"type" : "xero/v1/createQuote"
}

Triggers

New Bill

Name: newBill

Trigger off whenever a new bill is added.

Type: STATIC_WEBHOOK

Properties

NameLabelTypeControl TypeDescriptionRequired
webhookKeyWebhook KeySTRINGTEXTThe key used to sign the webhook request.true

Output

Type: OBJECT

Properties

NameTypeControl Type
TypeSTRINGTEXT
ReferenceSTRINGTEXT
ContactOBJECT
Properties {STRING(ContactID), STRING(Name), STRING(EmailAddress)}
OBJECT_BUILDER
DateStringSTRINGTEXT
DueDateStringSTRINGTEXT
StatusSTRINGTEXT
LineAmountTypesSTRINGTEXT
LineItemsARRAY
Items [{STRING(Description), INTEGER(Quantity), NUMBER(UnitAmount)}]
ARRAY_BUILDER
CurrencyCodeSTRINGTEXT

JSON Example

{
"label" : "New Bill",
"name" : "newBill",
"parameters" : {
"webhookKey" : ""
},
"type" : "xero/v1/newBill"
}

New Contact

Name: newContact

Triggers when a contact is created.

Type: STATIC_WEBHOOK

Properties

NameLabelTypeControl TypeDescriptionRequired
webhookKeyWebhook KeySTRINGTEXTThe key used to sign the webhook request.true

Output

Type: OBJECT

Properties

NameTypeControl Type
ContactIDSTRINGTEXT
CompanyNumberSTRINGTEXT
AccountNumberSTRINGTEXT
ContactStatusSTRINGTEXT
NameSTRINGTEXT
FirstNameSTRINGTEXT
LastNameSTRINGTEXT
EmailAddressSTRINGTEXT
BankAccountDetailsSTRINGTEXT
TaxNumberSTRINGTEXT
AddressesARRAY
Items [{STRING(AddressType), STRING(City), STRING(Region), STRING(PostalCode), STRING(Country)}]
ARRAY_BUILDER
PhonesARRAY
Items [{STRING(PhoneType), STRING(PhoneNumber), STRING(PhoneAreaCode), STRING(PhoneCountryCode)}]
ARRAY_BUILDER

JSON Example

{
"label" : "New Contact",
"name" : "newContact",
"parameters" : {
"webhookKey" : ""
},
"type" : "xero/v1/newContact"
}

New Invoice

Name: newInvoice

Trigger off whenever a new invoice is added.

Type: STATIC_WEBHOOK

Properties

NameLabelTypeControl TypeDescriptionRequired
webhookKeyWebhook KeySTRINGTEXTThe key used to sign the webhook request.true

Output

Type: OBJECT

Properties

NameTypeControl Type
TypeSTRINGTEXT
ReferenceSTRINGTEXT
ContactOBJECT
Properties {STRING(ContactID), STRING(Name), STRING(EmailAddress)}
OBJECT_BUILDER
DateStringSTRINGTEXT
DueDateStringSTRINGTEXT
StatusSTRINGTEXT
LineAmountTypesSTRINGTEXT
LineItemsARRAY
Items [{STRING(Description), INTEGER(Quantity), NUMBER(UnitAmount)}]
ARRAY_BUILDER
CurrencyCodeSTRINGTEXT

JSON Example

{
"label" : "New Invoice",
"name" : "newInvoice",
"parameters" : {
"webhookKey" : ""
},
"type" : "xero/v1/newInvoice"
}