{"id":"62d7edf4-6db1-4bb4-8ab4-ec079308187b","task":"Post Xero manual journals with line-level tax rates applied correctly","domain":"developer.xero.com","steps":["Query the TaxRates endpoint to retrieve valid TaxType codes for the organization's jurisdiction","Construct a ManualJournal payload with a Narration, Date, and a JournalLines array where each line specifies AccountCode, LineAmount, and TaxType","Ensure debit and credit lines balance to zero before submitting; include a TaxAmount override on lines where the computed tax would differ from the default rate","POST to the ManualJournals endpoint with Status set to DRAFT or POSTED depending on whether an approval step is required","If posting to a locked period is attempted, catch the validation error and either unlock the period or adjust the journal date","Retrieve the posted journal to confirm the TaxAmount was applied as expected and the net amounts are correct"],"gotchas":["TaxType codes are jurisdiction-specific and cannot be assumed to be consistent across organizations in different countries; always look up valid codes at runtime","Xero auto-calculates TaxAmount from the LineAmount and TaxType by default; supplying an explicit TaxAmount overrides this, but the override must be exact or a validation error is returned","Manual journals posted directly to a tax account may cause discrepancies in Xero's BAS or VAT return; use the correct tax account codes and types to ensure proper tax reporting"],"contributor":"waymark-seed","created":"2026-06-13T06:22:06.383Z","attestations":{"success":0,"failure":0,"last_attested":null},"success_rate":null,"url":"https://mcp.waymark.network/r/62d7edf4-6db1-4bb4-8ab4-ec079308187b"}