top of page

Case Study: Creating CRM flows

from Accounting Activity

How an NGO in Cape Town accelerated their donor engagement

U-Turn is a Cape Town based NGO serving and empowering homeless people in the our city. Having grown and developed since 1997, it uses an innovative skills based programme with long-term results for rehabilitation and reintegration. Partnering with many supporters in the country, as well as donors in the UK and USA, it has managed to see 80% of participants remain employed and sober six months after the program.​

With a high level of engagement and value placed in the various supporters and donors that enable them to do their special work, their Salesforce Customer Relationship Management system (CRM system) is essential to ensure donors receive feedback and information about the organisation's work.

The Issue


Keeping the CRM system in sync with the accounting system has always proven problematic and solutions to date involved lots of re-entry of data to ensure that the systems remained in sync and reconciled.


The organisation's Accounting team rigorously captures all pledges and donations, and these are then handed over to the Donor Relationship team to capture into Salesforce. However, large amounts of data is re-entered a second time, resulting in duplicated work and possible discrepancies between information in the accounting systems, and the donor management systems.


In addition, contact details were being kept in Xero and in Salesforce, meaning that if updates were made in one place and not the other, it was impossible to know which version to trust.

The Opportunity

Having recently moved over to Xero to handle the NGO's accounting requirements, and with both Xero and Salesforce having extensive API implementations, the opportunity was presented to remove all this duplicated work and automate all Xero to Salesforce synchronisation.

Our Solution


Using Xero's WebHooks functionality, a NodeJS-based server automatically receives all Xero Invoice activity, in realtime. Each activity event is then analysed according to U-Turn's requirements, and if the Invoice activity should result in a new Salesforce Opportunity being created the data is automatically transformed into the correct form as expected by Salesforce and pushed into Salesforce.


Because of the real time nature of Xero's Webhooks, no polling or scheduled syncing needs to be performed - an Invoice is created or modified in  Xero, and the Salesforce opportunity (if applicable) updates - simple and instant. It was rewarding to be able to answer the client's question "So when will the Xero Invoice capture be reflected in our Salesforce?" with the statement "Oh, it'll be there automatically as soon as the invoice is captured" and see their delight.


Also, all contacts are now kept only in a single system, with a unique ID linking back to this in the other system, meaning contact information is always up to date and trustworthy.


The Result

  • Salesforce Opportunities are Created and Updated whenever qualifying Invoice activity takes place, in realtime

  • Duplicate data entry is eliminated

  • The risk of errors and discrepancies have been removed

  • Contact information now lives in one place but can be accessed in both

  • A real-time, shared spreadsheet is updated with details of every qualifying invoice activity and resulting opportunity created/modified, so that an audit trail exists and follow up work can be performed

Give us a call. Let's automate your business!

Larasoft can design and implement across the full spectrum for you

Our services include the following:

  • custom connections via API to Xero, as well as other API providers like Salesforce, WorkflowMax etc

  • live, automatic updates via Xero's 'Web Hooks' Technology

  • on-prem or cloud based Database storage (AWS and Azure both supported)

  • backend servers to handle automation and flow

  • frontend User Interface to allow engagement and configuration

  • Integration with BI and Data Analysis tools like PowerBI, Tableau, Office365 etc.

bottom of page