EZOM Mateship Logistics Pty Ltd · Payments · accounting integration

Monthly Invoices & Statements · Xero

Monthly invoices and statements for each organisation, generated from EzOM through the Xero API.

What it shows
Integration requirements
My role
Fullstack Developer
When
07/2024 (EzOM-150)
Company
EZOM Mateship Logistics Pty Ltd
Xero APIGraphQLReactNode.jsJest

01 · The problem

Account managers had to produce each organisation's monthly invoice and statement in Xero by hand, outside EzOM, while the transactions behind them lived inside EzOM.

02 · What I did

  1. 01Added GraphQL endpoints that connect to the Xero API, with authorisation and token refresh.
  2. 02Designed the workflow with the team and simplified the UI to the essentials: pick a month and year, generate, download.
  3. 03Added an endpoint for the earliest transaction date, so users can only pick months that actually have data.
  4. 04Put Xero state in its own store and covered it with unit tests.

03 · Before / after

Drag the divider to compare

Demo image (replace): invoices generated from the organisation list
Demo image (replace): invoices made by hand in Xero
BeforeAfter
Monthly invoicesBefore: invoices and statements made by hand in Xero, outside EzOM. After: generated and downloaded from the organisation list.

04 · What I achieved

What changed

  • Account managers generate and download monthly invoices and statements from the organisation list.
  • Organisation users see their invoices on the account balance page.

Next case study · EZOM

Testing Coverage Improvement

Monthly Invoices & Statements · Xero · case study | Bui Thuy Ngoc