Reporting location
Warehouse for cross-source metrics, HubSpot dashboards for operational views.
Why. Revenue, product and finance data live elsewhere.
Trade-off. A second place to maintain definitions.

CRM and business systems · HubSpot
A lean marketing and sales stack: consent-aware forms and tracking on the site, HubSpot as the system of engagement, and a warehouse for reporting that does not live inside the CRM.
A reference architecture from EITSAA, not a named client system. Service limits, prices and product features change, so confirm current details before you commit to a design.
A visitor sees a consent banner. Non-essential tracking and marketing cookies load only after consent, and the choice is stored.
A form posts to HubSpot's Forms API, ideally through your own endpoint so that spam filtering, validation and logging stay in your control.
HubSpot matches or creates the contact and company and records the source, consent and communication preferences.
Workflows enrol the contact by lifecycle stage and behaviour and send consent-based email with a working unsubscribe.
Qualified leads go to sales with tasks and sequences, and service tickets sit on the same record.
Webhooks and the CRM API stream changes to a sync job that uses incremental cursors and retries.
Data lands in the warehouse as raw tables with history, using Fivetran, Airbyte or a small custom job.
Modelled data feeds dashboards and, through reverse sync, audiences and scores back into HubSpot.
| Component | What it does | Why this choice |
|---|---|---|
| HubSpot CRM and Marketing Hub | Contacts, deals, forms, email and workflows. | A single data model across marketing, sales and service. |
| Forms endpoint (API Gateway and Lambda or Azure Function) | Server-side submission and validation. | Better spam control and less dependence on third-party scripts. |
| Consent management platform | Cookie and tracking consent. | No tracking before consent, with a record of the choice. |
| HubSpot webhooks and CRM API | Change feed and bulk access. | Efficient incremental sync. |
| Fivetran, Airbyte or a custom job | Managed connectors or code. | Connectors save time. Custom jobs give control and lower cost at small scale. |
| Cloud data warehouse | Long-term history and cross-source reporting. | Reports outside the CRM avoid its limits and keep history. |
| dbt and a BI tool | Modelling and dashboards. | Version-controlled definitions. |
| Reverse ETL (optional) | Pushes scores or segments to HubSpot. | Closes the loop without manual lists. |
Reporting location
Why. Revenue, product and finance data live elsewhere.
Trade-off. A second place to maintain definitions.
Form handling
Why. Validation, honeypots and a retry queue.
Trade-off. A small amount of code to maintain.
Consent model
Why. Respects the Spam Act and supports audit.
Trade-off. Slower list growth than pre-ticked boxes, but better quality.
Sync design
Why. Webhooks can be missed.
Trade-off. An extra reconciliation job.
Private app tokens with minimal scopes in a secret manager, SSO for HubSpot users, role-based access and no personal data in URLs.
Retry queue for form posts, idempotent upserts and reconciliation of webhooks.
Server-side events, lightweight scripts and async loading protect page speed.
HubSpot tier and contact count, connector row volume and warehouse queries.
Property naming standards, workflow documentation and quarterly list hygiene.
Suppress dormant contacts and avoid unnecessary tracking scripts.
The sync job runs in a private subnet with outbound access to HubSpot only. The form endpoint sits behind CloudFront or API Gateway with WAF rate limits.
HubSpot users sign in with SSO and roles per team. Private app tokens are stored in Secrets Manager and rotated. Warehouse access is role-based and PII columns are restricted.
Classify properties, use HubSpot's sensitive data settings and collect only what you use (APP 3). Exclude contact identifiers from product analytics unless needed. Define retention and deletion for unsubscribed contacts. Review where HubSpot hosts data for your obligations.
| Control | How this design addresses it |
|---|---|
| Collection and notice | Collection notices at forms support APP 1 and APP 5. |
| Marketing consent | Spam Act requirements: consent, identification and unsubscribe. |
| Multi-factor authentication | SSO with MFA on HubSpot. Essential Eight. |
| Overseas disclosure | Assess APP 8 for SaaS and connector data flows. |
Mappings show how the design supports each control. They are not certifications, and EITSAA does not claim IRAP assessment or compliance for any reference architecture.
| Failure mode | Mitigation |
|---|---|
| Webhook missed | Periodic reconciliation by modified date. |
| Duplicate contacts | Upsert by email, merge rules and external IDs. |
| Form spam floods the CRM | Honeypot, rate limit and CAPTCHA only when needed. |
| API rate limit | Backoff, batching and incremental cursors. |
HubSpot seats and marketing contacts, connector rows and warehouse compute.
Xero and MYOB
Quote, invoice and payment data moving safely between a CRM and Xero or MYOB: OAuth, idempotent writes, GST-correct line items, reconciliation and clear ownership of every record.
Data platform
One governed customer profile built from the systems you already have: identity resolution, consent-aware activation and privacy controls, with a clear line between what is analysed and what is acted on.
Zendesk and ServiceNow
Zendesk or ServiceNow as the system of record for tickets, a chatbot that answers from approved knowledge with citations, and a clean hand-over to a person with full context when it cannot.
Tell us your systems, constraints and timeline. We reply within one business day, and the initial conversation is free.