Custom Guided Wizard

7min

Introduction

Breadwinner was designed to create Invoices from Accounts and Opportunities (and their Opportunity Products), and Orders (and their Order products) with no configuration required.

However, you may wish to create Invoices from other objects, perhaps an ISV App or your own custom objects. There is virtually no restriction to how you might approach this, other than that the Invoice must be linked to an Account (through either a formula or lookup) and the record the Invoice originates from.

Restrictions

The ability to create an Invoice using the Custom Guided Wizard is currently restricted to Enterprise Edition and Business Edition with the Custom Object Add-On.

Due to Salesforce’s architecture, we cannot create Invoices from a Salesforce Lead record as the originating record.

A surprisingly common request is to populate fields that do not exist in QuickBooks. For obvious reasons, we cannot populate fields that don’t exist.

You cannot pull data from two or more fields into a single field on the accounting platform, this is true for both Invoice level and Line Item level fields. However, you may easily achieve this by using a Formula Field that concatenates those two fields. This is why we strongly recommend you pull data from Formula Fields (compared to user-populated fields). Formula Fields have the advantage of combining two or more fields, pulling data from parent records, or using logic to populate different information based on other fields.

Preparation

You will need to create a Lookup Field on the Breadwinner Invoice object to the object you want to create Invoices from. And, we strongly recommend you add the Invoices related list to that Object’s page layout. 

The Originating Object will need either a direct Lookup to an Account (either via a lookup or master/detail) or a Formula Field of the Salesforce Account you wish the Invoices to be created under.

Please familiarize yourself with how Breadwinner normally creates Invoices out of the box, in a traditional Opportunity / Opportunity Products situation. The ERD for Breadwinner for QuickBooks is available in the "Technical Resources" section of our website.

Conventions in this Document

In the formulas below, the left side of the equation is our field, and the right side of the equation (after the = sign) is for you to populate based on the API names in your Salesforce org.

For instance, if you see

Button URL


Then your formula would include &parent_account=, but the api_field_name__c would be replaced by the API name of the field in your Salesforce org.

Ease-of-Use Tip

We have made a Custom Guided Wizard to help you create the QuickBooks records. To view this, simply make a button with the text below, quick-save it, add it to the Originating Object's "Invoice Related List" page layout, and click.

This button should be created on the Invoice object (as a Button, not an Action or Link). We recommend the name of the button to be something like “New Quickbooks Invoice from the [Something Object]”.

Button URL


Once created, the button should be displayed on the page layout of the Object in question (the one you wish to create Invoices from), and on the Invoices related list on that object (in the page layout for that object, click the wrench on the related list, and then click "Buttons" to change the buttons on the related list). This is also the time to remove the standard "New" button by unchecking it, as the standard "New" button won’t work on Custom Objects.

The Button URL Generator will give you the formula you need. However, you may wish to further modify the URL, or just understand it further.

Also, you can create multiple buttons per object, with different formulas to be allowed Invoices to be populated in different ways from different fields.

When creating formulas in Salesforce, you can create a formula over many lines, separated by a new line for readability.

Button on Invoices Related List

You can create a button on the Breadwinner Invoice object itself, as a List Button (without multi- checkboxes). After creating it, you will need to display it on the related list of the Originating Object’s page layout. A long, descriptive name, such as “New Invoice from XXXX” 

These buttons will be added to the page layout of the Originating Object, by clicking the wrench/spanner on the Invoices related list.