All about HubSpot

HubSpot: Send customers to HubSpot

Send customers from your webshop or ERP system to HubSpot as a company and a contact, with the right pipeline and lifecycle stage.

Updated November 9, 2026

This flow sends customers from another application, such as a webshop or an ERP system, to HubSpot. APIcenter creates a company and the related contacts, or updates them.

How it works

  • APIcenter first searches for the company, in this order: by ID, by the e-mail address of the company, by name and by domain. If the company does not exist, APIcenter creates it. The e-mail address is in the company property that you set, by default company_email.
  • APIcenter only updates an existing company if Update existing companies is on.
  • APIcenter searches for a contact by ID or e-mail address. A new contact is created. An existing contact is only updated if Update existing contacts is on. APIcenter skips a contact that has no e-mail address and no ID.
  • Does the customer have no contact persons? Then APIcenter creates a contact from the data of the customer itself.
  • If a contact or company was just created, APIcenter links them to each other. If both already exist, the existing link stays as it is.
  • Do you only want contacts, not companies? Then turn on Only process contact information.
  • New companies and contacts get the pipeline and lifecycle stage from the settings: pipeline for companies, stage for companies, pipeline for contacts and stage for contacts. With Update pipeline & stage on existing contacts, you decide if existing records also get a new pipeline and stage.
  • By default, APIcenter sends the company name, e-mail address, phone number, name and the contacts. You add more fields under Data mapping.

What you need first

  • HubSpot is connected to APIcenter. See Connect HubSpot to APIcenter.
  • The pipelines and lifecycle stages exist in HubSpot. The default values are companies-lifecycle-pipeline, contacts-lifecycle-pipeline and the stage customer. Change them if your HubSpot account has other names or IDs.
  • The company property for the e-mail address exists in HubSpot and the data mapping sends the e-mail address of the customer to it. By default, this is company_email.
  • The customer has a company name. Without a company name, APIcenter only processes the contacts.

Tips

  • APIcenter also recognizes a company by its name. Two companies with the same name are therefore seen as the same company, even if the e-mail address is different.
  • According to HubSpot, the standard tools can only move the lifecycle stage forward. If you want to set an earlier stage, the value must be empty first. Test this with an example.
  • According to HubSpot, it can take a moment before new records appear in search results. If you send the same customer twice in a short time, APIcenter may not find the first record yet.

Below you find all settings of this flow, each with its own explanation.

Settings

The settings you see in the dashboard, with what each one does.

Default price list group

Customer Settings

This setting has no effect in the default data mapping to HubSpot. The default data mapping does not send a price list group. The value is only used if Enable use of a default customer price list group is on and you link the price list group yourself to a HubSpot property in the Data mapping. Leave the field empty.

This setting has no effect in the default data mapping to HubSpot. The default data mapping to HubSpot does not send a customer group. You only need it if you link the customer group yourself to a HubSpot property in the Data mapping of the flow. Leave it off (default): if it is on without a value, the flow stops with an error message.

This setting has no effect in the default data mapping to HubSpot. The default data mapping to HubSpot does not send a price list group. You only need it if you link the price list group yourself to a HubSpot property in the Data mapping of the flow. Leave it off (default): if it is on without a value, the flow stops with an error message.

Field to use as company email

Customer Settings

The name or label of the company property in HubSpot that holds the e-mail address of the company. Default: company_email. APIcenter uses this e-mail address to recognize a company and to identify the customer in the activities. If the property does not exist in HubSpot, the flow stops with an error message, unless Create missing properties in the target system is on: then APIcenter creates the property. This field is required. When sending, the e-mail address in the data mapping must go to the same property.

This setting has no effect in the default data mapping to HubSpot, because the default data mapping does not send a customer group, so there is nothing to force. It only matters if you link the customer group yourself to a HubSpot property in the Data mapping. Leave it off (default).

This setting has no effect in the default data mapping to HubSpot, because the default data mapping does not send a payment term, so there is nothing to force. It only matters if you link the payment term yourself to a HubSpot property in the Data mapping. Leave it off (default).

This setting has no effect in the default data mapping to HubSpot, because the default data mapping does not send a price list group, so there is nothing to force. It only matters if you link the price list group yourself to a HubSpot property in the Data mapping. Leave it off (default).

This setting has no effect in the default data mapping to HubSpot, because the default data mapping does not send a payment method, so there is nothing to force. It only matters if you link the payment method yourself to a HubSpot property in the Data mapping. Leave it off (default).

The lifecycle stage for contacts, as the name or ID of the stage in HubSpot (uppercase and lowercase letters do not matter). Default: customer. For Send Customer and Send Sales Order, the contacts that APIcenter sends get this stage; this is required. For Get Customer and Get Sales Order, APIcenter updates the contacts it got to this stage after getting them; if you leave the field empty, nothing is updated. According to HubSpot, the standard tools can only move the lifecycle stage forward; for an earlier stage, the value must be cleared first. Test this with an example.

This setting has no effect in the default data mapping to HubSpot. The default data mapping to HubSpot does not send a payment method. You only need it if you link the payment method yourself to a HubSpot property in the Data mapping of the flow. Leave it off (default): if it is on without a value, the flow stops with an error message.

This setting has no effect in the default data mapping to HubSpot. The default data mapping to HubSpot does not send a payment term. You only need it if you link the payment term yourself to a HubSpot property in the Data mapping of the flow. Leave it off (default): if it is on without a value, the flow stops with an error message.

Turn this on if you only want to create or update contacts in HubSpot and no companies. APIcenter then does not process a company and so does not link the contact to a company. The pipeline and stage for companies are then not needed. Default: off: then APIcenter creates the company and the contacts and links them.

Pipeline to set for companies

Customer Settings

The pipeline for companies. Enter the name or ID of the pipeline in HubSpot; uppercase and lowercase letters do not matter. Default: companies-lifecycle-pipeline. For Send Customer and Send Sales Order, APIcenter sets this pipeline and the lifecycle stage for companies on the companies that it sends. This is required, unless you only process contacts (Only process contact information). For Get Customer and Get Sales Order, APIcenter updates the companies it got to this pipeline and stage after getting them; if you leave the fields empty, nothing is updated. Always fill in the pipeline and the stage together.

Pipeline to set for contacts

Customer Settings

The pipeline for contacts. Enter the name or ID of the pipeline in HubSpot; uppercase and lowercase letters do not matter. Default: contacts-lifecycle-pipeline. For Send Customer and Send Sales Order, APIcenter sets this pipeline and the lifecycle stage for contacts on the contacts that it sends. For Get Customer and Get Sales Order, APIcenter updates the contacts it got to this pipeline and stage after getting them; if you leave the fields empty, nothing is updated. Always fill in the pipeline and the stage together.

The lifecycle stage for companies, as the name or ID of the stage in HubSpot (uppercase and lowercase letters do not matter). Default: customer. For Send Customer and Send Sales Order, the companies that APIcenter sends get this stage; this is required, unless you only process contacts. For Get Customer and Get Sales Order, APIcenter updates the companies it got to this stage after getting them; if you leave the field empty, nothing is updated. According to HubSpot, the standard tools can only move the lifecycle stage forward; for an earlier stage, the value must be cleared first. Test this with an example.

Decides if APIcenter also sets the pipeline and lifecycle stage on companies that already exist in HubSpot. If this is on (default), existing companies get the pipeline and stage from the settings; if it is off, this only happens for new companies. Note: in the current integration, the setting Update pipeline & stage on existing contacts also decides if existing companies get a new pipeline and stage. So set both settings to the same value. An existing company is only updated if Update existing companies is on.

Decides if APIcenter also sets the pipeline and lifecycle stage on contacts that already exist in HubSpot. If this is on (default), existing contacts get the pipeline and stage from the settings; if it is off, this only happens for new contacts. An existing contact is only updated if Update existing contacts is on. In the current integration, this setting also applies to existing companies.

This setting has no effect in the default data mapping to HubSpot. The default data mapping does not send a payment method, so there is nothing to map. You only need the mapping table if you link the payment method yourself to a HubSpot property in the Data mapping. Leave it off (default).

This setting has no effect in the default data mapping to HubSpot. The default data mapping does not send a customer group, so there is nothing to map. You only need the mapping table if you link the customer group yourself to a HubSpot property in the Data mapping. Leave it off (default).

This setting has no effect in the default data mapping to HubSpot. The default data mapping does not send a payment term, so there is nothing to map. You only need the mapping table if you link the payment term yourself to a HubSpot property in the Data mapping. Leave it off (default).

This setting has no effect in the default data mapping to HubSpot. The default data mapping does not send a price list group, so there is nothing to map. You only need the mapping table if you link the price list group yourself to a HubSpot property in the Data mapping. Leave it off (default).

This setting has no effect in the default data mapping to HubSpot. The default data mapping does not send a payment method. The value is only used if Make use of a default payment method id is on and you link the payment method yourself to a HubSpot property in the Data mapping. Leave the field empty.

This setting has no effect in the default data mapping to HubSpot. The default data mapping does not send a customer group. The value is only used if Enable use of a default customer group is on and you link the customer group yourself to a HubSpot property in the Data mapping. Leave the field empty.

This setting has no effect in the default data mapping to HubSpot. The default data mapping does not send a payment term. It only decides what happens if you use the mapping table for payment terms yourself: Use default (default) uses the default value, Use value passes on the original value and Ignore value leaves the field empty.

This setting has no effect in the default data mapping to HubSpot. The default data mapping does not send a price list group. It only decides what happens if you use the mapping table for price list groups yourself: Use default (default) uses the default value, Use value passes on the original value and Ignore value leaves the field empty.

This setting has no effect in the default data mapping to HubSpot. The default data mapping does not send a payment method. It only decides what happens if you use the mapping table for payment methods yourself: Use default (default) uses the default value, Use value passes on the original value and Ignore value leaves the field empty.

default payment terms id

Customer Settings

This setting has no effect in the default data mapping to HubSpot. The default data mapping does not send a payment term. The value is only used if Make use of a default payment terms id is on and you link the payment term yourself to a HubSpot property in the Data mapping. Leave the field empty.

Turns on URL encoding for values that APIcenter puts in the URL of a request to HubSpot. This prevents errors with special characters such as spaces, slashes or ampersands. In HubSpot, search values such as an e-mail address, SKU or deal name are in the content of the request and not in the URL; the URL only contains IDs and object types. So you rarely need this. This is the main switch: values are only encoded if you also turn on Enable URL Encoding of data in the endpoints of the source application (when getting) or Enable URL Encoding of data in the endpoints of the target application (when sending). Default: off.

Use administration mapping table

General flow setting

This setting has no effect for HubSpot. The data that APIcenter exchanges with HubSpot has no administration field, so there is nothing to map. Leave this setting off (default).

This setting has no effect for HubSpot, because the data that APIcenter exchanges with HubSpot has no administration field. Leave it as it is.

This setting has no effect in the default data mapping to HubSpot. The default data mapping does not send a sales VAT code for the customer. The value is only used if Enable the use of a default customer sales vat code id is on and you link the sales VAT code of the customer yourself to a HubSpot property in the Data mapping. Leave the field empty.

This setting has no effect in the default data mapping to HubSpot. The default data mapping to HubSpot does not send a sales VAT code for the customer. You only need it if you link the sales VAT code of the customer yourself to a HubSpot property in the Data mapping of the flow. Leave it off (default): if it is on without a value, the flow stops with an error message.

This setting has no effect in the default data mapping to HubSpot, because the default data mapping does not send a sales VAT code for the customer, so there is nothing to force. It only matters if you link the sales VAT code of the customer yourself to a HubSpot property in the Data mapping. Leave it off (default).

This setting has no effect in the default data mapping to HubSpot. The default data mapping does not send a sales VAT code for the customer, so there is nothing to map. You only need the mapping table if you link the sales VAT code of the customer yourself to a HubSpot property in the Data mapping. Leave it off (default).

This setting has no effect in the default data mapping to HubSpot. The default data mapping does not send a sales VAT code. It only decides what happens if you use the mapping table for sales VAT codes of the customer yourself: Use default (default) uses the default value, Use value passes on the original value and Ignore value leaves the field empty.

This setting has no effect for HubSpot. The HubSpot flows do not use a payment journal and the default data mapping does not send one. You can leave it as it is.

Notifications frequency

Notifications

Receive Notifications

Notifications

In practice, this setting has no effect for HubSpot. The HubSpot flows ask for one list per run with their own limit (when getting data, this is Amount to process) and do not read extra pages. The default value is 20; you do not need to change it.

Use page size

Run behaviour

In practice, this setting has no effect for HubSpot. The HubSpot flows decide themselves how many records they ask for per request: when getting data, this is Amount to process. The default value is 50; you do not need to change it.

This setting has no effect in the default data mapping to HubSpot. The default data mapping to HubSpot sends the VAT amount (tax) and no VAT code or tax class. The VAT amount is calculated from the amounts in the data or, if the rate is not in them, from Default tax rate prices. Leave this setting off (default): if it is on without a value for Value for the default tax id (exclude '%'), the flow stops with an error message.

This setting has no effect in the default data mapping to HubSpot. The default data mapping to HubSpot sends the VAT amount (tax) and no VAT code or tax class. Leave this setting off (default).

This setting has no effect in the default data mapping to HubSpot, so there is nothing to map. The default data mapping to HubSpot sends the VAT amount (tax) and no VAT code or tax class. You only need the mapping table if you link a tax class yourself to a HubSpot property in the Data mapping. Leave it off (default).

This setting has no effect in the default data mapping to HubSpot. The default data mapping to HubSpot sends the VAT amount (tax) and no VAT code or tax class. You only need this field if you link a tax class yourself to a HubSpot property in the Data mapping. Leave the field empty.

This setting has no effect in the default data mapping to HubSpot. The default data mapping to HubSpot sends the VAT amount (tax) and no VAT code or tax class. It only decides what happens if you use the mapping table for tax classes yourself: Use default (default) uses the default value, Use value passes on the original value and Ignore value leaves the field empty.

Still need help?

Ask the support assistant in your dashboard or create a support ticket.

Go to support