ActionXeroUpdated June 2026

How do I create a Xero invoice from a workflow?

Short answer: You can create invoice in Xero by hand from its own interface, but it won’t repeat itself. On TinyCommand, add the Xero Create Invoice action to a workflow, map its 5 inputs from any upstream app, and it runs automatically every time the trigger fires. No code, and a free tier to start.

Create Invoice in Xero — start free
Inputs

The fields this action accepts.

Every field can be mapped from an upstream trigger, AI step, table row, or hard-coded literal.

FieldTypeRequiredDescription
Contact ID
contactId
stringRequiredContact ID
Line Item Description
description
stringRequiredLine Item Description
Quantity
quantity
numberRequiredQuantity
Unit Amount
unitAmount
numberRequiredUnit Amount
Due Date
dueDate
dateRequiredDue Date. (date/time)
Sample request
{
"contactId": "{{trigger.contactId}}",
"description": "{{trigger.description}}",
"quantity": "{{trigger.quantity}}",
"unitAmount": "{{trigger.unitAmount}}",
"dueDate": "{{trigger.dueDate}}"
}
Returns
{
"Invoices": [
{
"Total": 100,
"Status": "DRAFT",
"InvoiceID": "inv123",
"InvoiceNumber": "INV-0001"
}
]
}

Use these fields in downstream nodes for routing, logging, or error handling.

Triggered by

Apps that pair well as the trigger for Create Invoice.

Any of these apps can fire this action as part of a workflow.

FAQ

Questions about Create Invoice.

What does the Create Invoice action do in Xero?
Creates a new invoice in Xero (ACCREC for sales, ACCPAY for bills) with contact, line items, dates, and reference. Used to invoice on project completion or to mirror billable work from another system.
What inputs does Create Invoice require?
Required: Contact ID, Line Item Description, Quantity, Unit Amount, Due Date. Every input accepts a static value or a variable from any upstream node in your workflow.
Can I use dynamic inputs from earlier workflow nodes?
Yes. Any field on this action can pull values from upstream nodes, whether that's a form response, a trigger payload, an AI output, or a lookup result.
What happens if Xero returns an error?
The workflow pauses on the failed node, the error message is captured in the run log, and you can retry the run with one click. Auto-retry policies are configurable per workflow with exponential backoff up to 5 attempts.
Does Create Invoice support batch operations?
Yes. Run Create Invoice inside a Loop node to process arrays. TinyCommand handles Xero's rate limits automatically so you don't have to throttle manually.
More actions

Other Xero actions.

Action
Get Profit & Loss
Retrieves the Profit and Loss report from Xero for a date range with tracking-category breakdowns. Use for monthly close packs, board updates, or finance dashboards.
Action
List Contacts
Lists contacts in Xero (customers, suppliers, employees) with their addresses, balances, and tax numbers. Used for CRM sync or AR/AP reports.
Create Invoice in Xero — start free