Connectors
The Connector Service acts as the central translation and communication layer between the internal SureInk Platform and external third-party application systems such as CRM, Accounting, Reporting and Usage. It is designed to abstract the complexities of various external APIs and provide a unified interface for the rest of the platform.
Functional Overview
The Connector service is responsible for:
- Data Synchronization: Moving data between SureInk and external systems like Salesforce, QuickBooks, and WooCommerce.
- Third-Party Event Handling: Receiving webhooks from external services (e.g., Stripe, WooCommerce) and translating them into internal system events.
- Scheduled Tasks*: Performing periodic synchronization and cleanup operations.
Major Code Modules
The module is structured into two primary areas:
Internal Components (com.sureink.connector.internal)
client: Feign clients used to communicate with other SureInk microservices (e.g.,LicenseClient,CustomerClient).controller: Internal endpoints for triggering sync tasks and managing the connector state.service: Core business logic shared across multiple integrations.event: Handling of internal Kafka events.
External Integrations (com.sureink.connector.external)
Each sub-package represents a specific third-party integration to the platform:
- Salesforce: (
.salesforce) Complex integration for syncing customers, products, and opportunities. - QuickBooks: (
.quickbooks) Financial data synchronization for accounting. - Stripe: (
.payment) Handling payment transactions and webhook processing. - WooCommerce: (
.wordpress) E-commerce integration for order and product syncing.
Linkages and References
- Parent/Gateway: All external requests come through the
SureGatewayApplication(sureink-gateway). - Core Logic: Interacts heavily with
CloudMsaApplication(sureink-cloud-msa) for license and subscription data. - Data Storage: Uses
sureink-customerfor syncing customer profiles created in external systems. - Shared Data: Utilizes
sureink-common-modelfor standardized DTOs across integrations.