We currently are working with a client who uses Xero for their accounting. For them, in Salesforce.com, the record that contained billing information was a custom object. So at a certain point in the lifecycle of the records in this custom object, we needed to pass details from that object into Xero in order to create an invoice with its line items. The Xero invoice would then be used to manage accounts receivable.
For a while we tried a third party solution, but had troubles with getting it to work properly. Since Xero has a good API, eventually we just decided to write an application in Salesforce.com that would pass data from the relevant account, contact, and custom object records into customer, invoice, and invoice line items in Xero.
Now, when our custom object record satisfies the criteria, we call Xero through its API, check to see if the customer record already exists. We create it if not or select it if it does. Then from the details on our custom object record we create an invoice and its line items.
|Screenshot of the invoice in Xero|
The real power of this custom integration between Xero and Salesforce is that we can connect from any object in Salesforce.com and push it into Xero into the exact databases we require. Total flexibility.
Note, the code for this integration lives in Salesforce and is invoked from Salesforce. So we have no third party web services that have to be maintained. The code can query Xero, insert records into Xero, or update existing records in Xero.
If you have a need to integrate your Salesforce.com org with Xero or Quickbooks, feel free to reach out to us. You can use the form to the right or reach us through our website: www.snapptraffic.com. We'd love to hear about your project and give you a feel for the cost and timeline of an integration.