QuickBooks Connector
Overview
The QuickBooks Connector integrates SureInk with QuickBooks Online (QBO) to automate financial workflows. It primarily focuses on ensuring that billing and payment activity in SureInk is reflected accurately in the customer's accounting system.
Data Synchronization Flow
- Customer Data: SureInk
Customerprofiles are mapped to QBOCustomerrecords to ensure invoices are attributed correctly. - Product/Item Data: SureInk
ProductsandServicesare synced to QBOItems. - Financial Data: When an order is completed in SureInk, the connector generates
InvoicesandPaymentsin QuickBooks.
Connector Sync Actions
| Direction | Entity Sync'd | Summary | Trigger | Primary Code Modules |
|---|---|---|---|---|
| Outbound | Customer → QBO Customer | Maps SureInk Customers to QBO records for invoicing. | Automatic / On-Demand | QuickbooksCustomerClient.java |
| Outbound | Order → QBO Invoice | Generates QBO Invoices based on closed orders in SureInk. | Automatic (Order Close) | QuickbooksInvoiceClient.java |
| Outbound | Payment → QBO Payment | Records payments against QBO invoices. | Automatic (Payment Recv) | QuickbooksPaymentClient.java |
Major Code Modules (com.sureink.connector.external.quickbooks)
controller: Handles OAuth2 callbacks (QBCallbackController) and manual settings management.service.customer: Logic for maintaining customer parity between systems.service.invoice: Automatic generation of QBO Invoices from SureInk order data.service.payment: Recording payments received in SureInk within the QBO ledger.QBOAuth2PlatformClientFactory: Factory for initializing the Intuit SDK with platform-specific credentials.
Linkages and References
- Parent Service: Part of the
sureink-connectormicroservice. - Internal Clients: Uses
sureink-cloud-msato listen for completed order events. - Configuration: Environment variables define the
QUICKBOOKS_CLIENT_IDandQUICKBOOKS_CLIENT_SECRET.
External References
Glossary
- DTO: Data Transfer Object - An object that carries data between processes.
- MSA: Master Subscription Agreement - The primary contract governing the relationship between the platform provider and the subscriber.
- OAuth2: Open Authorization 2.0 - An industry-standard protocol for authorization.
- QBO: QuickBooks Online - A cloud-based accounting software package developed by Intuit.
- REST: Representational State Transfer - An architectural style for providing standards between computer systems on the web.
- SDK: Software Development Kit - A collection of software development tools in one installable package.
- UI: User Interface - The space where interactions between humans and machines occur.