- 1 Install
- 2 Setup
- 3 TABS
- 4 Troubleshooting
- 5 Release Notes
- In any Fishbowl Client, open the Plugin module, located in the Integrations group.
- Select the Salesforce plugin and click Install.
- Completely close all Fishbowl Clients.
- Exit the Fishbowl Server by right-clicking the Fishbowl Server tray icon and selecting Exit.
- After re-opening the Fishbowl Server, the admin user can access the Salesforce module from any Fishbowl Client by opening the Integrations group.
- To grant access to additional users, assign the Salesforce-View access right to the appropriate groups in the User Group module
- Click the Connect button and log into Salesforce as a user with API access.
- The Store Url and Pricebook fields will automatically populate after a successful connection.
The Clear Login Credentials checkbox clears the cache of the Fishbowl browser allowing you to connect with different user credentials. If this option is used to change an existing connection to a completely different Salesforce account, all the existing product and order links will become invalidated. Fishbowl Support will need to be contacted to remove those existing links.
Several plugins in Fishbowl have a standardized layout. Some of the images below show the options that are most common between all plugins. Any additional Salesforce options or notes are included at the bottom of each section. System properties also allow advanced options to be enabled for the Salesforce plugin.
- If applicable, copy any needed setup information from the Salesforce website.
- Click the Store Settings tab of the Salesforce module.
- Enter a name in the Store Name field and any other required information.
- Click the button and verify that the connection to the Salesforce website is working.
- Click the Save button at the top of the module to save the Salesforce settings.
- Click the New button at the top of the module to configure another Salesforce store.
- Click the Pull Salesforce Data button to import the data needed for the mapping tables.
- Schedule - Select the Active checkbox to import orders on a set schedule. Click the Run task button to run the scheduled task right now. Data that has changed since the Last Sync date will be synchronized. This date will be updated automatically after a sync, or it can be manually edited to adjust which data will be synchronized.
- A Salesforce opportunity must meet the following criteria before it is imported to Fishbowl:
- The opportunity has products that have been linked to Fishbowl through the Product Import or Product Export.
- The opportunity has a billing OR shipping address. If only one address is present in Salesforce, Fishbowl will use that address as the billing AND shipping address.
- The opportunity has a status that is mapped to a Fishbowl order status through the Order Status Mapping.
- Based on Apply Last Sync To setting in the Schedule, the order was created/modified since the last sync date.
- Use Salesforce Opportunity Owner As Salesperson - The Salesforce opportunity owner's first and last name must match a Fishbowl user's first and last name exactly or the order will fail to import.
- Salesperson - Sales orders will be created using this salesperson.
- Location Group - Sales orders will be created using this location group.
- Class - When selected, sales orders will be created using this class as the sales order class.
- Payment Terms - When selected, sales orders will be created using this payment term.
- Shipping Terms - When selected, sales orders will be created using these shipping terms.
- Assign Salesforce order number to Customer PO field - When selected, the Salesforce order number will be displayed in the Sales Order Customer PO field.
- Use Salesforce opportunity name as Fishbowl SO number - When selected, sales orders will be created using the Salesforce opportunity name as the Fishbowl sales order number.
Location Group Settings
- Use a default location group - Select a default location group for imported orders.
- Use location group mapping - This option is disabled in the Salesforce plugin.
Order Status Mapping
- Use the table to assign Salesforce order statuses to Fishbowl order statuses. The Order Import task will only import orders from Salesforce that are in a status assigned to a Fishbowl order status. At least one active status mapping is required to use the Order Import task.
- Use the options below to determine how customers are created in Fishbowl and what information is imported into Fishbowl.
- Use Default customer - This option will associate all imported sales orders with the customer selected in the Customer field. This could be used with a generic Fishbowl customer such as Salesforce Customer.
- Use the Salesforce Customer and Addresses - This option will import the addresses and customer from the Salesforce order instead of using a generic customer.
- Alternate Name - An alternate field mapping when the primary mapping does not contain data.
- Carrier - Select the default carrier and service for orders that are imported from Salesforce to Fishbowl.
- Schedule - Select the Active checkbox to export orders on a set schedule. Click the Run task button to run the scheduled task right now. Data that has changed since the Last Sync date will be synchronized. This date will be updated automatically after a sync, or it can be manually edited to adjust which data will be synchronized.
- Fishbowl will search Salesforce for the first account name that matches the Fishbowl customer name. If no match is found, an account is created in Salesforce. A Fishbowl order must meet the following criteria before it is exported to Salesforce:
- The order did not originate from Salesforce through the Order Import.
- The order has a status that is mapped to a Salesforce status through the Order Export mapping table .
- Based on the Last Sync Date in the Schedule, the order was created since the last sync date.
- This export creates a note on the Salesforce opportunity containing the carrier, service, and tracking numbers of fulfilled sales orders.
- Schedule - Select the Active checkbox to import products on a set schedule. Click the Run task button to run the scheduled task right now. Data that has changed since the Last Sync date will be synchronized. This date will be updated automatically after a sync, or it can be manually edited to adjust which data will be synchronized.
- NOTE: When setting up the shopping cart integration for the first time you will want to adjust the Last Sync to a date before any of your products were created (for example, setting the year to 2000) so that all of the products on your website will be imported.
The product import task imports products into Fishbowl from Salesforce. A product link is created by storing the Salesforce product ID in Fishbowl. Select ONE of the following options:
- Link existing products - This option will match existing products in Fishbowl and Salesforce where data matches in the selected fields.
- Import products - This option will import products from Salesforce into Fishbowl, creating them based on the field mapping and selected settings. If the weight or size UOM isn't set in Salesforce, the default UOMs listed here will be used.
- Schedule - Select the Active checkbox to export products on a set schedule. Click the Run task button to run the scheduled task right now. Data that has changed since the Last Sync date will be synchronized. This date will be updated automatically after a sync, or it can be manually edited to adjust which data will be synchronized.
- Product Create Settings - Enable Export new products and then map the fields that should be exported from Fishbowl to Salesforce. A default weight UOM and size UOM can also be specified. The selected product trees will be included, or all product trees will be included if the field is left blank. Selecting the Export all products option will ignore the last sync date and attempt to push all of the Fishbowl products to Salesforce. The product tree filter will still apply.
- Product Update Settings - Enable Update linked products and then map the fields that should be exported from Fishbowl to Salesforce. This section has the same options as the Product Create Settings section above. After the initial product export, only the selected fields will be updated.
- Schedule - Select the Active checkbox to export inventory levels to Salesforce on a set schedule. Click the Run task button to run the scheduled task right now. Data that has changed since the Last Sync date will be synchronized. This date will be updated automatically after a sync, or it can be manually edited to adjust which data will be synchronized.
- NOTE: When setting up the shopping cart integration for the first time you will want to adjust the Last Sync to a date before any of your products were created (for example, setting the year to 2000) so that it includes all of your products (or any applicable product tree filter) when updating inventory levels.
- Export company wide inventory - Include inventory quantities from all location groups in the inventory sync. If this option is unchecked, selected location groups can be added by clicking the Add button.
- Inventory Type - Select the inventory quantity that should be used during the update: Available, Inventory On Hand, or Available To Pick.
- Product Tree filter - The export can be limited to certain product tree categories. If this field is left blank, all products will be included in the export.
- Specify Min/Max Inventory Quantity - With this option enabled, the maximum inventory quantity sent to Salesforce can be limited. For example, if there is an available quantity of 4000 in Fishbowl, the quantity in Salesforce could be set to 999. If there is an available quantity of 3 in Fishbowl, the minimum quantity field could be used to send a quantity of 10 to Salesforce.
- Include Quantities Available To Build - When enabled, this option calculates and includes available to build quantities from applicable bills of material in the inventory push. When a product is sold individually but also used as an input for a bill of material, both quantities are pushed to the channel when applicable. Please note, this could lead to overselling in the scenario described..
- Only new orders are imported. Orders are not updated once they have been imported. Returns and refunds are not imported.
- The attributes and IDs for orders and products can viewed or modified by clicking the Salesforce button at the top of the Sales Order module and the Product module.
- To view the scheduled tasks for the Salesforce module, open the Schedule module.
- A scheduled task can be run manually by double-clicking the task.
- Enter an email address in the Schedule module to receive error notifications.
- To view the history of a scheduled task, including the result/error, click the History button in the Schedule module.
- More details about recent errors can be viewed by opening the Data module and clicking the Server Log button.
- Check for multiple versions of the Salesforce.jar file in C:\Program Files\Fishbowl\plugins\ or \Applications\Fishbowl\plugins\ on a Mac. If there are two Salesforce versions, exit the Fishbowl Server and remove the older version on all client and server computers.
**This update will require the user to configure additional settings and mapping tables in the plugin. Contact Fishbowl Plugin Support for assistance**
- This update will cause the scheduled tasks to give an error when first loading Fishbowl after updating. Users will need to go into the plugin interface and configure the additional mappings and save settings in order for the scheduled tasks to run properly
- Added ability to link products on order import. Products that were not previously linked using the product import/export tasks can now be linked during the order import task
- Fixed bug on order import task when creating a new Location Group mapping where the added Salesforce Location would show up blank in the table
- Added enhancement for inventory sync to have a max qty option
- Added enhancement for inventory update to include "Available to Pick" for inventory type as one of the options
- Added enhancement where order import carrier mapping now has a priority option for "All" that doesn't exist in Fishbowl and causes an error when used for an order
- Added enhancement on order settings and on order items field mapping table including custom fields
- Fixed Typo in the payment panel
- Fixed (for supporting channels)where the image export was not working on the product export task
- Misc items are now supported on order import
- Fixed bug with state tax mapping table giving a bad error when a state was not mapped on an order
- Fixed advanced options error message when enabled and a day of the month wasn't specified
- Fixed advanced options error for order fulfillment task'
- Fixed data mapping error with many to one field mappings on product export
- Fixed order import not finding order addresses error
- Fixed inventory sync bug
- Changed error message on order import when products are not linked and the order import failed
- Fixed product import and product export mapping issue which was causing errors and limiting many to one field mappings between FB and the channel
- Fixed invalid status mapping error on order export
- Fixed tax item required bug on order import
- Fixed bug where the SalesForce price book data saved in FB was causing an error when clicking the refresh button in the plugin interface
- On first load, a data migration task will run migrating carrier and payment mapping table data from the previous version
- On first load, existing scheduled tasks will be removed and need to be recreated by Saving the plugin
- Fixed bug where mapping validation error window appeared
- Fixed bug where smaller screens would cut off data in the Plugin UI
- Added UPC field as a mappable product field for product linking task
- Added option to use a tax mapping table on the order import task
- Fixed bug where the fulfillment task wasn't sending up the shipment tracking
- Various AU version fixes
- Fixed bug when customer PO number did not populate correctly when the user did not have "Assign Channel Name order number to Customer PO field" checked
- Fixed bug where order import option to add on order number prefix was not saving
- Fixed bug when QB class setting was not being applied to regular products in orders
- Fixed bug where plugins first loading into a new database displayed pop-up windows that should not be there
- Multi-currency support for orders and payments created from the channel. Multi-Currency must be turned on in FB
- With multi-currency enabled there is an option to not create payments for international orders
- Fixed bug when using the default payment method
- Changed so create taxes option is set by default
- Fixed bug for when discount item field was left blank and saved, causing null errors
- Added tracking to shipments on FB for fulfilled orders
- Fixed bug where UI issue did not allow some order import setting panels to be seen
- Fixed bug where panels were not sizing properly on small screens
**Please note, this update will require you to re-enter the order status mapping table data when first loading the plugin for both order import and order export tasks**
- Added ability to choose whether to sync on hand vs. available to sale inventory quantity
- Improved status mapping error messages during order import using advanced options and the order status hasn't been mapped
- In the order import tab when using the customer matching option, we now provide an alternative mapping option if the first mapping option does not contain data from the cart
- Fixed bug to reenable editing of existing order status mapping
- Updated POS Import customer settings panel to have the same mapping options as the standard order import
- Updated Test Connection success/fail dialog box
- Added a popup window to notify users about status mapping tables being cleared
- On the Inventory Update tab the location group drop down box is now replaced with a checkbox called "Sync all Location Groups"
- Fixed bug when clicking next button sometimes it would bring the mapping back up that user just created in the order status mapping table
- Fixed bug where lines could be added to order status mapping without data
- Added ability to map the SO contact, phone, and email fields when using the "Use default customer" option on the Order Import task2}}
- Added option to add a custom prefix to the opportunity name on order import
- Fixed bug where the wrong inventory quantity was synced in the following scenario:
- When not using a location group (LG) filter and multiple LG's exist in the FB database and
- When one of the LG's has more inventory allocated than inventory available for all LG's combined
Do not skip this version unless installing the plugin for the first time. If you’re planning to update to a later version of Fishbowl, install 18.10 first, update your plugins, and open them so the data migrator (described below) can run. Then update Fishbowl to the desired version.
- Fixed bug where the inventory object wasn't being created on first install of the plugin in Salesforce
- Fixed bug where inventory updates all linked products instead of the first linked product in the list in FB
- New version number system to match Fishbowl.
- Status mapping table will now display all Salesforce statuses, including custom ones.
- Significantly reduced the number of API calls we’re making.
- Bug Fixes
- Updated for compatibility with Fishbowl version 2018.7
- Newly redesigned with lots of new features
- Ability to export orders to Salesforce to create opportunities
- It's now possible to toggle between your sandbox and live accounts
- Updated for compatibility with Fishbowl version 2018.3
- Fixed a bug to only send "Fulfilled" orders in Fishbowl up to Salesforce
- Fixed validation error against Fishbowl support status when using Salesforce plugin
- Added ability to reset sync date from the plugin
- Fixed inventory sync issue causing quantities to be doubled in Salesforce
- Fixed a product sync bug
- Fixed issue with discounts not calculating correctly
- Fixed tax functionality for Australia and Canada versions of Fishbowl
- Fixed import last sync date using the wrong sync date
- Fixed inventory sync issue when more than 999 in stock, sync would fail
- Fixed authentication error when syncing data