HubSpot + Passepartout integration

Passepartout's Mexal holds the customer ledger, orders and invoices of many Italian SMEs. What its WebAPI and SQL replica can carry into HubSpot, in hours.

Connects by API , iPaaS

Scope this integration Book a scoping call Estimate the cost

Is there an official Passepartout + HubSpot integration?

No. Neither HubSpot nor Passepartout publishes a Mexal app, and a HubSpot App Marketplace search for Passepartout returns no results as of September 2026. The route we recommend is a custom API integration over the Mexal WebAPI that reads customers, items and sales documents on a schedule and keys each on its Mexal code, at 70 to 150 build hours. Teams need it once order status or open balances have to drive HubSpot workflows rather than a monthly export.

Recommended route
Custom API integration
Build effort
70 to 150 hours
In the HubSpot App Marketplace?
No listed app
Typical elapsed time
4 to 8 weeks

Marketplace checked September 2026.

Why teams connect Passepartout to HubSpot

The situation we plan for is a parent company in Italy or San Marino that runs Mexal, and a sales subsidiary abroad that works in HubSpot. The parent posts orders, invoices and credit notes in Mexal, on a server of its own or in Passepartout’s hosted Live edition. The subsidiary’s sellers never see any of it, so they chase the office for order status and open balances, and quote accounts that finance is already worried about.

Passepartout sells Mexal only through its network of dealers, and it offers a CRM of its own for Mexal, with a pipeline, lead profiling and a shared agenda. So the question that reaches us is rarely which CRM to use. It is how to keep HubSpot, where the subsidiary already works, in step with the ERP the parent will not leave. That puts two parties in every project: the team that owns HubSpot, and the dealer who looks after the Mexal installation.

The documentation shapes the work as well. Passepartout’s public manuals are in Italian, and the full WebAPI manual sits in the developer area of its reserved portal rather than on the open web. We work from the public material, get the rest through the dealer, and write the mapping down in English for the team that will live with it.

What syncs

Four objects carry the value. Mexal customer accounts become HubSpot companies, items become products, sales orders become deals, and invoices and credit notes land on a custom object associated to the company.

Keys come from Mexal, never from names. A customer keys on its Mexal account code, held in a custom HubSpot property, and an item on its item code. Sales documents need more care. Mexal issues quotes, orders, delivery notes and invoices as typed documents, keeps some archives per fiscal year, and a WebAPI request names its company and year in a header. A document key is therefore the document type and number scoped by company and year, never the number on its own.

The public material shows customer, item and document calls. The full list of resources on your installation comes from the WebAPI’s own HELP listing, and discovery settles whether invoices come through the WebAPI or, where it is licensed, from the MexalDB replica. Mexal owns the ledger and every document, so those stay read only in HubSpot. The one write back worth building first is a won deal creating the customer in Mexal.

Objects that sync between Passepartout and HubSpot
Source object HubSpot object Direction Match key Notes
Clienti (customer accounts) Company Two way Mexal account code, held in a custom HubSpot property A won deal can create the customer in Mexal, and Mexal's code then comes back.
Articoli (items) Product Into HubSpot Mexal item code
Ordini (sales orders) Deal Into HubSpot Document type and number, scoped by company and fiscal year Orders stay read only in HubSpot. Mexal remains the system of record.
Fatture (invoices and credit notes) Custom object Into HubSpot Document type and number, scoped by company and fiscal year Associated to the company on the customer's account code.

Architecture

The shape is a polling sync with a stored fingerprint per record. A service logs in as a dedicated WebAPI user, names the company and year it wants in Passepartout’s coordinates header, and pages through each resource using the next marker. Passepartout’s 2021 WebAPI training material sets a page at a hundred records, a size we confirm with the dealer. The public material documents no modified-since filter, so the service hashes every record it reads and compares the hash with the one it stored on the last run. Only changed records reach HubSpot, as batch upserts keyed on the Mexal codes, followed by a separate association pass.

State lives in the service: the last hash per record, the last good run per resource, and a replay endpoint that re-reads one resource on demand. On Live, calls go to Passepartout’s hosted WebAPI address and carry the cookie it requires there. On a local installation, they go to the address and port set in Mexal’s WebAPI configuration. Where the MexalDB replica runs, the same service can read SQL for the large collections and keep the WebAPI for the customer write back.

A sync service with its own WebAPI user pages through Mexal, a hundred records a read in Passepartout's 2021 training material, keeps a hash of every record it has seen, and upserts only what changed into HubSpot on Mexal's codes. The one write goes the other way: a won deal creates the customer in Mexal.

What the API allows

API style
REST
Authentication
Basic authentication
Webhooks
Unknown
Changed-since filter
Unknown
Sandbox
Unknown
Rate limit
At most 3 concurrent connections per WebAPI user and 100 records per read, per Passepartout's 2021 WebAPI training material, confirmed with the dealer in discovery

Developer documentation edupass.it

Three ways to connect

What decides the route here is where Mexal runs and which Passepartout modules the installation already licenses, not the object count.

A custom API integration over the WebAPI works everywhere, because the same calls answer on a local server and on Live. It is also the only route of the two Passepartout documents that can write, since MexalDB replicates Mexal’s archives outward.

Where Mexal runs on your own server with MexalDB, the replica turns Mexal into SQL tables that managed sync on Skyvia can read one way into HubSpot, with no service to host. What we steer away from is a general automation platform: the WebAPI’s own headers, the cookie on Live and paged reads make every flow expensive in steps.

  • Managed sync on Skyvia

    Possible

    On a local installation licensed for MexalDB, Mexal replicates its archives into SQL Server or MySQL in real time, and managed sync on Skyvia can read that replica one way into HubSpot without calling the WebAPI at all.

  • iPaaS

    Avoid

    Every WebAPI call carries Passepartout's own authorization header and a company and year header, Live adds a required cookie, and reads come back in pages, so a per-task platform spends most of its runs paging.

What breaks and how we prevent it

Three connections per WebAPI user

Passepartout’s 2021 WebAPI training material gives each WebAPI user a pool of three concurrent connections, a figure the current manuals do not restate, so we confirm it with the dealer in discovery. When the integration shares a user with a Passweb store or another tool, the two compete for those connections and slow each other down. We ask the dealer for a WebAPI user dedicated to the integration, and hold our own concurrency below that ceiling.

A fiscal year fixed in the header

Mexal keeps some archives per fiscal year, and each call names the year in the coordinates header. A sync that hard-codes one year reads only that year’s records, and the gap appears the day the fiscal year turns. We read each open year explicitly and store the year beside every document key.

Replica tables dropped by one setting

MexalDB replication is set per company, and switching a company’s replica to N deletes its replicated data and tables. A SQL route nobody watches then fails, or worse, reads an empty table as no customers. We check replica row counts before each load and alert instead of syncing a sudden zero.

Field lists outside the public manual

The MexalDB table and column list is a spreadsheet on EasyPass, Passepartout’s support portal, and the WebAPI manual sits in the reserved developer area. A mapping written without them is a guess. We ask the dealer for both in the first week, and confirm every field against the WebAPI’s HELP listing.

Our approach

  1. Scope. The first call includes the Passepartout dealer. We confirm the Mexal version, local or Live, the companies and years in scope, and whether MDS and MexalDB are licensed.
  2. Architect. We fix the keys, the year handling, the hash store and the customer write back, and write the mapping in English beside the Italian field names.
  3. Build. The service is written against a test company on the dealer’s installation, with its own WebAPI user and a HubSpot portal allowlist in place from the first commit.
  4. Validate. We reload every object into a HubSpot sandbox and reconcile counts and open order totals against Mexal, company by company and year by year.
  5. Operate. Cutover is a credential swap. We then watch the run history, keep the replay endpoint ready and re-check the mapping after each Mexal release.

Common questions

Is there a Passepartout Mexal app in the HubSpot App Marketplace?

No. A HubSpot App Marketplace search for Passepartout returned no results in September 2026, and a search for Mexal returned one unrelated app. Neither HubSpot nor Passepartout publishes a connector. The public route is the Mexal WebAPI, a set of REST resources and services that a service we build calls on a schedule, with the MexalDB replica as a second route where it is licensed.

Does the Mexal WebAPI need an extra Passepartout module?

On older releases, yes. Passepartout's Passweb manual says the WebAPI needs the MDS suite activated only on Mexal versions below 2024D. On any version, the integration logs in as a Mexal user in the Servizi Web API group, because only users in that group can call the services. We ask the dealer who manages the installation to activate the service and create that user.

How many requests can a Mexal WebAPI integration make at once?

Passepartout's 2021 WebAPI training material gives each WebAPI user a pool of at most three concurrent connections, and a read returns at most one hundred records with a marker for the next page. The current manuals do not restate either figure, so we confirm both with the dealer during discovery, and give the integration a WebAPI user of its own.

Can a HubSpot integration read Mexal data from SQL Server instead of the API?

Yes, where the MexalDB module is licensed. It replicates Mexal's archives into Microsoft SQL Server or MySQL, the two databases Passepartout certifies for it, either in real time or on demand. Each company gets a database of its own, and the table and column list is published on EasyPass, Passepartout's support portal, rather than in the public manual.

Is the Mexal WebAPI documentation available in English?

Not that we could find. Passepartout's public manuals on EduPass are in Italian, and its WebAPI training deck points to the full WebAPI manual in the developer area of Passepartout's reserved portal. The API also describes itself: a GET on its HELP resource lists every endpoint with its methods and key fields, and needs no credentials.

How fresh is Mexal data in HubSpot once the sync runs?

As fresh as the schedule, which we usually set to hourly. Passepartout's public material documents no event feed for the WebAPI, so the service reads on a timer and compares each record with the version it saw last time. Because reads come back a page at a time, the page size bounds how often a large archive can be re-read, which is why discovery sizes each object first.

What does a Passepartout Mexal and HubSpot integration take?

Plan on 10 to 20 hours of discovery and 70 to 150 hours of build for customers, items, orders and invoices, with the customer write back. Part of discovery happens with your Passepartout dealer, who activates the WebAPI, creates the integration user and confirms which companies and fiscal years the sync should read.

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 Passepartout integration

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

  • Passepartout

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