HubSpot + SAP S/4HANA integration
S/4HANA and ECC keep the customer master, the sales order and the billing document. Which SAP interfaces reach HubSpot, and what a keyed build takes.
Connects by API , iPaaSScope this integration Book a scoping call Estimate the cost
- Into HubSpot
Is there an official SAP S/4HANA + HubSpot integration?
Not from HubSpot or SAP. As of September 2026 a search of the HubSpot App Marketplace for S/4HANA finds only a generic ERP connector from another developer, which names SAP among the systems it bridges. We recommend a custom API integration over the released S/4HANA OData APIs, with SAP Event Mesh events where the client runs it, at 70 to 150 build hours; an ECC system reachable only through IDocs, BAPIs and middleware moves into the enterprise band of 300 to 450 hours.
- Recommended route
- Custom API integration
- Build effort
- 70 to 150 hours
- In the HubSpot App Marketplace?
- Yes, a third-party connector
- Typical elapsed time
- 4 to 8 weeks
Marketplace checked September 2026.
Why teams connect SAP S/4HANA to HubSpot
In a company that runs SAP, the ERP usually arrived years before HubSpot and is guarded by a team whose job is to keep it stable. The business partner, the sales order and the billing document live there, beside the credit limits and delivery blocks that decide whether an order ships at all. HubSpot tends to arrive later, bought by a sales or marketing team that wanted a CRM its people would actually open, and within a month somebody asks why the portal cannot see what a customer has ordered.
The requests that follow are specific. Sellers want open orders, delivery status and billed revenue on the company record before a call. Account managers want to know which customers are blocked before promising anything. Finance wants a new customer created once, in SAP, with the right sales area and payment terms, instead of typed twice by two teams who disagree about the spelling.
Timing shapes the design as much as the mapping does. SAP has committed mainstream maintenance for SAP ERP 6.0, the release most buyers call ECC, only to the end of 2027, with optional extended maintenance to the end of 2030. An integration built against ECC’s interfaces today gets rebuilt when that system moves to S/4HANA, so the part worth protecting is the HubSpot side: objects, keys and history that do not care which SAP release feeds them.
What syncs
Five objects carry the account view. Business partners with the customer role become HubSpot companies, their contact persons become contacts, sales orders become deals, billing documents land on a custom object, and products become HubSpot products.
S/4HANA makes the business partner the leading object, and the customer is a role that partner holds, with a customer number of its own. Sales orders name the customer as the sold-to party, so we store both numbers on the company and associate each document on the number it carries. Older SAP ERP systems can hold customers with no business partner at all, which SAP’s own IDoc guidance allows for, and that is one more reason to check the key again after a conversion.
A customer also has one sales area row for every sales organization, distribution channel and division it trades in. Those rows describe a single company and never become companies of their own.
Data flows into HubSpot only. Pricing, credit, delivery blocks and billing belong to S/4HANA, and a CRM that edits them creates work for the people who run the ledger. A won deal can create a sales order through the Sales Order API, and we keep that for a second phase with a review step in front of it.
| | | Direction | Match key | Notes |
|---|---|---|---|---|
| Business partner (A_BusinessPartner) | Company | Into HubSpot | Business partner number, with the customer number from the customer role stored beside it | Sales documents name the customer as sold-to party, so both numbers travel with the company. |
| Contact person (A_BusinessPartnerContact) | Contact | Into HubSpot | The contact person's own business partner number, with email shown as the readable match | The relationship carries validity dates, and an ended one removes the association. |
| Sales order (SalesOrder) | Deal | Into HubSpot | Sales order number, associated to the company through the sold-to party | Orders stay read only in HubSpot. S/4HANA prices, schedules and bills them. |
| Billing document (BillingDocument) | Custom object | Into HubSpot | Billing document number, associated to the company and the sales documents it references | The same API carries invoices, credit memos and cancellations, so the document type is stored too. |
| Product (A_Product) | Product | Into HubSpot | Product number |
Architecture
S/4HANA gets a watermark sync, with events in front of it where the client runs SAP Event Mesh. A service signs in as the communication user of a communication arrangement and reads each released OData API on a schedule. It filters on the change fields SAP publishes: LastChangeDateTime on sales orders and billing documents, and LastChangeDate with LastChangeTime on business partners. Each entity keeps its own watermark inside the service, and a restart picks up from it.
Where S/4HANA publishes business events, business partner and sales order events land on an Event Mesh queue, and a webhook subscription pushes them to our endpoint. The events carry keys, not records, so each one queues a read of the full record. The scheduled read keeps running behind the events and catches anything they miss.
The HubSpot writer upserts in batches on the SAP numbers, then a second pass links orders to companies through the sold-to party and billing documents to their orders. Either pass can be rerun over the same window with no effect, so replaying a bad day costs time and nothing else.
What the API allows
- API style
- REST
- Authentication
- Basic authentication
- Webhooks
- Partial
- Changed-since filter
- Partial
- Sandbox
- Yes
- Rate limit
- Not documented
Developer documentation help.sap.com
Three ways to connect
Two facts pick the route on SAP: the release you run, and what your SAP team already operates. Object count matters less.
On S/4HANA, in the cloud or on premise, a custom API integration against the released OData APIs is the route we recommend. The APIs are documented on the SAP Business Accelerator Hub, each belongs to a communication scenario the SAP team already governs, and events can sit in front of them later.
Where the client already licenses SAP Integration Suite, its flows can do the SAP-side work, including reading ECC through OData Provisioning, and hand clean records to the HubSpot writer. That keeps SAP logic with the people who own it.
The generic connector from the marketplace is the third option, and a fair one for a simple mapping, but it does not change what the SAP side has to expose. On ECC without Integration Suite, the interfaces are BAPIs over RFC and IDocs, usually through middleware the client already runs, and the work moves into the enterprise band.
-
Custom API integration
RecommendedA custom API integration reads the released OData APIs on a watermark, takes business partner and sales order events from SAP Event Mesh where it runs, and keys every record on SAP's partner and document numbers rather than on names.
-
iPaaS
PossibleSAP Integration Suite is SAP's own iPaaS. Where the client already runs it, its flows can do the SAP-side work, including reading ECC through OData Provisioning, and hand clean records to a HubSpot writer.
-
Marketplace app
PossibleThe marketplace lists a generic ERP connector from another developer that names SAP. It can suit a simple mapping, but its runtime and roadmap stay with that developer, and SAP still has to expose the data to it.
What breaks and how we prevent it
Partner changes split across two fields
Sales orders and billing documents carry one LastChangeDateTime, but the business partner carries LastChangeDate and LastChangeTime as separate fields. A filter copied from the order read compares the date alone and misses every later change made on the same day. We build the business partner filter on both fields and prove it with two edits to one partner in one afternoon.
Webhook subscriptions stuck at handshake
An Event Mesh webhook subscription delivers only after a handshake, and an endpoint that answers without the WebHook-Allowed-Origin header leaves the handshake requested but never completed. We answer the handshake explicitly, check the subscription status after every deployment, and alert when queue depth grows instead of waiting for someone to notice quiet data.
Deleted orders that stay open
A watermark read cannot return a sales order that no longer exists, so a deleted order stays open in HubSpot and inflates the pipeline. S/4HANA raises a Sales Order Deleted event, and where events are not available we reconcile the full list of order numbers every week and close what has gone.
Contacts who left the customer
Contact persons hang off a relationship with its own validity dates. A sync that ignores the end date keeps a former buyer associated with the account long after the relationship lapsed. We read the validity end date and remove the association in HubSpot while keeping the contact’s history.
Our approach
- Scope. We start with the SAP team: release and edition, which communication scenarios are in place, whether Event Mesh or Integration Suite already runs, and how many sales areas trade.
- Architect. We fix the keys, the watermark per entity, the event path and the association order, and write them up as the communication arrangement request.
- Build. We write the service against the quality or test system, and it refuses any SAP host or HubSpot portal that is not on its allowlist.
- Validate. We reconcile customers, open orders and billed totals against SAP reports, including a same-day partner edit and a deleted order.
- Operate. Cutover changes the host and the communication user. After that we watch run history and queue depth, and re-test in the test system before each SAP release reaches production.
Common questions
Is there an SAP S/4HANA app in the HubSpot App Marketplace?
Not one built by HubSpot or SAP. The listing that matches a search for S/4HANA is a generic ERP connector from another developer, which names SAP among many systems. It can work for a simple mapping. It does not settle the question that decides the project, which is which released APIs, events and communication arrangements your SAP team will open to an outside service.
Does SAP S/4HANA send a webhook when a sales order changes?
Not directly. S/4HANA raises business events such as Sales Order Created, Changed and Deleted and publishes them to SAP Event Mesh, a separate SAP BTP service. Event Mesh can then push a queue to our endpoint through a webhook subscription, once a handshake completes. Without Event Mesh, a change reaches HubSpot at the next scheduled read, on the interval agreed in discovery.
Will the same HubSpot integration work on SAP ECC?
The HubSpot side will, the SAP side will not. In SAP ERP, BAPIs are methods on business objects called over RFC, and IDocs such as DEBMAS carry customer master data, while the released OData APIs belong to S/4HANA. SAP Integration Suite can expose Business Suite data through OData Provisioning, and the SAP NetWeaver add-on for event enablement can send business object events to Event Mesh.
What happens to an SAP ECC integration when the business moves to S/4HANA?
Plan for the SAP side to be rebuilt. SAP has committed mainstream maintenance for SAP ERP 6.0 only to the end of 2027, with optional extended maintenance to the end of 2030, and the interfaces change from IDocs and BAPIs to released APIs and events. HubSpot's objects, keys and history can stay, provided companies were keyed on customer numbers that the conversion carries across.
How does an SAP S/4HANA sync avoid duplicate HubSpot companies?
By keying on the business partner and nothing else. A customer carries one sales area row for every sales organization, distribution channel and division it trades in, and a sync that reads those rows as customers creates a company per row. We upsert on the business partner number, hold the customer number beside it, and store sales area values as properties.
How does an integration authenticate against SAP S/4HANA?
Through a communication arrangement, which ties a communication scenario to a communication system and an inbound communication user. SAP lists basic authentication, X.509 certificates, OAuth 2.0 and SAML single sign on, and each API documents which it accepts; the Sales Order API takes basic, certificate and OAuth 2.0. We ask for a certificate on the communication user wherever the SAP team supports one.
Can an SAP S/4HANA integration be built against a test system first?
Yes, and it should be. S/4HANA Cloud Public Edition runs either a quality system beside production, where development, configuration and testing happen, or a separate development, test and production landscape. We build and rehearse against the quality or test system, then cut over by changing the host and the communication user.
How many hours does an SAP S/4HANA and HubSpot integration take?
Budget 10 to 20 hours of discovery and 70 to 150 hours of build for five objects over the released APIs, with watermarks, an event path and reconciliation. An ECC system that can only offer IDocs and BAPIs through its own middleware sits in the enterprise band, 300 to 450 hours, because the SAP side becomes a project of its own.
Also in Enterprise ERP
Related reading
Partnerships and accreditations
HubSpot accreditations
Industry specializations
Partnerships
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.
-
SOC 2
We build to support SOC 2 security controls, on platforms that hold SOC 2 reports of their own.
-
ISO/IEC 27001:2022
We build to support your information security program under ISO/IEC 27001:2022.
-
HIPAA
We scope BAA needs in discovery, then design builds around them for covered entities and their business associates.
-
GDPR
We scope data-processing needs in discovery and design builds to support your GDPR duties.
About the GDPR at the European Commission (opens in a new tab)
-
PIPEDA
We design builds to support your accountability for personal information as it moves between systems.
-
CASL
We can build consent capture and sync that support your CASL consent records.
Our builds run on
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 SAP S/4HANA integration
Send the systems, the direction and the record volume. We reply with a scope and an effort band within one business day.
Thanks, we will reply within one business day
Prash or Sean reads every one of these and comes back with a scope, or with the one question we need answered first.
Sources
- APIs on SAP Business Accelerator Hub help.sap.com
- External API: Creating a Communication Arrangement help.sap.com
- Business Partner (A2X) – OData API help.sap.com
- OData API: Business Partner (A2X) help.sap.com
- Business Partner help.sap.com
- Contact help.sap.com
- Customer Sales Area help.sap.com
- Sales Order (A2X, OData V4) help.sap.com
- Sales Order Header help.sap.com
- Billing Document help.sap.com
- Billing Document Header help.sap.com
- Sales Order Events help.sap.com
- Business Partner Event help.sap.com
- Events on SAP Business Accelerator Hub help.sap.com
- Manage Webhook Subscriptions help.sap.com
- IDocs DEBMAS and CREMAS help.sap.com
- Technical Communication help.sap.com
- RFC help.sap.com
- SAP NetWeaver Add-On for Event Enablement help.sap.com
- What is SAP Integration Suite? help.sap.com
- System Landscapes in SAP S/4HANA Cloud Public Edition help.sap.com
- SAP Extends SAP S/4HANA Maintenance Through 2040 news.sap.com