create_xero_manual_journal
create_xero_manual_journalProposes a manual journal (a general-purpose double-entry adjustment - reallocating an expense between accounts, recording a bank fee, writing off a small balance, and similar) in this Xero organisation - it does NOT create anything in Xero itself, and never will on its own. This queues a pending change that a human must explicitly approve (your Xero MCP connector - the exact link is this response's own approvalUrl field) before Xero is touched at all; you have no way to approve it yourself. Every line needs a real accountCode from list_xero_accounts - unlike an invoice line, a journal line has no default account to fall back to, so never invent one. lineAmount is SIGNED: positive = a debit, negative = a credit - this is Xero's own convention, and getting it backwards silently swaps a debit for a credit in a real ledger. Every line together must sum to exactly zero - an unbalanced entry is rejected before anything is queued, with the exact imbalance named so you can fix it. Tell the user plainly which accounts are debited and which are credited, by how much, and that it needs their approval in Invio before it goes anywhere - never describe it as posted or done. Even once approved, this only ever creates a DRAFT journal inside Xero - a human still posts it themselves from inside Xero, this connector never does that. You CAN also say whether a taxed line's amount includes tax (lineAmountTypes): use "Inclusive" for "$1,500 including GST", "Exclusive" for "$1,500 plus GST", "NoTax" for no tax at all. This only changes anything on a line that also names a taxType - a line with no taxType is unaffected either way. Omit it and Xero applies its own default for a manual journal, which this connector does not claim to know. Never adjust the amounts yourself to fake a tax treatment. DATES: date is strict YYYY-MM-DD, so you always have to convert whatever the user actually said. A date carrying a month name ("8 Sep", "Sept 8th"), a weekday ("last Tuesday"), or an already-unambiguous full date ("2026-09-08") is yours to convert normally. A BARE NUMERIC date with no month name - "9/8", "08/09", "9-8" - is the one that is not: it means 9 August to most of the world and 8 September in the United States, and getting it wrong puts a manual journal a month out in a way nobody skimming the approval card will catch. This Invio account is based in a country that writes the DAY first, so read a bare "9/8" as 9 August, not 8 September. Say in plain words how you read it ("I read 9/8 as 9 August") so the user can correct you before they approve. If their own wording points the other way anywhere in the same request, ask them which they meant instead of picking.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| date | Yes | Date the journal is posted, YYYY-MM-DD. If the user wrote a bare numeric date with no month name ("9/8", "08/09"), do NOT settle it on your own judgement - it is 9 August to most of the world and 8 September in the US, and nothing downstream of this field can tell which you meant once it is a date. Follow the DATES instruction in this tool's description. | |
| lineItems | Yes | At least two lines, each with a signed lineAmount (positive = debit, negative = credit) and a real accountCode. The lineAmounts across every line must sum to exactly zero - this is checked before anything is queued, not left for Xero to reject after approval. | |
| narration | Yes | ||
| organisation | No | The Xero organisation to use, by its display name. Only needed if this connection reaches more than one organisation - omit it when there is only one. | |
| lineAmountTypes | No | How Xero reads every lineAmount below on any line that names a taxType. "Exclusive" = the amounts do NOT include tax and Xero adds it on top - "$1,500 plus GST". "Inclusive" = the amounts ALREADY include tax and Xero works the tax out of them - "$1,500 including GST", "$1,500 inc GST", "$1,500 all up". "NoTax" = no tax is calculated on any line. Set this whenever the entry has a tax dimension at all (a GST or VAT correction, a BAS adjustment, reallocating a tax-coded expense) and say which one you used. Omit it only for an entry with no tax in it, where Xero applies its own default. Never adjust the amounts yourself to fake a tax treatment, and never assume a bare "$1,500" is one or the other - ask if the user did not say. |