Extending Xero through their API

, posted: 2-Oct-2012 17:44

Xero is fantastic accounting software.  Through their API (Application Programming Interface) they allow third parties to integrate into their main accounting engine.  This allows developers to create more specific add-ons suited to their specific niches - there is already an extensive list of existing add-ons on the Xero site..

This post serves as an example of what can be achieved.  Please note this is not a product we are selling, it's purely something we've created for our own internal use.

A small part of our business is the web-hosting of our development clients.  With a few hundred clients, we were original using the re-occurring invoice function in Xero.  As this client base has grown, it's become harder and harder to administrate these clients, and make sure that everyone is billed correctly.

Using data pulled live from our servers, we match a client with a billing plan, and send out an invoice on the first day of every month.  An example of the email that's sent out is shown below (click to enlarge):


We've extended this over the default email out capabilities of Xero in the following way:

  • As this is a custom template, we have a lot more flexibility with formatting.
  • The invoice is always sent from our main accounts email (if one of our staff edited a reoccurring invoice in Xero, they would be set as the new sender next time the invoice was sent out, a very annoying quirk of Xero)
  • The subject line contains the invoice number and invoice reference
  • The body of the invoice contains the invoice number, the amount that is due, plus when the invoice is due.
  • We link directly to our payment gateway (powered by BNZ) which prepopulates all the values, and if a successful payment is made, creates a payment against this invoice in Xero, making bank reconciliation quick and painless.
  • If the client has overdue invoices, these are listed in a summary table, with a total shown at the top.
  • Each overdue invoice has a link which the client can click on to view the invoice as a PDF online
  • We stream down the original invoice from Xero and attach it to the email as a PDF

Hopefully this gives you some ideas of what the Xero API will allow you to do.  As always, (blatant plug), if you're after any custom Xero integration, contact us.

Other related posts:
eWay response codes as a file
Fixing strange characters printing on Epson receipt printers
User accessibility, and keeping the bad guys out

comments powered by Disqus

nate's profile

New Zealand

I'm Nate Dunn, and I work for 3Bit, and am a moderator here at Geekzone.

Use Autotask and Xero? Sync data between them with My Accounting Toolbox.

Use Xero and SagePay? Get your invoices paid faster using HostedPay.


The views and opinions represented on this blog are personal and belong solely to the blogger and do not represent in anyway those of 3Bit Solutions Limited or any other company.

Latest posts

Cyber attacks on NZ small busi...
How one database query can fix...
Review: Navman MiVUE680...
Review: Huawei P9...
Poor man’s automation - ...
App Review: WorldRemit...
eWay response codes as a file...
International podcast conferen...
Is the Nexus 6P the perfect An...
Review: Huawei G8...