Source ERP · 87 of 89

CRMPro → HubSpot — SYSPRO 7 and above: what the shipped templates set up

This is the capability summary the dlake CLI repository publishes; whitelisted customers fetch the operational skill with "dlake admin get_skill dlake-crmpro-hubspot/erps/syspro-7-and-above". It extends the dlake-crmpro-hubspot skill, which holds what is true whatever the source ERP. Both directions for this pair are summarised at /integrations/syspro-7-and-above-hubspot/.

CRMPro → HubSpot — SYSPRO 7 and above: what the shipped templates set up

This is a capability summary, not an operating guide. To receive the operational skill you must be a registered, whitelisted Commercient customer. Whitelisted customers fetch it with dlake admin get_skill dlake-crmpro-hubspot/erps/syspro-7-and-above (or list_skills) against the Commercient admin plane. Existing customers who need access or help: contact support@commercient.com. New customers: contact sales@commercient.com to become a customer and be whitelisted.

dlake-crmpro is the parent skill and the authority for everything general: the CRMPro tools, process configuration and field list, the sync history, how source data is selected, and what a run that finds nothing does. Read it first; this page does not repeat it. dlake-crmpro-hubspot is the destination skill this page is a child of, and the authority for the HubSpot conventions that hold across every ERP: read it first, then come back here for what this source’s own templates set. This page grows as the catalogue does.

1. What the templates deliver

GroupBusiness outcomeObjectsSource tables and views
create customerERP customers data becomes company in HubSpot. New records are created and existing ones updated; none are deleted.companycustomers
create productERP inventory items, inventory prices data becomes product in HubSpot. New records are created and existing ones updated; none are deleted.productinventory items, inventory prices
create sales orderThe templates push deal to HubSpot. New records are created and existing ones updated; none are deleted.dealsales orders, sales order lines
create sales order lineThe templates push line item to HubSpot. New records are created and existing ones updated; none are deleted.line itemsales order lines
create quoteThe templates push deal to HubSpot. New records are created and existing ones updated; none are deleted.dealquotes, quote lines
create quote lineThe templates push line item to HubSpot. New records are created and existing ones updated; none are deleted.line itemquote lines
create invoiceThe templates push deal to HubSpot. New records are created and existing ones updated; none are deleted.dealAR invoices
create invoice lineThe templates push line item to HubSpot. New records are created and existing ones updated; none are deleted.line itemAR transaction lines
create contactERP customers data becomes contact in HubSpot. New records are created and existing ones updated; none are deleted.contactcustomers

2. The process rows the templates create

Each template’s setup writes one process configuration row. These are the values it sets; a column the inserts never set is not listed.

Display nameDestination objectRun sequence
create contactcontact5
create customercompany11
create productproduct11
create sales orderdeal11
create sales order lineline item11
create quotedeal11
create quote lineline item11
create invoicedeal11
create invoice lineline item11

Every one of these inserts the active setting as 0, so an imported process is inactive until an operator activates it.

3. The views

“Change detection” names which of the three kinds dlake-crmpro defines the view’s own filter makes it; where a view’s shape is not one of those three the column is left empty and the view’s own filter is the authority.

ViewChange detectionEmits the linked Salesforce recordSource tables
new contact feedinsert onlynocustomers
new customer feedinsert onlyyescustomers
new item feedinsert onlyyesinventory items, inventory prices
new sales order deal feedinsert onlynosales orders, sales order lines
new sales order line item feedinsert onlynosales order lines
new quote deal feedinsert onlynoquotes, quote lines
new quote line item feedinsert onlynoquote lines
new invoice deal feedinsert onlynoAR invoices
new invoice line item feedinsert onlynoAR transaction lines

4. Order of work

The templates set run sequence to 5, 11. A run processes active rows in ascending run sequence, which is the order the templates put them in:

  • 5 — create contact
  • 11 — create customer, create product, create sales order, create sales order line, create quote, create quote line, create invoice, create invoice line

Several of these rows share a run sequence value: each template group carries its own numbering, so give the imported processes an order across the whole set rather than taking the template values as one.

These views read another process’s sync output, which is what makes the order a dependency order: the row appears in the view only once the process that writes that sync output has run, so a parent flows on one run and its children on the next.

  • new sales order deal feed reads new customer sync output
  • new sales order line item feed reads new deal sync output, new item sync output
  • new quote deal feed reads new customer sync output
  • new quote line item feed reads new deal sync output, new item sync output
  • new invoice deal feed reads new customer sync output
  • new invoice line item feed reads new deal sync output, new item sync output
  • new contact feed reads new customer sync output

5. Field mapping

Each template carries its intended mapping in field mapping.

TemplateObjectMapped fieldsFirst ERP → HubSpot pairs
create contactcontact10Contact → last name property, Contact → first name property, Email → email, Telephone number, Telephone extension → phone, Sold to address line 1, Sold to address line 2 → address
create customercompany9Customer → Commercient AR customer code, Name → name, Sold to address line 1 → address, Sold to address line 2 → address line 2 property, Sold to address line 3 → city property
create productproduct5Stock code → stock keeping unit property, Description → name, Long description → description, Material cost → cost of goods sold property, Selling price → price
create sales orderdeal9Order line price → amount, Requested ship date → close date property, Order date → create date property, Customer name → deal name property, the linked Salesforce record → company association
create sales order lineline item5Line stock code (Syspro) → product lookup property, Line stock description (Syspro) → name, Order line price → price, Order line quantity → quantity, Sales order → deal association
create quotedeal9Customer retail price → amount, Expiry date → close date property, Enquiry date → create date property, Customer name → deal name property, Quote → external key property
create quote lineline item5Line stock code (Syspro) → product lookup property, Line stock code (Syspro) → name, Customer retail price → price, Quote line quantity → quantity, Quote → deal association
create invoicedeal9Currency value → amount, Invoice date → close date property, Invoice date → create date property, Customer, Invoice → deal name property, the linked Salesforce record → company association
create invoice lineline item6Warehouse amount → price, Quantity invoiced → quantity, Stock code → product lookup property, Stock code → name, Invoice → deal association

6. Community templates

The catalogue carries 170 community templates for this pair. A community template is authored in a tenant rather than shipped with the product, and it imports the same way as any other. Its own names, notes, field mapping and SQL are tenant content, so what this section states is what the set amounts to: how many templates there are, what they default to doing, which destination objects they write and which groups they fall in. They are not part of the shipped set described above.

  • Templates: 170
  • Default operations: insert on 170, update on 170, delete on 170
  • Marked as circular sync: 0
  • Licence groups they span: 9
  • Destination objects: company, line item, deal, product, contact, invoice, ticket, Products, Commercient Account Matching object (earlier package), Commercient AR Customer object (earlier package), Commercient Product Matching object (earlier package), Commercient Products object, Commercient HubSpot new item object, Commercient HubSpot new quote line item object, Commercient Syspro product details object, Company, line items, order, 3 more and 8 custom objects
  • Object display names: upsert customer, upsert invoice, upsert product, upsert invoice line, upsert contact, upsert sales order, create contact, create customer, create product, create sales order line, create invoice line, delete order, 51 more and 20 further templates
  • Template groups: Account, Product, CRM Opportunity and Line, CRM Order and Line, Opportunity

7. Verifying

The detail of this section is part of the operational skill. Whitelisted customers fetch it with dlake admin get_skill dlake-crmpro-hubspot/erps/syspro-7-and-above.

8. Where this sits

dlake-crmpro is the general operating surface — the CRMPro tools, the setup and transaction tables, field mapping, and the source view contract that applies to every destination. This page adds what the shipped SYSPRO 7 and above → HubSpot templates set up. dlake-crmpro-hubspot is the destination skill this page sits under: its own text is the authority for the HubSpot conventions that hold across every ERP, and its ERP table lists this page alongside every sibling ERP page for this destination. For the extract leg that fills the source data, see dlake-normalsync; for the on-premises agent that runs it, dlake-syncagent; for the writeback leg, dlake-txdownloaderpro; for standing an integration up, dlake-integration-setup.

How to get started

  • Already a customer: the operational skill tells you how to connect, choose what to sync and run it. Fetch it with dlake admin get_skill dlake-crmpro-hubspot/erps/syspro-7-and-above, or ask support@commercient.com.
  • New to Commercient: contact sales@commercient.com. Becoming a customer includes registration and whitelisting, after which the operational skills and tools are available to you.