The Magento module, located in the Integrations group, is an add-on module that can be installed from the Plugin module. After installing the plugin, a new module is added that integrates with one or more Magento shopping carts. This plugin is specifically designed to integrate with Magento 2.1 or higher. For older versions of Magento, use the Magento Cart module.
- In any Fishbowl Client, open the Plugin module, located in the Integrations group.
- Select the Magento plugin and click Install Now.
- 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 Magento module from any Fishbowl Client by opening the Integrations module group.
- To grant access to additional users, assign the Magento-View access right to the appropriate groups in the User Group module
- Find the Store URL, for example https://magento2.mycompany.com
- Copy the Username and Password of a Magento user.
Shopping cart plugins in Fishbowl have a standardized layout. Some of the images below show the options that are most common between all plugins. Any additional Magento options or notes are included at the bottom of each section.
- If applicable, copy any needed setup information from the Magento website.
- Click the Store Settings tab of the Magento module.
- Enter a name in the Store Name field and any other required information.
- Click the button and verify that the connection to the Magento website is working.
- Click the Save button at the top of the module to save the Magento settings.
- Click the New button at the top of the module to configure another Magento store.
- 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.
- 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 Item - When selected, sales orders will be created using this product as the default shipping item.
- Shipping Terms - When selected, sales orders will be created using these shipping terms.
- Discount Item - Discount item for the order discount amount from Magento. Can only specify a flat rate discount. The flat rate discount can be set to $0 in the Discount module and then the correct discount amount will be set when the order is imported from Magento.
- Use Magento order number as Fishbowl SO number - When selected, sales orders will be created using the Magento order number as the Fishbowl sales order number.
- Assign Magento order number to Customer PO field - When selected, the Magento order number will be displayed in the Sales Order Customer PO field.
- Additional Magento information
- Combine line item discounts into flat rate order discount - When selected, line item discounts will be combined with order discounts for a single flat rate discount.
- Remove '#' prefix from Magento Cart order numbers - When selected, Magento Cart order numbers will not have a '#' prefix when imported into Fishbowl.
Order Status Mapping
- Use the table to assign Magento order statuses to Fishbowl order statuses. The Order Import task will only import orders from Magento 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 a 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 Magento Customer.
- Use the Magento Billing Address - Use the billing address from the Magento order instead of the address for the default customer.
- Use the Magento Shipping Address - Use the shipping address from the Magento order instead of the address for the default customer.
- Use the Magento Customer and Addresses - This option will import the addresses and customer from the Magento order instead of using a generic customer.
- Name - Select the Magento field that contains the customer name that should be imported into Fishbowl.
- Contact - Select the Magento field that contains the customer contact that should be imported into Fishbowl.
- Phone - Select the Magento field that contains the phone number that should be imported into Fishbowl.
- Email - Select the Magento field that contains the email address that should be imported into Fishbowl.
- Use same carrier and carrier service for all orders - When selected, all orders imported from Magento will use the selected carrier and carrier service. If this option is unchecked, carriers can be mapped between Fishbowl and Magento. Each mapping will also set the Sales Order Priority so that Fishbowl users can identify orders with express shipping that need to be picked and shipped quickly.
- Additional Magento information
- Click here to see which carriers Magento supports.
- Follow the instructions below to map carriers between Magento and Fishbowl.
- Log into Magento.
- Click the Stores menu on the left and then select Configuration.
- In the Sales section on the left, click Shipping Methods.
- Expand the desired shipping method and copy the Title and Method.
- Open the Carrier Mapping section on the Order Import tab and then click the New button.
- Enter the exact Title and Method into Fishbowl with the following format Title - Method. Below are several examples.
- Flat Rate - Fixed
- Free Shipping - Free
- United Parcel Service - Next Day Air
- United Parcel Service - Ground
- Select the corresponding Fishbowl Carrier Service and then click the Save button.
- Create payments in Fishbowl - When selected, payments from the Magento transaction will be shown in the Payment Viewer module.
- Use same payment method for all orders - When selected, all orders imported from Magento will use the selected payment method. If this option is unchecked, payment methods can be mapped between Fishbowl and Magento.
- Additional Magento information
- Follow the instructions below to map payment methods between Magento and Fishbowl.
- Log into Magento using Google Chrome.
- Click the Stores menu and then select Configuration.
- In the Sales section on the left, click Payment Methods.
- Right-click the header of the desired payment method and select Inspect.
- In the section highlighted by Chrome, copy the text between "payment_us_ and -head".
- Open the Payment Mapping section on the Order Import tab and then click the New button.
- Enter the Magento payment ID into Fishbowl. Below are several examples.
- Select the corresponding Fishbowl Payment Method and then click the Save button.
- Follow the instructions below to map payment methods between Magento and Fishbowl.
- Flat Rate Tax Item - When selected, the tax amount from the Magento order will appear on the Fishbowl sales order as a flat rate line item. The flat rate amount can be set to $0 in the Tax Rate module and then the correct total tax amount will be set when the order is imported from Magento.
- Additional Magento information
- Fishbowl Australia
- Taxes are set for each product using the Tax Code field in the Product module.
- Fishbowl Canada
- When using the Magento plugin with Fishbowl Canada, some additional tax options are available in the Taxes section of the Order Import tab.
- Use Customer Tax Code - When selected, orders imported from Magento with tax will use the customer assigned tax code in Fishbowl. The tax amount on the Fishbowl sales order will be calculated using the tax code assigned in Fishbowl. If no tax code is assigned to the customer, the order will fail to import. New customers created will use the default tax code assigned in Fishbowl.
- Use Customer Tax Code - When selected, orders imported from Magento with tax will use the associated product tax codes in Fishbowl.
- Use Tax By Province - When selected, orders imported from Magento with tax will use orders ship to province to determine the orders tax in Fishbowl.
- Tax rates can also be mapped using by the Magento product tax class ID as explained below. Magento 2 does not have its own module to manage tax classes, which makes it a little more difficult to find the ID.
- Open the Magento Admin Dashboard in Google Chrome.
- Click the Products menu on the left.
- Click Catalog and then click a product name.
- Right-click the Tax Class name and select Inspect. Then click the highlighted drop-down arrow to the left of the first highlighted line.
- Some additional lines will appear at the bottom. Copy the value after the tax class name.
- Click the Product Import tab of the Magento module and select Use product tax class mapping.
- Click the Add button, enter the id copied from Magento, and select the Fishbowl tax rate.
- Click the Save to close the dialog, and then click the Save button on the module toolbar.
- 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.
- Update Magento order status - When selected, Magento orders will be updated after the product(s) on the order have been shipped in Fishbowl. If left blank, Fishbowl will not update the status of the Magento order.
- Check Magento order status before fulfilling - When selected, the Magento order status will be checked prior to attempting to send fulfillment information. If the Magento order status has changed, no fulfillment information will be sent. This will increase the time required to complete the order fulfillment task.
- If a carrier on an order is not an approved carrier by Magento it will be set to Custom Value.
- For a list of accepted carriers please see Carriers.
- 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.
Select ONE of the following options:
- My products already exist in Fishbowl and Magento. They need to be linked together. - Select the fields that match between Magento products and Fishbowl products.
- My products only exist in my Magento store. They need to be imported into Fishbowl. - Map the fields that should be imported from Magento into Fishbowl. If the weight or size UOM isn't set in Magento, 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.
Select ANY of the following options:
- Create products in Magento- Map the fields that should be imported from Magento to Fishbowl. If the weight or size UOM isn't set in Magento, the default UOMs listed here will be used. 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 Magento. The product tree filter will still apply.
- Update linked products in Magento - This section has the same options as the Create products in Magento section above. After the initial product export, only the selected fields will be updated.
- Additional Magento information
- Include Product Image - When selected, the Fishbowl product image will be exported to Magento.
- Schedule - Select the Active checkbox to export inventory levels to Magento 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.
- Location Group - When selected, the Available For Sale inventory quantity will be used from this location group only. If left blank, the quantity from all location groups will be used.
- 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.
- SKU Mapping - Select if the Magento SKU matches the Fishbowl SKU or the Fishbowl Product. Inventory updating requires specifying the mapping between Magento SKU and the corresponding product field in Fishbowl.
- The attributes and IDs for orders and products can viewed or modified by clicking the Magento button at the top of the Sales Order module and the Product module.
- To view the scheduled tasks for the Magento 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 Magento.jar file in C:\Program Files\Fishbowl\plugins\ or \Applications\Fishbowl\plugins\ on a Mac. If there are two Magento versions, exit the Fishbowl Server and remove the older version on all client and server computers.
- Inventory sync uses the Magento 2 SKU instead of product id
- When syncing inventory the Magento 2 Product Name will update if changed in FB
- Product updates pushed from FB to Magento 2 update in the Magento database but don't necessarily display in the user interface correctly
- If updating products in FB, when you udpate the SKU and other fields in FB, only the SKU field with be updated in Magento 2
- If you are getting a Failed to run scheduled task error, it is likely due to upgrading from Magento 3.x to 4.x because of the layout change within the plugin. The following fix re-installs the plugin, which will require you to re-enter your store login information and import/export settings. Make sure to write that information down before proceeding with the following steps.
- Added ability to map the SO contact, phone, and email fields when using the "Use default customer" option on the Order Import task
- Added option to add a custom prefix to the shopping cart order number on order import
- If the create payment option is enabled and not payment data comes through with the order, the order now imports rather than fails
- 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
- Fixed bug on Order Import in the Carrier Mapping settings where editing the existing mappings, the Magento Carrier field comes up as "0"
- Fixed bug where inventory updates all linked products instead of the first linked product in the list in FB
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.8 first, update your plugins, and open them so the data migrator (described below) can run. Then update Fishbowl to the desired version.
- Channel data, such as product IDs, variant IDs, etc. will no longer be stored in custom fields. New database tables will be created for this purpose. Data from your custom fields will be automatically migrated to the database the first time you open the plugin after updating. Data will still remain in the custom fields for reference. The custom fields can be deactivated.
- New version number system to match Fishbowl.
- Schedule task now gives a count of the items that were imported/exported. Error message will list items that failed.
- Will now use the account specified on the payment type (instead of the default) during order import.
- Fixed a bug regarding taxes in the Fishbowl Canada version.
- Fishbowl product images can now be exported to Magento.
- Ability to select which date field the Last Sync Date references.
- Shipping tax now accounted for in Fishbowl Australia version.
- Bug Fixes
- Updated for compatibility with Fishbowl version 2018.7
- Product import tab redesign. Now includes an order sync for situations where all products exist in both Fishbowl and the webstore.
- Product export tab redesign. Export and update have been separated. It’s now possible to update item fields in the webstore without doing a full product export.
- Settings have been relocated. They are now in a new tab.
- Added the ability to map a carrier service to an order priority in Fishbowl.
- Fixed a bug that was causing settings to not save.
- Redesigned Customer section in Order Import tab. **Reconfiguration of the customer settings will be required when you update to this version or beyond.
- Addition of a new order status mapping table. You can now import multiple statuses at the same time.
- Changed background color on headers in the Order Import tab when using the dark theme for better visibility.
- Payment import now pulls in currency rate if “Use Currency Conversion” is turned on in Fishbowl.
- No longer updating product catalog visibility during product export.
- Added the ability to check if orders have been completed or cancelled before attempting to fulfill.
- Payment is not imported to Fishbowl for $0 orders.
- Payment terms are now pulled from the UI drop down instead of customer.
- Enhancement to the Order Import. If the carrier is empty on the data coming from the shopping cart, it will be defaulted to "Will Call" in Fishbowl.
- Enhancement to the Order Import. The customer phone number and email will attempt to be pulled from the shopping cart customer data. If that data isn't available on the customer, then it will attempt to be pulled from the billing address on the order. If that data isn't available in the billing address, then it will be pulled from the shipping address.
- Enhancement to Canada version of Fishbowl. Added an option in the Order Import panel to allow for prioritizing which tax is used on orders. If check box is checked, product tax will be used first. If no product tax has been assigned, then province tax will be used.
- Enhancement to allow payments to be applied to Sales Orders in an "Estimate" status when orders are imported.
- Added a checkbox option to either include or exclude the "#" prefix from Sales Order numbers.
- Updated our API call for Order Fulfillment to match the changes in Magento's documentation.
- Enhancement so "Miscellaneous Fees" come in on orders.
- Enhancement for international customers where the tax code moves between Fishbowl and their channel. Tax code must exist in Fishbowl for it to be used with this process.
- Fixed a bug where imported orders weren't being "Fulfilled" in Fishbowl when the "Fulfilled" status option is selected in the Order Import.
- Fixed a bug where Carrier information was importing into Fishbowl, but not the Carrier Service.
- Fixed a bug where the Customer name from the Ship To address wasn't being put in the "Name" field on the address.
- Improved the way Fishbowl looks at Class on orders.
- Improved plugin UI for Order Import
- Added a checkbox to Product Export to allow all products to be exported
- Improved error messages
- Enhancement to save a product's attribut id in a custom field so it can be sent up to the channel. Applicable to new products being imported into Fishbowl. For existing products, custom field must manually be filled in.
- Fixed a bug with payment mapping
- Fixed a bug with the Customer selection on Order Import
- Fixed a bug where orders with kits weren't being fulfilled
- Fixed a bug where discounts were being duplicated on orders
- Fixed a bug where incorrect address were being applied to orders for Default customers
- Improved the process for customer creation in Fishbowl. Fishbowl now looks at the Last Name, Zip Code, and Email Address from the Billing Address on orders when creating customers. If all fields match, the order is applied to that customer in Fishbowl. If they don't match, a new customer is created.
- Fixed a bug with the way flat rate discounts were being added to orders
- Fixed a bug with tracking numbers being sent to incorrect orders in shopping cart.
- Fixed a bug with order import not calculating line item percentage-based discounts correctly.
- Product Import and Product Export required field mappings are not editable.
- Fixed a bug with the refresh button.
- Fixed a bug with sales order line item type associated with kits.
- Fixed a bug in the Canada version where non-inventory items weren't being taxed by province.
- Fixed issue with customers getting a "number format exception" error.
- Fixed issue with order import where discounts weren't being applied correctly in Fishbowl.
- Interim Release
- Fixed authentication issue for customers using SSL
- Fixed bug when validating carts purchased
- Updated label in connection settings from "API Key" to "Password" to add clarity
- Compatible with Magento version 2.1.6