The difficulty was that there were no tools for quick integration of 1C with QuickBooks. Moreover, to connect to external services of QuickBooks one should pass an OAuth 2.0 authorization, which means that one had to get, being inside 1C, a code for token generation and a token itself from QuickBooks. For QuickBooks could provide such data, a global IP-address is required. But not every customer with a locally installed 1C-system can afford a static IP and a web-service maintenance. To find a universal solution we developed a mediate service that collects necessary authorization data from QuickBooks and then transfers them to 1C. We located a web-server and the service itself on a separate workstation.
There exist two options of further functionality implementation:
- in case the end user has no IP-address of his own and no possibility to deploy additional infrastructure, we use the address of our workstation;
- if the end user has such desire and ability, we can locate a mediate service on his resources.
Then we proceeded with integration of QuickBook services into 1C. We wrote exchange rules for the following documents: SalesOrder (customer order), SalesInvoice (delivery note), PaymentReceipt (receipt of payment), PaymentExpence (invoice), PurchaseOrder (order to supplier).Result
We implemented an option of electronic workflow in 1C and got the opportunity to send accounting documents for mutual payments with counterparties to QuickBooks and to upload them to 1C. We are still customizing this solution and help implementing it to our end customers.