Integrations/Xero

From Emersion
Revision as of 13:59, 15 October 2015 by Scarpenter (talk) (Configuration of Xero and Emersion)
Jump to: navigation, search

Xero Integration

Emersion is committed to integration to the Xero Billing Platform found at www.xero.com.

Emersion supports:

  • invoices being pushed out
  • receive payments processed in Xero
  • processing credit notes inbound

This basic flow describes the integration further.

  • A new invoice is generated in Emersion under an account active for Xero. This requires the customer account to be present in both Xero and Emersion. A one to one relationship with one company in Xero and one in Emersion must exist.
  • This invoice is then created via the integration in Xero.
  • The new invoice in Xero is generated with no cardlines and just a description to hold it in place, it is generated in Draft status.
  • The invoice receives cardlines and charges as usual.
  • Once the invoice in Emersion is marked as Approved, all pending cardlines will be sent to the appropriate Xero invoice as line items, and marked as Approved in Xero.
    • If there are any payments allocated against the invoice in Emersion, they will be transferred to the invoice in Xero.

Integration Supported

  • A new invoice is generated in Emersion under an account active for Xero.
  • This invoice is then created via the integration in Xero.
  • The new invoice in Xero is generated with no cardlines and just a description to hold it in place, it is generated in Draft status.
  • The invoice receives cardlines and charges as usual.
  • Once the invoice in Emersion is marked as Approved, all pending cardlines will be sent to the appropriate Xero invoice as line items, and marked as Approved in Xero.
    • If there are any payments allocated against the invoice in Emersion, they will be transferred to the invoice in Xero.

As any payments after this fact are allocated against the invoice in Emersion, so too will they be transferred to Xero for the same value against the invoice.

If:

  • any payments are made in Xero against the invoice; AND
  • these payments don’t exist in Emersion; AND
  • the payment is against an invoice that we know about in Emersion

then Emersion's system will pull the details into Xero and assign a payment against the invoice in Emersion.

These features and functionality assumes the following:

  1. Each Emersion Service Provider Account to have a one to one relationship with one company in Xero. This is done via the Private API in Xero.
  2. Emersion knows of ONE bank account that payments go to when sent to Xero.

Assumptions

Emersion knows of ONE bank account that payments, when sent to Xero, go into. The Emersion API is not going to be designed to handle payment submission to a choice of bank accounts or more than one account in Xero marked as ‘receive payment allowed’.

Emersion will only pull over payments to Emersion from Xero in the API, under the following rules: The payment does not exist in Emersion already. The invoice that the payment is done against in Xero exists in the Emersion system. Any overpayments (that in Xero, generate an unrelated new invoice and a credit) will not be pulled over as we have no knowledge of the invoice that is generated by an overpayment (Split payment) in Xero.

Configuration of Xero and Emersion

This requires subscription to the Xero Integration. Please contact sales@emersion.com.au for a quote for this feature.

A number of configuration steps to be done so that a service provider account can communicate directly with Xero.

At a high level, your company must:

  • Be a Xero customer and use Emersion for billing.
  • Obtain a OAuth Consumer Key and Consumer Secret and provide this to Emersion
  • Obtain a Private Key and a Public Key and provide this to Emersion
  • Know which bank account to point payments at. Emersion needs the account ID from Xero.

Cumulus uses the 'Private Application' method of communication with the Xero API, via a private / public OpenSSL key. The key can be generated on your server or workstation, with OpenSSL, instructions can be found on [| Xero's Developer website].

Once you have a key you will need to arrive at the Xero API centre

Once in the developer centre, you can add an application.

Choose private, add your application name (normally something like 'Emersion interface to Company Name', select the right company to interface with, and then provide the public key generated in the instructions for generating keys in OpenSSL. Once you submit this, you will have a new connection.

The information you'll need from the applications page are the OAuth Consumer Key and the Consumer Secret. 'Emersion require both the Consumer Key and Consumer Secret to complete the set up of the Xero integration.'

Please submit this information with your signed Work Order to workorder@emersion.com.au, or alternatively, update the Work Order ticket with this information. Once Emersion has enabled and configured the feature, you will have Xero and Emersion integrated.


Accounts Synchronisation

Accounts in Emersion (customers) need to know who they are going to be matched up with in Xero.

At this point in time, the Export Reference field of an account needs to match EXACTLY what the Contact Name is in Xero. The screenshot here shows how this works at a really basic level.

Xero contact.jpg

Only accounts that have a valid Contact Name in the Export Reference field in Emersion will be able to interface with the relevant contact in Xero, otherwise the communication will fail.