HubSpot + Macola integration

Macola 10 holds the customer, the quote and the open invoice for shops ECI now serves as existing customers. Reading them into HubSpot, and the hours it takes.

Connects by API , iPaaS

Scope this integration Book a scoping call Estimate the cost

Is there an official Macola + HubSpot integration?

Not from HubSpot or from ECI, which owns Macola. As of September 2026 the HubSpot App Marketplace lists ECI Macola SYNC, Data Lake, AI, MCP by Commercient, a third-party app. We recommend a read-only custom API integration over ECI's ERP API, which serves Macola's customers, quotes, orders and invoices, at 70 to 150 build hours.

Recommended route
Custom API integration
Build effort
70 to 150 hours
In the HubSpot App Marketplace?
Yes, ECI Macola SYNC, Data Lake, AI, MCP by Commercient
Typical elapsed time
4 to 8 weeks

Marketplace checked September 2026.

Why teams connect Macola to HubSpot

Macola was built for small and mid-sized manufacturers and distributors, and ECI Software Solutions, which owns it now, lists it for existing customers only. Its Macola page points readers to JobBOSS², M1 and Deacom instead. For the shops still running Macola 10, that leaves a working ERP beneath a sales process that increasingly lives somewhere else.

Macola 10 has CRM built in. ECI describes it holding every lead and quote request, linking opportunities to sales quotes and measuring how many turn into orders. Teams that move marketing and pipeline to HubSpot keep Macola for the customer, the price, the order and the invoice, then need those facts in front of sellers who no longer open Macola at all. Macola 10 also runs finance and distribution, so the customer sits beside open orders, invoices and payment terms, the things a seller would otherwise phone the office to ask about.

The route is narrower than it first looks. ECI’s product-agnostic ERP API reads Macola’s customers, contacts, quotes, sales orders and invoices, and it creates customers, contacts and orders for JobBOSS² only. That one fact shapes the design: Macola stays the master for every record it holds, and HubSpot receives a faithful, current copy that sellers can report on.

What syncs

Five objects, all moving one way. Macola customers, which the ERP API calls organizations, become HubSpot companies, and their contacts become contacts. Quotes become deals. Sales orders and AR invoices land on custom objects, and each order carries the quoteID it came from, so it ties back to the deal that won it.

Macola exposes more sales detail through this API than its sibling products do. Its quotes carry an award probability and a lost sale code, its orders carry an order type, an original order type, a status and a total, and its invoices carry a balance and a paid date. Those fields map to deal and custom object properties that a pipeline report can actually use, which is most of the reason to connect the two.

Keys are the ERP API’s uniqueID, a GUID for Macola records, held in a custom HubSpot property. ECI guarantees it only within one resource and one company account, so each property records the resource it belongs to, and the association pass joins on the customer and quote IDs the API returns.

Objects that sync between Macola and HubSpot
Source object HubSpot object Direction Match key Notes
Organization Company Into HubSpot The ERP API uniqueID, a GUID for Macola, with the organizationID shown The ERP API calls Macola customers organizations.
Contact Contact Into HubSpot Email, with the contact uniqueID as the tie breaker
Quote Deal Into HubSpot Quote uniqueID, associated to the organization Award probability and the lost sale code map to deal properties.
Sales order Custom object Into HubSpot Sales order uniqueID, associated to the deal through its quoteID An order with a quoteID closes that deal rather than opening another.
AR invoice Custom object Into HubSpot Invoice uniqueID, associated to the organization Read through version 2 of the ERP API, the version that exposes AR invoices; the balance and due date drive a past due flag on the company.

Architecture

Macola’s side of the ERP API is read on a schedule, one watermark per resource. The service holds OAuth 2.0 client credentials issued in ECI’s Integration Engine Management Console, caches each 60 minute token, and reads organizations, contacts, quotes, sales orders and invoices in turn, asking for rows whose rowVersion is above the last value saved. ECI documents rowVersion as rising on every new or updated record, and every one of those Macola resources can be filtered and sorted on it.

Pages come back through take and skip. Each batch is upserted into HubSpot on the stored GUID, and only then does the watermark for that resource move. An association pass follows, joining contacts and quotes to companies and orders to the quotes they came from.

Reconciliation uses the API’s count parameter, which returns a total without the rows, compared with HubSpot per resource after each cycle. A replay endpoint re-reads any resource from a chosen rowVersion.

The service reads the source on a schedule using a changed-since watermark, upserts each record keyed on its source identifier, then runs a separate associations pass.

What the API allows

API style
REST
Authentication
OAuth 2.0
Webhooks
Unknown
Changed-since filter
Yes
Sandbox
Unknown
Rate limit
Not documented

Developer documentation integrations.ecimanufacturing.com

Three ways to connect

What decides this for Macola is whether ECI will activate its API for your install. With the ERP API switched on, a custom API integration reads exactly the objects above, on watermarks ECI documents, and much of it carries over to M1 or JobBOSS², which the same API serves.

Without the API, the database is the route. ECI describes Macola 10’s reporting as built on SQL Server Reporting Services, with ad hoc reports written as plain SQL queries, so a managed sync on Skyvia can read a read-only SQL login through its on-premises agent. It needs no activation, and it trades the API’s documented resources for table knowledge we build in discovery. Commercient’s ECI Macola app is the third route, with its mapping and support on Commercient’s side.

  • Managed sync on Skyvia

    Possible

    Where ECI will not activate the API, a managed sync on Skyvia can read the Macola database through a read-only SQL login and an agent inside your network, at the cost of mapping tables the API would have named.

  • Marketplace app

    Possible

    Commercient's ECI Macola app is a third-party listing, with its mapping, runtime and support on Commercient's side. It fits a standard customer and order feed with no runtime of your own to watch.

What breaks and how we prevent it

Macola missing from v2.1’s product list

The newest ERP API version, v2.1, names Deacom, M1 and JobBOSS² as its generally supported products and leaves Macola off, while its resource tables still list Macola and v2 names it outright. We test every resource the sync uses against your install on the version we choose, and pin that version until a retest passes.

A converted quote counted twice

When a Macola quote is won, the sales order that follows carries its quoteID in the API. A sync that treats every order as new opens a second deal beside the one that already won. We close the quote’s deal from the order instead, and create a deal from an order only when no quote stands behind it.

Customers created only in Macola

The ERP API accepts new organizations, contacts and sales orders for JobBOSS² only. A HubSpot form that expects to create a Macola customer has nowhere to send it. We keep customer creation in Macola, flag a won deal whose company has no Macola ID yet, and let the office create the customer there.

Slow answers from an office server

ECI warns that the ERP API’s performance can vary widely because the database behind it may be hosted or installed on premises. A Macola server on the office network can answer slowly during working hours. We keep pages small, run the first full load out of hours, and alert on any run that takes far longer than the one before it.

Our approach

  1. Scope. We confirm your Macola release, whether ECI will activate the ERP API for it and which objects sellers need, and ask about CRM history.
  2. Architect. We fix the five resources, the GUID keys, the rowVersion watermarks, the API version and the rule for converted quotes.
  3. Build. The service is written against your install with a read-only API user and a HubSpot portal allowlist that fails closed.
  4. Validate. We reload every resource into a HubSpot sandbox, reconcile totals with count-only queries, and walk open quotes with the sales lead.
  5. Operate. We watch run times and counts, keep replay available, and retest the pinned API version whenever ECI publishes a new one.

Common questions

Is there a HubSpot app for Macola?

The one listing is third-party: ECI Macola SYNC, Data Lake, AI, MCP by Commercient, which runs its own mapping on its own platform. ECI's route for Macola is the product-agnostic ERP API in its Integration Engine, which reads Macola once ECI activates it for your account. That API is what a custom integration builds on.

Can HubSpot write customers or orders back into Macola?

Not through ECI's ERP API. Its operations for creating organizations, contacts and sales orders list JobBOSS² as the only supported product, so for Macola those resources are read only. A new customer therefore starts in Macola, where the office creates it, and reaches HubSpot on the next run. When a won deal belongs to a company with no Macola record yet, the sync flags it for the office instead of guessing.

Does Macola's built-in CRM history move to HubSpot?

Not through the sync. ECI describes Macola 10's CRM as holding leads, opportunities linked to quotes and their conversion to orders, but the ERP API offers quotes and no lead or opportunity resource. Historic CRM records are a one-time migration from the database, scoped on their own. The sync then keeps customers, quotes, orders and invoices current.

How current is Macola data in HubSpot?

As current as the schedule. We usually run quotes and orders every fifteen minutes to an hour and invoices nightly. Each run reads only the rows whose rowVersion rose since the last one, so frequent runs stay light. ECI warns that installs on premises can answer slowly, so we measure run times in the first week and set the schedule from them.

Should a Macola shop integrate HubSpot or migrate off Macola first?

Integrate unless a move is already scheduled. ECI lists Macola for existing customers and points readers to JobBOSS², M1 and Deacom. The same ERP API serves those products, so much of a Macola integration carries over if the move stays within ECI. If a migration date is set, connect HubSpot to the new ERP instead.

What if ECI will not activate the ERP API for our Macola install?

Then the database is the route. ECI describes Macola 10 reporting as built on SQL Server Reporting Services, with ad hoc reports written as plain SQL queries, so a managed sync on Skyvia can read a read-only SQL login through an agent inside your network. It skips activation and costs discovery time mapping tables the API would have named.

What does a Macola and HubSpot integration take in hours?

Budget 6 to 12 hours of discovery and 70 to 150 hours of build for five objects moving one way. Discovery covers API activation, your Macola release, the rule for converted quotes and what to do with the CRM history. Most of the build is the watermark, the association pass and the reconciliation, because the reads themselves are simple.

Partnerships and accreditations

  • HubSpot Elite Solutions Partner
  • HubSpot Custom Integration Accreditation
  • HubSpot CRM Data Migration Accreditation
  • HubSpot Solutions Architecture Design Accreditation

HubSpot accreditations

  • HubSpot Onboarding Accreditation
  • HubSpot Academy Accreditations

Industry specializations

  • HubSpot Healthcare Industry Specialist
  • HubSpot Financial Services Industry Specialist
  • HubSpot Manufacturing Industry Specialist
  • HubSpot Quote to Cash Capability

Partnerships

  • Anthropic Solutions Partner

Trust and compliance

We design integrations to support the security and privacy rules your business works under, and we build them on independently audited platforms.

How we build

  • Sandbox first. We build and test in a sandbox before anything reaches production.
  • Fail-closed allowlists. An integration runs only against the HubSpot accounts it is approved for.
  • Least-privilege access. Each integration gets only the API scopes it needs.
  • Secrets in a vault. Keys and tokens live in a secrets vault, never in plain text.
  • Sensitive data scoped early. Discovery covers sensitive data, access controls and any BAA or data-processing needs.
  • A compliance package for regulated industries: audit logging, field-level encryption and sensitive-data handling.

Scope a Macola integration

Send the systems, the direction and the record volume. We reply with a scope and an effort band within one business day.

  • Macola

Type any system and its version, such as Sage 300 or Sage 50. Press Enter or a comma after each one.

Add more detail (optional)

Optional. A sentence or two about the workflow is enough.

We use these answers to scope the work and for nothing else. Privacy policy.

Prefer to talk it through first? Book a technical scoping call

Talk to the people who build these

  • Nijat
  • Sean
  • Prash

Book a scoping call

Sources
  1. Manufacturing and Distribution ERP | Macola Software ecisolutions.com
  2. 10 Reasons To Upgrade To Macola 10 resource.ecisolutions.com
  3. Macola 10 Features resource.ecisolutions.com
  4. ECI Manufacturing API Documentation integrations.ecimanufacturing.com
  5. ERP API integrations.ecimanufacturing.com
  6. Authentication API integrations.ecimanufacturing.com
  7. Agent Connections docs.skyvia.com