Source ERP · 68 of 105

CRMPro → Salesforce — QuickBooks Desktop: 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-salesforce/erps/quickbooks-desktop". It extends the dlake-crmpro-salesforce skill, which holds what is true whatever the source ERP. Both directions for this pair are summarised at /integrations/quickbooks-desktop-salesforce/.

CRMPro → Salesforce — QuickBooks Desktop: 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-salesforce/erps/quickbooks-desktop (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-salesforce is the destination skill this page is a child of, and the authority for the Salesforce 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
GET USERThe templates push users to Salesforce. New records are created, existing ones updated, and records removed in the ERP are deleted.users—
AccountIn addition to creating the Account record from your ERP customer records, Commercient syncs over the entire Accounting AR Customer record into a Commercient AR Customer object which is a Managed Custom Object (MCO). A lookup field is provided to lookup to the default AR Customer record MCO from the Account record. New records are created and existing ones updated; none are deleted.account, Commercient Terms Managed Custom Object, Contact, Commercient Customer Managed Custom Object, Commercient Sales Rep Managed Custom Objectcustomers, terms, contacts, sales reps
CRM Opportunity and LineERP estimate, Estimate line data becomes Opportunity, Opportunity line item in Salesforce. New records are created and existing ones updated; none are deleted.Opportunity, Opportunity line itemestimates, order entry headers, estimate lines, inventory items
CRM Quote and LineERP estimate, Estimate line data becomes Quote, Quote line item in Salesforce. New records are created and existing ones updated; none are deleted.Quote, Quote line itemestimates, estimate lines, inventory items
ProductERP Item inventory data becomes Commercient QuickBooks Item Inventory Managed Custom Object, Product in Salesforce. New records are created and existing ones updated; none are deleted.Commercient QuickBooks Item Inventory Managed Custom Object, Productinventory items
Open AR Invoice HeaderThe detail lines on open invoices are visible too so that you are aware of what items you are awaiting payment on from your customer. New records are created and existing ones updated; none are deleted.Commercient Invoice Line Managed Custom Object, Commercient Invoice Managed Custom Objectinvoice lines, invoices
Sales orderThe templates push Commercient Sales Order Line Managed Custom Object, Commercient Sales Order Managed Custom Object to Salesforce. New records are created and existing ones updated; none are deleted.Commercient Sales Order Line Managed Custom Object, Commercient Sales Order Managed Custom Objectsales order lines, sales orders

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 objectMatching keyRun sequence
GET USERusers—0
TermsCommercient Terms Managed Custom ObjectCommercient external key (QuickBooks package)1
Sales repCommercient Sales Rep Managed Custom ObjectCommercient external key (QuickBooks package)2
CRM AccountaccountCommercient AR customer code3
CustomerCommercient Customer Managed Custom ObjectCommercient external key (QuickBooks package)4
Sales orderCommercient Sales Order Managed Custom ObjectCommercient external key (QuickBooks package)5
Sales order lineCommercient Sales Order Line Managed Custom ObjectCommercient external key (QuickBooks package)6
InvoiceCommercient Invoice Managed Custom ObjectCommercient external key (QuickBooks package)7
Invoice lineCommercient Invoice Line Managed Custom ObjectCommercient external key (QuickBooks package)8
Item inventoryCommercient QuickBooks Item Inventory Managed Custom ObjectCommercient external key (QuickBooks package)10
ContactContactExternal key (custom field)15
ProductProductCommercient external key (QuickBooks package)16
OpportunityOpportunityExternal key (custom field)17
Opportunity line itemOpportunity line itemExternal key (custom field)18
QuoteQuoteExternal key (custom field)19
Quote line itemQuote line itemExternal key (custom field)20

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 detectionSource tables
terms feedinsert + updateterms
sales rep feedinsert + updatesales reps
CRM account feedinsert + updatecustomers
customer feedinsert + updatecustomers
sales order feedinsert + updatesales orders
sales order line feedinsert + updatesales order lines
invoice feedinsert + updateinvoices
invoice line feedinsert + updateinvoice lines
item inventory feedinsert + updateinventory items
contacts feedinsert + updatecontacts
product feedinsert + updateinventory items
opportunity feedinsert onlyestimates, order entry headers
opportunity line item feedinsert onlyestimate lines, estimates, inventory items
quote feedinsert onlyestimates
quote line item feedinsert onlyestimate lines, estimates, inventory items

4. Order of work

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

  • 0 — GET USER
  • 1 — Terms
  • 2 — Sales rep
  • 3 — CRM Account
  • 4 — Customer
  • 5 — Sales order
  • 6 — Sales order line
  • 7 — Invoice
  • 8 — Invoice line
  • 10 — Item inventory
  • 15 — Contact
  • 16 — Product
  • 17 — Opportunity
  • 18 — Opportunity line item
  • 19 — Quote
  • 20 — Quote line item

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.

  • CRM account feed reads sales rep sync output (generic name), user sync output
  • contacts feed reads account sync output (generic name), customer sync output (generic short name), contact sync output (generic name); no template in this set writes account sync output (generic name), customer sync output (generic short name), contact sync output (generic name)
  • opportunity feed reads account sync output (generic name), opportunity sync output (generic name); no template in this set writes account sync output (generic name), opportunity sync output (generic name)
  • opportunity line item feed reads product sync output (generic name), opportunity sync output (generic name), opportunity line item sync output (generic name); no template in this set writes product sync output (generic name), opportunity sync output (generic name), opportunity line item sync output (generic name)
  • quote feed reads account sync output (generic name), opportunity sync output (generic name), quote header sync output (generic name); no template in this set writes account sync output (generic name), opportunity sync output (generic name), quote header sync output (generic name)
  • quote line item feed reads product sync output (generic name), quote header sync output (generic name), quote line item sync output (generic name); no template in this set writes product sync output (generic name), quote header sync output (generic name), quote line item sync output (generic name)
  • customer feed reads CRM account sync output (generic name), sales rep sync output (generic name)
  • item inventory feed reads item sync output (generic name); no template in this set writes item sync output (generic name)
  • invoice line feed reads invoice sync output (generic name)
  • invoice feed reads CRM account sync output (generic name), customer sync output (generic name)
  • product feed reads product sync output (generic name); no template in this set writes product sync output (generic name)
  • sales order line feed reads sales order sync output (generic name)
  • sales order feed reads CRM account sync output (generic name), customer sync output (generic name)

5. Field mapping

Each template carries its intended mapping in field mapping.

TemplateObjectMapped fieldsFirst ERP → Salesforce pairs
TermsCommercient Terms Managed Custom Object12returned list identifier → Commercient external key (QuickBooks package), Edit sequence → Commercient edit sequence, Name → Commercient name, Standard due days → Commercient standard due days, Standard discount days → Commercient standard discount days
Sales repCommercient Sales Rep Managed Custom Object8returned list identifier → Commercient external key (QuickBooks package), Sales rep full name → Commercient sales rep full name, Name → Commercient name, Edit sequence → Commercient edit sequence, Initial → Commercient initial
CRM Accountaccount13returned list identifier → Commercient AR customer code, Full name → name, Phone → Phone, Bill address city → Billing city, Billing address state → Billing state
CustomerCommercient Customer Managed Custom Object79returned list identifier → Commercient external key (QuickBooks package), Name → Name, Balance → Balance, Billing address line 1 → Billing address line 1, Billing address line 2 → Billing address line 2
Sales orderCommercient Sales Order Managed Custom Object64returned transaction identifier → Commercient external key (QuickBooks package), Reference number → Commercient reference number, Billing address line 1 → Commercient billing address line 1, Billing address line 2 → Commercient billing address line 2, Billing address line 3 → Commercient billing address line 3
Sales order lineCommercient Sales Order Line Managed Custom Object56Transaction line identifier → Commercient external key (QuickBooks package), returned transaction identifier → Commercient name, Billing address line 1 → Commercient billing address line 1, Billing address line 2 → Commercient billing address line 2, Billing address line 3 → Commercient billing address line 3
InvoiceCommercient Invoice Managed Custom Object72returned transaction identifier → Commercient external key (QuickBooks package), returned transaction identifier → Commercient name, Reference number → Commercient reference number, Billing address line 1 → Commercient billing address line 1, Billing address line 2 → Commercient billing address line 2
Invoice lineCommercient Invoice Line Managed Custom Object62Transaction line identifier → Commercient external key (QuickBooks package), Transaction line identifier → Commercient name, Applied amount → Commercient applied amount, Balance remaining → Commercient balance remaining, Balance remaining in home currency → Commercient balance remaining in home currency
Item inventoryCommercient QuickBooks Item Inventory Managed Custom Object34returned list identifier → Commercient external key (QuickBooks package), Name → Name, Asset account full name → Asset account full name, Asset account list identifier → Asset account list identifier, Barcode value → Barcode value
ContactContact8returned list identifier → External key (custom field), Given name, Family name → Name, Salutation → Salutation, Given name → Given name, Family name → Family name
ProductProduct5returned list identifier → Commercient external key (earlier package), Name → Product code, Full name → Description, Name → Name, Active → Active
OpportunityOpportunity7Customer list identifier → account lookup, returned transaction identifier → Name, returned transaction identifier → Opportunity number, Transaction date → close date property, Total amount → Amount
Opportunity line itemOpportunity line item10Line item list identifier → product lookup, returned transaction identifier → Opportunity, Transaction line identifier → external key column, Line amount → Unit price, Line quantity → Quantity
QuoteQuote17returned transaction identifier → Opportunity identifier, Customer list identifier → account lookup, Status → Status, Due date → Expiry date, Total amount → Grand total
Quote line itemQuote line item9Transaction line identifier → External key (custom field), Line item list identifier → product lookup, returned transaction identifier → Quote, Line quantity → Quantity, Transaction date → Service date

6. Verifying

The detail of this section is part of the operational skill. Whitelisted customers fetch it with dlake admin get_skill dlake-crmpro-salesforce/erps/quickbooks-desktop.

7. 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 QuickBooks Desktop → Salesforce templates set up. dlake-crmpro-salesforce is the destination skill this page sits under: its own text is the authority for the Salesforce 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-salesforce/erps/quickbooks-desktop, 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.