Update Invoice

xero.update_invoice
ActionCRM & salesconnection required

Calls the Xero API with the connection's credentials.

Update the fields of one existing invoice, identified by its Xero id.

Connection

Required
Yes — the node will not save without one
Auth type
OAuth 2.0
Providers
Xero
Secret shape
{"client_id": "…", "client_secret": "…", "refresh_token": "…"}
Config it needs
tenant_id
Resolved by
config.connection_id, else node.connection_id

Configuration

3 fields, 2 required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.

FieldTypeRequiredDefaultConstraintsExample
invoice_id
The Xero InvoiceID (a GUID) of the invoice to update.
stringYes———
fields
The Xero Invoice object to send, in Xero's PascalCase, e.g. {"Reference": "PO-12", "Status": "AUTHORISED"}.
objectYes—≥ 1 characters{"Reference":"PO-12","Status":"AUTHORISED"}
tenant_id
Xero organisation (tenant) id for this call; overrides the connection's.
stringNo———

Example configuration

Every value below is the contract’s own example or default — nothing invented.

{
  "fields": {
    "Reference": "PO-12",
    "Status": "AUTHORISED"
  }
}

Output

One shape.

result

FieldTypeExample
invoice
The invoice as Xero returned it, in PascalCase.
object—
invoice_id
The Xero identifier of the invoice.
string—
validation_errors
Messages Xero attached to the record; empty when it was accepted.
array—
{
  "invoice": {},
  "invoice_id": "",
  "validation_errors": []
}

Notes

  • Only the fields you send are changed; the invoice id is added for you.

See Update Invoice run in a workflow.

In a technical demo we add the Xero connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.