Questionnaire Overview
This questionnaire collects essential information required to configure and deploy the QuickBooks Online (QBO) and Salesforce integration solution. The responses provided will serve as the foundation for system configuration, data mapping, and implementation planning. Completion of all applicable sections is required to proceed with the implementation phase. Please allocate adequate time to gather information from stakeholders and system administrators before submission.
Prerequisites
Before completing this questionnaire, please confirm the following prerequisites are satisfied:
-
An active QuickBooks Online subscription with administrative access
-
Salesforce administrator access
-
Verified understanding of Salesforce object structure and field architecture
-
Documentation of current data synchronization processes and pain points
Instructions:
-
Completion Scope: Complete all sections marked as Required. Optional sections may be deferred for later configuration.
-
Field References: When identifying Salesforce Field API Names, navigate to Setup > Object Manager > [Object Name] > Fields & Relationships. The API Name column displays the technical field identifier (e.g., BillingCity, Phone, Custom_Field__c).
-
Incomplete Fields: If uncertain about any response, leave the field blank and provide context in Section 6. Our implementation team will follow up as needed.
Section 1 — Source Object Mapping
Specify which Salesforce object should serve as the data source for each QuickBooks entity during integration.
Purpose
QuickBooks Connect utilizes these mappings to determine the origin of information when creating or updating records in QuickBooks Online. The objects selected in this section establish the foundational configuration for all subsequent mapping sections.
Mapping Configuration
Complete the following table by specifying the Salesforce object(s) that should be synchronized to each QuickBooks entity:
|
QuickBooks Entity |
Salesforce Source Object(s) |
|---|---|
|
QuickBooks Customer |
|
|
QuickBooks Product |
|
|
QuickBooks Invoice |
|
|
QuickBooks Vendor |
|
|
QuickBooks Sales Receipt |
|
Section 2 — Field Mapping
Field mapping defines the relationship between Salesforce fields and QuickBooks data fields. Each organization stores information differently; these mappings ensure data reaches QuickBooks correctly.
Purpose
By providing explicit field-to-field mappings, you enable our implementation team to configure the integration to extract the correct information from Salesforce and populate QuickBooks fields during synchronization.
Important Notes
-
Required Fields: All fields marked as Required must be completed.
-
Optional Fields: Optional fields may be left blank if your organization does not require that data.
-
API Names Required: Use Salesforce Field API Name, not the field label (e.g., BillingCity, not Billing City).
2.1 QuickBooks Invoice Mapping
These fields determine what invoice information is sent from Salesforce to QuickBooks when an invoice is created or updated.
|
QuickBooks Field |
Salesforce Field API Name |
Description |
Required? |
|---|---|---|---|
|
|
|
The date this transaction occurred (format: yyyy/MM/dd). Defaults to today if not provided. |
Optional |
|
|
|
The payment due date. If not provided, calculated from your payment terms. |
Optional |
|
|
|
Any deposit amount already paid toward this invoice. |
Optional |
|
|
|
A message to the customer that appears on the invoice. |
Optional |
|
Customer Lookup Field |
|
The Salesforce field linking to the related QuickBooks Customer record. E.g., if your invoice source is Opportunity, this is typically |
Required |
2.1.1 Invoice Line Items (Optional)
Configure this section if you would like QuickBooks Connect to automatically populate invoice line items when creating an invoice in QuickBooks.
Why would I configure this?
When Invoice Line Item mappings are configured, QuickBooks Connect can automatically pull product, quantity, description, and other line item information from Salesforce and pre-populate the QuickBooks Invoice.
This allows users to review the invoice and create it without manually adding line items.
Example
Without Invoice Line Item Mapping
When creating an invoice in QuickBooks:
-
Customer information is populated automatically.
-
Users must manually add products, quantities, and descriptions before creating the invoice.
With Invoice Line Item Mapping
When creating an invoice in QuickBooks:
-
Customer information is populated automatically.
-
Products, quantities, and descriptions are automatically added to the invoice from Salesforce.
-
Users only need to review the information and create the invoice.
When should I complete this section?
Complete this section if your invoice data includes line items such as products or services that should automatically appear on QuickBooks invoices.
If your users prefer to manually add line items during invoice creation, this section can be left blank.
|
Field Name |
Salesforce Field API Name |
Description |
Required? |
|---|---|---|---|
|
|
|
Lookup field to the Salesforce product record used for QuickBooks Product sync (e.g., |
Required |
|
|
|
Name of the product or service on the line item. |
Optional |
|
|
|
Short description of the product or service. |
Optional |
|
|
|
Number of units for this line item. |
Optional |
|
|
|
Stores the QuickBooks Class ID used to assign the sales receipt line item to the appropriate QuickBooks class. |
Optional |
📌 Note: The child object is the Salesforce object holding your line item records (e.g.,
OpportunityLineItem). ThesfProductIdfield must point to the same object you mapped as your QuickBooks Product source in Section 1.
2.2 QuickBooks Customer Mapping
These fields determine what customer information is sent from Salesforce to QuickBooks when a customer record is synchronized.
|
QuickBooks Field |
Salesforce Field API Name |
Description |
Required? |
|---|---|---|---|
|
|
|
The name displayed for this customer in QuickBooks. If not provided, built from name components below. |
Required |
|
|
|
Full hierarchical name (includes parent company if applicable). |
Optional |
|
|
|
Primary email address. Must be a valid email format. |
Optional |
|
|
|
Name suffix, e.g., "Jr." or "III". |
Optional |
|
|
|
Title such as "Mr.", "Dr.", "Ms." |
Optional |
|
|
|
Customer's first name. |
Optional |
|
|
|
Customer's middle name. |
Optional |
|
|
|
Customer's last name. |
Optional |
|
|
|
Free-form notes about this customer. |
Optional |
|
|
|
Primary phone number. |
Optional |
|
|
|
Company or organisation name. |
Optional |
|
|
|
Billing address – City. |
Optional |
|
|
|
Billing address – State or Province code (e.g., "CA", "NY"). |
Optional |
|
|
|
Billing address – Country. |
Optional |
|
|
|
Billing address – Street line 1. |
Optional |
|
|
|
Billing address – ZIP or Postal code. |
Optional |
|
|
|
Shipping address – City. |
Optional |
|
|
|
Shipping address – StateCode or ProvinceCode. |
Optional |
|
|
|
Shipping address – Country. |
Optional |
|
|
|
Shipping address – Street line 1. |
Optional |
|
|
|
Shipping address – ZIP or Postal code. |
Optional |
|
|
|
Outstanding balance owed. For new customers, sets the opening balance. |
Optional |
2.3 QuickBooks Vendor Mapping
These fields determine what vendor information is sent from Salesforce to QuickBooks when a vendor record is synchronized.
|
QuickBooks Field |
Salesforce Field API Name |
Description |
Required? |
|---|---|---|---|
|
|
|
The name displayed for this vendor in QuickBooks. Must be unique across all vendors, customers, and employees. |
Required |
|
|
|
Full hierarchical name (used when the vendor is a sub-vendor). |
Optional |
|
|
|
Primary email address. |
Optional |
|
|
|
Name suffix, e.g., "Jr." |
Optional |
|
|
|
Title such as "Mr.", "Dr.", "Ms." |
Optional |
|
|
|
Vendor contact's first name. |
Optional |
|
|
|
Vendor contact's middle name. |
Optional |
|
|
|
Vendor contact's last name. |
Optional |
|
|
|
Free-form notes about this vendor. |
Optional |
|
|
|
Primary phone number. |
Optional |
|
|
|
Company or organisation name. |
Optional |
|
|
|
Billing address – City. |
Optional |
|
|
|
Billing address – StateCode or Province code. |
Optional |
|
|
|
Billing address – Country. |
Optional |
|
|
|
Billing address – Street line 1. |
Optional |
|
|
|
Billing address – ZIP or Postal code. |
Optional |
|
|
|
Outstanding balance for this vendor. |
Optional |
2.4 QuickBooks Product Mapping
These fields determine what product or service information is sent from Salesforce to QuickBooks when a product record is synchronized.
|
QuickBooks Field |
Salesforce Field API Name |
Description |
Required? |
|---|---|---|---|
|
|
|
Product or service name as it appears in QuickBooks. Must be unique. |
Required |
|
|
|
Full hierarchical name including any parent category (e.g., "Services:Consulting"). |
Required |
|
|
|
Item classification: Inventory (tracked stock), Service (non-tangible), or NonInventory (goods not tracked). |
Required |
|
|
|
Set to true if this product is currently active and available. |
Optional |
|
|
|
Selling price per unit. For discounts/tax rates, use a decimal (e.g., 0.10 for 10%). |
Optional |
|
|
|
Cost paid when purchasing or ordering this item. |
Optional |
|
|
|
Set to true to track quantity on hand. Applies to Inventory type only. Cannot be reversed once set. |
Optional |
|
|
|
Current available quantity. Required for Inventory type items only. |
Optional |
|
|
|
Start date for inventory tracking (format: yyyy/MM/dd). Required for Inventory type items only. |
Optional |
|
|
|
Set to true if transactions for this product should be taxed. |
Optional |
2.5 QuickBooks Sales Receipt Mapping
These fields determine what sales receipt information is sent from Salesforce to QuickBooks when a sales receipt is created or updated.
|
QuickBooks Field |
Salesforce Field API Name |
Description |
Required? |
|---|---|---|---|
|
|
|
The date this transaction occurred (format: yyyy/MM/dd). Defaults to today if not provided. |
Optional |
|
|
|
The reference number for the payment applied to the sales receipt, such as a check number or transaction reference. |
Optional |
|
|
|
A message to the customer that appears on the sales receipt. |
Optional |
|
|
|
The billing email address associated with the sales receipt customer. If not populated related customer email will be used. |
Optional |
|
Payment Method Reference field (paymentMethodLookupFieldName) |
|
The Salesforce field that references the QuickBooks payment method to apply to the sales receipt. |
Optional |
|
Quickbooks Account Reference field
|
|
The Salesforce field that references the QuickBooks deposit account where the sales receipt payment should be deposited. |
Required |
|
Customer Lookup Field |
|
The Salesforce field linking to the related QuickBooks Customer record. E.g., if your sales receipt source is Opportunity, this is typically |
Required |
2.5.1 Sales Receipt Line Items (Optional)
Configure this section if you would like QuickBooks Connect to automatically populate sales receipt line items when creating a sales receipt in QuickBooks.
Why would I configure this?
When Sales Receipt Line Item mappings are configured, QuickBooks Connect can automatically pull product, quantity, description, and other line item information from Salesforce and pre-populate the QuickBooks Sales Receipt.
This allows users to review the sales receipt and create it without manually adding line items.
Example
Without Sales Receipt Line Item Mapping
When creating a sales receipt in QuickBooks:
-
Customer information is populated automatically.
-
Users must manually add products, quantities, and descriptions before creating the sales receipt.
With Sales Receipt Line Item Mapping
When creating a sales receipt in QuickBooks:
-
Customer information is populated automatically.
-
Products, quantities, and descriptions are automatically added to the sales receipt from Salesforce.
-
Users only need to review the information and create the sales receipt.
When should I complete this section?
Complete this section if your sales receipt data includes line items such as products or services that should automatically appear on QuickBooks sales receipts.
If your users prefer to manually add line items during sales receipt creation, this section can be left blank.
|
Field Name |
Salesforce Field API Name |
Description |
Required? |
|---|---|---|---|
|
|
|
Lookup field to the Salesforce product record used for QuickBooks Product sync (e.g., |
Required |
|
|
|
Selling price per unit for the product or service on the sales receipt line item. |
Optional |
|
|
|
Short description of the product or service. |
Optional |
|
|
|
Number of units for this line item. |
Optional |
|
|
|
Stores the QuickBooks Class ID used to assign the sales receipt line item to the appropriate QuickBooks class. |
Optional |
📌 Note: The child object is the Salesforce object holding your line item records (e.g.,
OpportunityLineItem). ThesfProductIdfield must point to the same object you mapped as your QuickBooks Product source in Section 1.
Section 3 — Reverse Synchronization (Optional)
By default, QuickBooks Connect synchronizes data from Salesforce to QuickBooks Online. Reverse Sync enables QuickBooks data to flow back to the originating Salesforce record after successful synchronization.
Purpose & Value
Reverse Sync captures QB-generated identifiers and status information back on Salesforce records, enabling visibility, downstream automation, and complete audit trails.
How Reverse Sync Works
-
Salesforce record synchronizes to QuickBooks
-
QuickBooks creates/updates record with QB ID and data
-
Reverse Sync writes QB field values to Salesforce custom fields
-
Salesforce fields populate for reporting and workflow automation
Common Use Cases
-
Store QB Customer ID on Account records for reference
-
Capture QB Invoice ID and Invoice Number on Opportunities
-
Track QB Transaction Status (Draft, Submitted, Voided)
-
Trigger Salesforce workflows based on QB status changes
Reverse Sync Configuration by Entity
Specify which QB fields should be captured for each entity:
Customer Entity
-
Enable Reverse Sync? Yes / No
-
QB Fields to Capture: (specify mapping e.g., Id → QB_Customer_Id__c)
Product Entity
-
Enable Reverse Sync? Yes / No
-
QB Fields to Capture: (specify mapping)
Invoice Entity
-
Enable Reverse Sync? Yes / No
-
QB Fields to Capture: (specify mapping e.g., Id → QB_Invoice_Id__c; DocNumber → QB_Invoice_Number__c)
Sales Receipt Entity
-
Enable Reverse Sync? Yes / No
-
QB Fields to Capture: (specify mapping e.g., Id → QB_Sales_Receipt_Id__c; DocNumber → QB_Sales_Receipt_Number__c)
Vendor Entity
-
Enable Reverse Sync? Yes / No
-
QB Fields to Capture: (specify mapping)
Important Reverse Sync Considerations
-
Read-Only Fields: Reverse sync fields must be read-only to prevent user edits from conflicting with integration updates
-
Field Visibility: Restrict field visibility to administrators and reporting users only
-
Field Security: Apply field-level security for sensitive QB data
Section 4: Salesforce Page Layout Configuration
Specify which Salesforce Page Layouts should display QuickBooks Connect components, including related lists and action buttons.
Purpose
Page layouts control which components appear on user records. QuickBooks Connect adds related lists and sync buttons to enable users to view synchronized QB records and manually trigger synchronization.
Components Added to Layouts
-
QuickBooks Related List - Shows all QB records created from this Salesforce record
-
Sync to QuickBooks Action Button - Allows users to manually trigger synchronization
-
Sync Status Indicator - Displays last sync timestamp and status
-
Reverse Sync Fields Display - Shows QB identifiers captured on the record
Components Added to Layouts
-
QuickBooks Related List - Shows all QB records created from this Salesforce record
-
Sync to QuickBooks Action Button - Allows users to manually trigger synchronization
-
Sync Status Indicator - Displays last sync timestamp and status
-
Reverse Sync Fields Display - Shows QB identifiers captured on the record
Page Layout Mapping
Provide the exact page layout names for each QB entity source object:
|
|
Salesforce Source Object |
Salesforce Source Object Page Layout Name(s) |
|---|---|---|
|
QuickBooks Customer |
(e.g., Account) |
|
|
QuickBooks Product |
(e.g., Product2) |
|
|
QuickBooks Invoice |
(e.g., Opportunity) |
|
|
QuickBooks Vendor |
(e.g., Account) |
|
|
QuickBooks Sales Receipt |
(e.g., Opportunity) |
|
Section 5: Salesforce Lightning Page Configuration
Specify which Salesforce Lightning Record Pages should display the Sync to QuickBooks action.
Purpose
Lightning Record Pages determine which actions are available to users on a record. QuickBooks Connect adds the Sync to QuickBooks action, allowing users to manually synchronize Salesforce records with QuickBooks Online directly from the Lightning Record Page.
Components Added to Lightning Pages
-
Sync to QuickBooks Action - Allows users to manually trigger synchronization from the Salesforce record.
How to Find Your Lightning Record Pages
-
Navigate to Setup.
-
Open Lightning App Builder.
-
Search for the Salesforce object listed in Section 1.
-
Locate the Lightning Record Page used by your users.
-
Enter the name(s) of the Lightning Record Page(s) below.
Lightning Page Mapping
Provide the exact Lightning Record Page names for each QuickBooks entity source object.
|
QuickBooks Entity |
Salesforce Source Object |
Salesforce Source Object Lightning Page Name(s) |
|---|---|---|
|
QuickBooks Customer |
(e.g., Account) |
|
|
QuickBooks Product |
(e.g., Product2) |
|
|
QuickBooks Invoice |
(e.g., Opportunity) |
|
|
QuickBooks Vendor |
(e.g., Account) |
|
|
QuickBooks Invoice |
(e.g., Opportunity) |
|
Section 6: Business Requirements & Implementation Context
Every organization has unique business processes, data structures, and constraints. This section helps us understand your specific requirements and ensure the integration is configured to meet your operational needs.
For each topic below, provide as much detail as possible. If a topic does not apply to your organization, indicate N/A. This information is critical for accurate configuration and successful implementation
6.1 Multi-Company QuickBooks Setup
If your organization operates multiple QuickBooks Online companies, specify which QB company each Salesforce entity should synchronize to.
Questions to Consider:
-
How many QuickBooks companies do you have?
-
Are different Salesforce business units/regions syncing to different QB companies?
-
Is there a field on Account/Opportunity that indicates which QB company to use?
Your Response:
6.2 Conditional Synchronization Logic
Specify any business rules that should determine whether a record synchronizes to QuickBooks.
Examples of Conditional Logic:
-
Only sync Opportunities with Stage = 'Closed Won'
-
Only sync Accounts with Type = 'Customer' (exclude 'Prospect')
-
Do not sync if a specific 'Exclude from QB Sync' checkbox is checked
Your Conditional Logic Requirements:
6.3 Data Migration & Historical Data
Specify whether historical Salesforce or QuickBooks data should be migrated to the other system, and the scope of that migration.
Questions to Consider:
-
Do you want to migrate historical QB invoices into Salesforce? If yes, how many years of data?
-
Do you want to migrate historical Salesforce Opportunities/Accounts to QB? If yes, what date range?
-
What is the approximate volume of records to migrate (e.g., 5,000 invoices, 1,000 accounts)?
6.5 Security, Compliance & Data Governance
Identify security, compliance, and data governance requirements that impact the integration.
Questions to Consider:
-
Do you have data residency requirements (data must stay in specific geographic regions)?
-
Are you subject to compliance mandates (SOC 2, HIPAA, GDPR)?
-
Are there fields that should NOT be synchronized (e.g., sensitive financial data, PII)?
Your Security, Compliance & Governance Requirements:
What Happens Next?
Once you return this form, the Cloud Maven team will:
-
Review your field mappings and follow up with any clarifying questions
-
Set up the integration environment and validate all mappings
-
Walk you through testing before go-live
Questions? Contact us at support@cloudmaveninc.com