Shopify

From Fishbowl
Jump to: navigation, search

Icon.Shopify.png The Shopify module, located in the Integrations group, is an add-on module that can be installed from the Small.Plugin.png Plugin module. After installing the plugin, a new module is added that integrates with one or more Shopify shopping carts.

Shopify.png

Video

The documentation on this page is for the most recent version of the Shopify plugin. To update, see Update Fishbowl.

Install

  1. In any Fishbowl Client, open the Small.Plugin.png Plugin module, located in the Integrations group.
  2. Select the Shopify plugin and click Install Now.
  3. Completely close all Fishbowl Clients.
  4. Exit the Fishbowl Server by right-clicking the Fishbowl Server tray icon and selecting Exit.
  5. After re-opening the Fishbowl Server, the admin user can access the Small.Shopify.png Shopify module from any Fishbowl Client by opening the Integrations module group.
  6. To grant access to additional users, open the Small.User Group.png User Group module and assign the Shopify-View right to the appropriate groups as explained here.

Setup

Follow the instructions below to configure the Shopify API and generate an API key and password.

  1. Log into the Shopify store, for example https://storename.myshopify.com/admin
  2. Click Apps and then click Manage Private Apps at the bottom.
  3. Click Generate API credentials and then enter an app title.
    Shopify Setup.png
  4. In the Permissions section, select Read and write for all of the permissions except Disputes, Applications, and Analytics and then click Save app.
  5. Copy the API Key and the Password from the Authentication section of the website and paste them into the Small.Shopify.png Shopify module.
    Shopify credentials.png
  6. Enter the Shopify Store URL into the Small.Shopify.png Shopify module, for example https://storename.myshopify.com
  7. Click the Test Connection button in the Small.Shopify.png Shopify module to verify that the connection is valid and then click Save.

Multiple Shopify carts can be configured by clicking the New Button.png New button, which will add another Shopify Store tab.

TABS

Shopping cart plugins in Fishbowl have a standardized layout. The images below apply to all shopping carts. When Small.Shopify.png Shopify has additional options, those options will be noted at the bottom of each section.

Order Import

Cart Order Import.png
  • Schedule - Select the Checked.png Active checkbox to import orders on a set schedule. Click the Run task Button.png Run task button to run the scheduled task right now.


Order
Cart Order.png
  • Additional order data will be imported and displayed on the Details tab of the Small.Sales Order.png Sales Order module
  • 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 Shopify. Can only specify a flat rate discount. The flat rate discount can be set to $0 in the Small.Discount.png Discount module and then the correct discount amount will be set when the order is imported from Shopify.
  • Use Shopify order number as Fishbowl SO number - When selected, sales orders will be created using the Shopify order number as the Fishbowl sales order number. The Shopify order number will always be stored on the Custom Field tab of the Small.Sales Order.png Sales Order module.
  • Assign Shopify order number to Customer PO field - When selected, the Shopify order number will be displayed in the Sales Order Customer PO field.
Small.Shopify.png Additional Shopify options
  • 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.
Order Status Mapping
Cart Order Status Mapping.png
Use the table to assign Shopify order statuses to Fishbowl order statuses. The Order Import task will only import orders from Shopify 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.
Customer
Cart Customer.png
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 Name field. This could be used with a generic Fishbowl customer such as Shopify customer.
  • Use order Bill To address - Use the Bill To address from the Shopify order instead of the Fishbowl address for the default/generic customer.
  • Use order Ship To address - Use the Ship To address from the Shopify order instead of the Fishbowl address for the default/generic customer.
  • Use order customer - This option will import the Shopify customer instead of using a generic customer.
  • Customer Name - Select the Shopify field that contains that customer name that should be imported to Fishbowl.
  • Customer Contact - Select the Shopify field that contains that customer contact that should be imported to Fishbowl.
  • Phone Number - Select the Shopify field that contains that phone number that should be imported to Fishbowl.
  • Email Address - Select the Shopify field that contains that email address that should be imported to Fishbowl.

Carrier Mapping
Cart Carrier Mapping.png
  • Use same carrier and carrier service for all orders - When selected, all orders imported from Shopify will use the selected carrier and carrier service. If this option is unchecked, carriers can be mapped between Fishbowl and Shopify.
Small.Shopify.png Additional Shopify options
Click here to see which carriers Shopify supports.
Follow the instructions below to map carriers between Shopify and Fishbowl.
  1. Log into Shopify.
  2. Click the Settings menu on the left and then select Shipping.
  3. Copy the carrier and service information.
  4. Open the Carrier Mapping section on the Order Import tab and then click the New Icon Button.png New button.
    Shopify carrier mapping done.png
  5. Enter the Shopify carrier and service information into Fishbowl.
    Shopify carrier mapping.png
  6. Select the corresponding Fishbowl Carrier Service and then click the Save button.
Payment Mapping
Cart Payment Mapping.png
  • Create payments in Fishbowl - When selected, payments from the Shopify transaction will be shown in the Small.Payment Viewer.png Payment Viewer module.
  • Use same payment method for all orders - When selected, all orders imported from Shopify will use the selected payment method. If this option is unchecked, payment methods can be mapped between Fishbowl and Shopify.
Small.Shopify.png Additional Shopify options
Follow the instructions below to map payment methods between Shopify and Fishbowl.
  1. Log into Shopify.
  2. Click the Settings menu on the left and then select Payments.
  3. Copy the exact payment method name from the payment methods section.
    Shopify payment methods.png
  4. Open the Payment Mapping section on the Order Import tab and then click the New Icon Button.png New button.
    Shopify payment mapping done.png
  5. Paste the Shopify payment method name into Fishbowl.
    Shopify payment mapping.png
    Other possible examples:
    • PayPal Express Checkout
    • Shopify Payments
    • Amazon Pay
    • Bread
    • Cash on Delivery (COD)
    • Bank Deposit
    • Money Order
  6. Select the corresponding Fishbowl Payment Method and then click the Save button.
Taxes
Cart Taxes.png
  • Flat Rate Tax Item - When selected, the tax amount from the Shopify 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 Small.Tax Rate.png Tax Rate module and then the correct total tax amount will be set when the order is imported from Shopify.

Order Fulfillment

Cart Order Fulfillment.png
  • Schedule - Select the Checked.png Active checkbox to export orders on a set schedule. Click the Run task Button.png Run task button to run the scheduled task right now.
  • Update Shopify order status - When selected, Shopify 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 Shopify order.

Small.Shopify.png Additional Shopify options

  • Check Shopify order status before fulfilling - When selected, the Shopify order status will be checked prior to attempting to send fulfillment information. If the Shopify 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.

Product Import

Cart Product Import.png

When pulling products to Fishbowl, the product sync should usually be scheduled to run before the order import. This will avoid any errors caused by new products that need to be imported before the order can be created in Fishbowl.

  • Schedule - Select the Checked.png Active checkbox to import products on a set schedule. Click the Run task Button.png Run task button to run the scheduled task right now.
  • Field Mapping - Click the appropriate checkbox for linking products, and then selecting the product fields that match between Fishbowl and Shopify.
  • Weight UOM - If the weight UOM isn't set in Shopify, the default UOM listed here will be used.
  • Size UOM - If the size UOM isn't set in Shopify, the default UOM listed here will be used.


Product Export

Cart Product Export.png
  • Schedule - Select the Checked.png Active checkbox to export products on a set schedule. Click the Run task Button.png Run task button to run the scheduled task right now.
  • Field Mapping - Use the icon buttons on the right side of the table to edit the field mappings. Click the Add Icon Button.png Add button to see all available fields. After a product has been pushed to Shopify, any changes made to the product in Fishbowl will update the product in Shopify.
  • Weight UOM - If the weight UOM isn't set in Shopify, the default UOM listed here will be used.
  • Size UOM - If the size UOM isn't set in Shopify, the default UOM listed here 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.
  • Export All Products - Selecting this option will ignore the last sync date and attempt to push all of the Fishbowl products to Shopify. The product tree filter in this panel will still apply.
  • Update Settings - This section has similar options to the Create Settings. After the initial product export, only the selected fields will be updated.


Inventory Update

Cart Inventory Update.png
  • Schedule - Select the Checked.png Active checkbox to export inventory levels to Shopify on a set schedule. Click the Run task Button.png Run task button to run the scheduled task right now.
  • 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.

POS Import

Cart POS Import.png
  • The POS Import tab has essentially the same settings as the Product Import tab but is used to import point of sale orders from Shopify.

Troubleshooting

  • To view the scheduled tasks for the cart, open the Small.Schedule.png Schedule module.
  • A scheduled task can be run manually by double-clicking the task.
  • Enter an email address in the Small.Schedule.png Schedule module to receive error notifications.
  • To view the history of a schedule task, including the result/error, click the History Icon Button.png History button in the Small.Schedule.png Schedule module.
  • More details about recent errors can be viewed by opening the Small.Data.png Data module and clicking the Server Log Button.png Server Log button.
  • Check for multiple versions of the plugin .jar file in C:\Program Files\Fishbowl\plugins\ or \Applications\Fishbowl\plugins\ on a Mac. If there are two versions of the same plugin, exit the Fishbowl Server and remove the older version on all client and server computers.
  • If you are getting a Failed to run scheduled task error, it is likely due to upgrading from Shopify 2.x to 3.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.
    First, open the Plugin module and click the Uninstall button for the Shopify plugin. Then restart the Fishbowl server. Next, open the Plugin module, click the Install button for the Shopify plugin, and then restart the Fishbowl server again. Finally, re-enter the store login information and the import/export settings and then click the Save button.
  • When running the order import sync, an error may displayed that states Could not import order, product X does not exist. To verify that the product in Fishbowl is linked to the correct product in Shopify, complete the following steps.
  1. Using a web browser, log into the Shopify admin page and navigate to the product listed in the error message.
  2. Right-click anywhere on the page and click View page source or View source. This will open up the page source code in another tab.
  3. Press ctrl + f to search within the page.
  4. In the search bar, type variant_id
  5. Confirm that the variant ID found in the page source is the same number listed in the Shopify Product ID field of the Custom tab tab of the Small.Product.png Product module.
  6. If the numbers do not match, copy the variant ID from Shopify and paste it into the Shopify Product ID field. Then click the Save button in the Fishbowl Small.Product.png Product module.
  7. In the Small.Shopify.png Shopify module, run the Order Import sync again.

Release Notes

3.30 - 7/12/2018 - Fishbowl 2018.7
  • Bug Fixes
  • Updated for compatibility with Fishbowl version 2018.7
3.20 – 6/14/2018 - Fishbowl 2018.6
  • Compatibility with Shopify’s new multi-location feature, which includes the addition of a location mapping table.
  • 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.
3.19.2 – 5/15/2018 - Fishbowl 2018.5
  • Fixed a bug that was causing settings to not save.
3.19 – 5/11/2018 - Fishbowl 2018.5
  • Redesigned Customer section in Order Import tab. **Reconfiguration of the customer settings will be required when you update to this version or beyond.
  • Added fulfillment statuses to the status mapping table in the Order Import tab
3.18 - 4/12/2018 - Fishbowl 2018.4
  • Addition of a new order status mapping table. You can now import multiple statuses at the same time.
3.17 - 3/8/2018 - Fishbowl 2018.3
  • 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.
3.16 - 1/31/2018 - Fishbowl 2018.1
  • Laid the groundwork for a bug fix regarding dates when fulfilling orders with only service type items.
  • 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.
3.13 - 1/12/2018 - Fishbowl 2017.13
  • 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.
3.12 - 12/8/2017 - Fishbowl 2017.11
  • Enhancement to allow payments to be applied to Sales Orders in an "Estimate" status when orders are imported.
  • Fixed a bug where already fulfilled orders were causing errors.
  • Fixed a bug where orders were erroring out if they have a Carrier on the order that isn't supported by Shopify. Now, if a Carrier on an order in Fishbowl isn't supported by Shopify, the Carrier is set to "None" when the order is exported to Shopify. To see which carriers Shopify supports, click this link.
  • Any "Stamps.com" carrier in Fishbowl will now be changed to "USPS" when the order is exported to Shopify.
3.11 - 11/21/2017 - Fishbowl 2017.11
  • 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.
3.10 - 11/16/2017 - Fishbowl 2017.11
  • 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
  • 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
3.9 - 10/30/2017 - Fishbowl 2017.10
  • 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
  • Improved POS Import functionality
  • Updated POS Import layout
  • Fixed a bug with payment mapping
  • Custom field added to orders for housing the Shopify order number
3.8 - 10/5/2017 - Fishbowl 2017.9
  • 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 product variants not importing or exporting correctly.
  • Fixed several bugs with the POS Import looking at the incorrect order status, payment mappings not being created, and the payment mapping checkbox not working.
  • Fixed a bug with order fulfillment.
  • Enhanced the Order Import to allow for orders to use a predetermined prefix from Shopify.
3.7 - 9/12/2017 - Fishbowl 2017.7
  • Fixed order-level and line item discounts.
  • 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.
3.6 - 9/7/2017 - Fishbowl 2017.7
  • Fixed issue with customers getting a "number format exception" error.
3.5 - 9/6/2017 - Fishbowl 2017.7
  • Fixed issue with order import where discounts weren't being applied correctly in Fishbowl.
3.2 - 8/31/2017 - Fishbowl 2017.7
  • Interim Release
3.1 - 8/29/2017 - Fishbowl 2017.7
  • Interim Release
3.0 - 8/25/2017 - Fishbowl 2017.7
  • New layout and mapping options
2.14 - 8/7/2017 - Fishbowl 2017.6
  • Improved functionality for importing orders containing kits
  • Fixed order import to already used the FB assigned product type rather than set all to "sale" type
2.13 - 7/13/2017 - Fishbowl 2017.6
  • Compatibility fixes for 2017.6 version of Fishbowl
  • Fixed issue calculating and using the correct tax codes for discount items in AU version
2.12 - 6/21/2017 - Fishbowl 2017.5
  • Fixed bug with nested product tree and syncing errors
  • Fixed issue for Australia with the shipping item calculating tax correctly
2.11 - 6/15/2017 - Fishbowl 2017.4
  • Fixed bug with POS orders failing when importing orders with kit items
  • Fixed incorrect tool tips on the product panel
  • Fixed inventory sync to also account for allocated items
  • Improved product sync to include kit items
  • Improved inventory syncing to include updating kit quantities that have non-inventory items
  • Improved speed of syncs
  • Fixed bug for AU version of Fishbowl - shipping item(s) tax code set incorrectly
2.10 - 4/13/2017 - Fishbowl 2017.3
  • Compatibility fixes for 2017.3 version of Fishbowl
  • Fixed tax functionality for Australia and Canada versions of Fishbowl
2.9 - 4/5/2017 - Fishbowl 2017.2
  • Canada and Australian version tax functionality fixes and enhancements
2.6 - 3/15/2017 - Fishbowl 2017.2
  • Compatibility fixes for Fishbowl 2017.2
2.5 - 3/8/2017 - Fishbowl 2017.1
  • Auto-Archived POS orders are now pulled into Fishbowl for fulfillment
  • Changed the order number pulled from Shopify to the "order_number" field when populating in the FB SO
  • Updated product mapping options with more flexibility
  • Added option to import orders without a payment
  • Orders with Kits now export and update the order status correctly in Shopify
  • Fixed Shopify POS order import for hyphenated orders
  • Orders with missing addresses on order import now provide a user-friendly error message
  • Added ability to send fulfillment status to Shopify if dropship items are on the FB SO
  • Moved the line item id to custom line item field instead of the line item note field
  • Order notes from Shopify now come into the SO note field
  • Product weights are now synced
  • Added ability for product fields to update after the initial sync is complete
  • Kit inventory quantities now update with the correct quantities
  • Shopify Order email maps to the FB SO email field
  • Kits now import correctly to FB SO
  • Fixed last sync date issue to set the sync date from the time the task begins, not when it ends.
  • Added ability to set the last sync date
2.4 - 3/15/2017 - Fishbowl 2016.14
  • Issue: Manually linking a kit doesn't pull the kit product number, it pulls the title or SKU based on settings.
  • Resolution: The kit product number is now used for linking.
2.5 - 10/13/2016
  • Issue: Orders that are already fulfilled in Shopify when Fishbowl attempts to update the order display an ambiguous error message about URL ID's.
  • Resolution: Error message now clearly indicates the order number / order ID.
2.5 - 9/8/2016
  • Issue: Bad error message when weight UOM field isn't populated.
  • Resolution: Defaults to lbs when not set.
  • Issue: Weight field lists as required but is not actually required.
  • Resolution: Field is now required.
2.3 - 8/11/2016
  • Issue: Order address is only pulling the first line, not any secondary line address information.
  • Resolution: Address now pulls both Address line 1 and line 2.
  • Issue: Product sync doesn't correctly pull default weight UOM or product weight.
  • Resolution: weight and weight UOM are now set correctly during product sync.
2.1 - 6/9/2016
  • Issue: Pulling products from Shopify only syncs a portion of the products, the last 250 are left off.
  • Resolution: Product pull now includes all products.
  • Issue: Tooltip for mapping products doesn't fully explain the mapping process.
  • Resolution: Tooltip has been updated to properly explain mapping.