Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Thank you for purchasing our extension. If you have any questions that are beyond the scope of this document, do not hesitate to leave us an email via our email address belowsupport@magenest.com

Created: 12/06/2017 | By: Magenest | Support Portal: http://servicedesk.izysync.com/servicedesk/customer/portal/17 

Table of Contents
 
outlinetrue
stylenone


...

Introduction

Image Removed

Magento 2 Quickbooks Online Integration  is an extension for Magento 2 by Magenest, which provides provides a QuickBooks Online integrated management solution for merchants using Magento 2. 

Extension's page: Quickbooks Online IntegrationImage Added

Features

  • Allow synchronizing and updating Customers from Magento 2 store to QuickBooks Online both manually and automatically.Allow synchronizing and updating Customers from QuickBooks Online to Magento 2 store.   
  • Allow synchronizing and updating Products from Magento 2 store to QuickBooks Online both manually and automatically. 
  • Allow synchronizing and updating Products from QuickBooks Online to Magento 2 store.  Allow synchronizing Orders from Magento 2 store to QuickBooks Online both manually and automatically. 
  • Allow synchronizing Orders from QuickBooks Online to Magento 2 store. Allow synchronizing Invoices from Magento 2 store to QuickBooks Online both manually and automatically.
  • Allow synchronizing Credit Memos from Magento 2 store to QuickBooks Online both manually and automatically.
  • Allow mapping payment methods with deposit accounts.
  • Allow admin to view the log to see what is synchronized between two apps. 
  • Allow admin to manage the sync queue to see what will be synchronized next. 

System Requirements

 Your store should be running on Magento 2 Community Edition version 2.01.x or , 2.12.x, 2.3.x CE & EE

 

...

Connect with QuickBooks Online

First of all, you need to integrate Magento 2 store with your QuickBooks Online account.  
At backend back-end of Magento 2 store, click on QuickBooks Online Integration > Configuration: 

 

Image AddedImage Removed

The page will appear as follow:  

 


Image Added


Please follow the step in the video here to set up the environment and connection:

https://www.useloom.com/share/ed648f8241974c6cbd95a27766927a73

Widget Connector
width800
urlhttps://www.useloom.com/share/ed648f8241974c6cbd95a27766927a73

Image Removed

 

Click on Connect to QuickBooks button. A new page is open. Log in if you already have an account to authenticate users before you can exchange data with it.  

 

Image Removed

 

Or click on Sign up now hyperlink to create a new one: 

 

Image Removed

 

After login QuickBooks Online account successfully, click on Authorize button to finish connection process. 

 

Image Removed

 


When connecting successfully, the backend page will be displayed as below. Click on Save Config button before continuing. This will help you avoid making the error.      

 

Image Removed

 


 Image Added



Then, admins need to navigate to the Configure the Accounts Type in QuickBooks Online section and expand it.

Admins will need to set three account types (Asset Account Settings, Expense Account Settings and Income Account Settings) by clicking on the Sync Fetch All Accounts button button.

Then, the data accounts will be synced automatically.fetched. If accounts are not automatically selected, admin need to select accounts from the drop-downs:

- Asset Account: an account with ‘Other Current Asset’ type

- Expense Account: an account with ‘Cost of Goods Sold’ type

- Income Account: an account with ‘Income’ type

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            

Image Removed

 

 

Image Added


(warning) After changing company, you have to sync accounts, tax codes and payment methods again


Finally, admins go to Prefix Settings and Tax Shipping with and Country section Settings section and expand them.

(minus) Prefix Settings: In order to make sure that the synchronization process works correctly, admins need to  admin should set a prefix for each Sales Receipt, Invoice and Credit Memo, to differentiate between transactions synced from Magento and created on QBO. On QBO Company Settings -> Sales -> Use Custom Transaction number should be OFF.

Example: If admins enter "InvoiceTest" at the Invoice field, the invoice will be synced from Magento to QuickBooks Online with the format InvoiceTestXXXXXXXXXXX.

Note
Please note that the maximum number of characters allowed in this field is 12 ones.

(minus) Tax Shipping with and Country Settings: Admins need to choose their country and set a tax shipping type. 

Note

There are two fields that admins need to consider:

(plus) Country: Choose United Kingdom, Canada, France, Australia, Global or Other Country.

(plus) Tax With Shipping: Choose

Please note that if you choose the United Kiingdom at Countryyour Country Setting is not Other, it is required to have a shipping tax in QuickBooks Online. So, admins need to set a tax type for the shipping fee.

If admins want to choose a free shipping tax, they only need to choose the tax named Tax Shipping Zero created by the extension.

If admins want to choose a shipping tax (no free), admins need to create a tax rule before. Then, it will be showed shown at drop-down options and admins will choose this tax.

 
Image Added
 
Image Removed
 (minus) Debug Mode:


Note

(plus) Enable this option will log all requests to QuickBooks Online and their responses to [site root]/var/log/qbonline/debug.log. May contains sensitive data.

(plus) Debug Log Viewer: Enable this to view Quickbooks connection log directly from the backend menu.



How to synchronize data from Magento 2 store to QuickBooks Online 

Synchronization Settings

Admins are able to decide whether to synchronize data in Synchronization Settings tab: Customers, Products (Items in QuickBooks Online), Sale ReceiptOrders, Invoices, and Credit Memos. 
Also, admins can choose the way to synchronize data either Immediately mode or Cron Job mode.
   


Image Modified

 


Setting Up Field Mapping 

  • Mapping Payment Methods: 

At backend of Quickbooks QuickBooks Online Integration extension, navigate to QuickBooks Online > Payment Method click on Synchronize button to automatically connect payment methods between Magento 2 backend and Quickbooks QuickBooks page.  

 

Image Modified

 


On QuickBooks page, click on gearwheel simple at the top right then choose All Lists > Payment Methods: 


Image Added

 Image Removed

  • Mapping Tax: 

The system has created a Mapping Tax tab that allows you to mapping tax from your Magento 2 store to QuickBooks Online account. First, admins need to click on Add All Tax Code button to add all tax code of your Magento 2 store to Mapping Tax page. Then, you can use Synchronize button to finish this mapping.    

 


Image Modified 


Note that your Magento 2 store need to have Tax Rules before creating mapping tax: 

 


Image Modified

 


Process Synchronization   

If the App mode is Cron Job, Queue page is the place which the created, updated data is stored in and are waiting to be synced. If  If you want to sync data right away, you can press Sync Now button. You  You can decide whether to synchronize any items on List Queue page by remove selected data from the grid

Admin can add all orders, invoices and memos to queue on only add transactions based on their creation date.

 

Note

Please note that synchronizing will take some time, the length of time depends on the size of the database. 

...

 

 Image Added


When the progress is done, go to QuickBooks Online > View History Logs and check what is synchronized in the grid.

  • If the data is synchronized right, the Status will be SUCCESS and the Message will be "OK"
  • If there's a problem during process synchronization, the status will be FAILED and the message tab will show the error message like the record below. 

 


Image Modified

...


...


Main Functions

 

How to synchronizing data from QuickBooks Online to Magento 2 store 

Update the existing database

Synchronizing items from QuickBooks Online account to Magento 2 store can help admins update the existing database. This feature is apply for data connected from Magento 2 store and QuickBooks Online before.     

  • Products: Please follow these steps below: 

Please go to QuickBooks Online Integration > Product ( Update) and follow these steps below:  

(1) Click on Submit button to update data from QuickBooks Online account into Update Product page. 

(2) Click on Save button to finish updating. 

 

Image Removed

 

  • Customers: 

It is the same with updating products. 

(1) First, you need to click on Submit button to pick customers from QuickBooks Online account for Update Customer page of Magento 2 site. 

(2) Then click on Save button to finish updating.  

 

Image Removed

Create a new database

Not only allow updating data, but our QuickBooks Online Integration extension also helps you to create a new product, customer, and order on Magento 2 store getting data from QuickBooks Online account. 

  • Products:  (tick) Allow admins to sync customer data which only has in QuickBooks Online to Magento 2.

Go to QuickBooks Online Integration > Product ( Create New) and go on with these steps: 

(1) Click on Add All New Products button to add products from your QuickBooks Online account to List Product page. 

(2) Click on Create Products button to finish creating. 

 

Image Removed

 

Admins can view and edit products with basic fields as Name, Type Product, Store View, SKU, Price, Quantity, etc... before creating a new one on Magento 2 store:  

 

Image Removed

 

...

It is very similar to create customers: 

(plus) First, please click on Add All New Customers button to add all customers to List Customer page.

 

...

  • When a new account is registered in front-end of Magento 2 or an existed customer is updated, QuickBooks Online Integration extension will allow synchronizing this record automatically to 
    QuickBooks Online.


Image Added



Image Added



Image Added


  • When admins create or update information of products in Magento 2 store, data will be automatically synced into QuickBooks Online Items. 


Image Added

 

Image Added


  • When an order is created in Magento 2, this order will be automatically synced in QuickBooks Online as an open invoice


Image Added


Image Added


  • When an invoice is created in Magento 2, this invoice will be automatically synced in QuickBooks Online as a Payment attached to the open invoice to change invoice status to Paid.

 

Image Added


Image Added


  • When a credit-memos is created in Magento 2, this credit-memos will be automatically synced in QuickBooks Online account. 


Image Added


Image Added


Map Payment methods with deposit accounts

 

  • From QuickBooks Online Synchronization, select Fetch All Accounts.
    Image Added

 

 

(warning) Note: if the list of accounts has changed on QuickBooks Online, admin have to use this button again for updating.

 
  • From QuickBooks Online, go to Payment Methods Mapping, then press Synchronize.

  • Select any payment method, choose a deposit account from the dropdown list, then Save.

Image Added

 

(warning) Note: Only accounts with type Current Assets or Cash and cash equivalents can be used as a deposit account. Invoices with payment methods not linked to a deposit account will be synced to Undeposited Funds/Uncategorized Assets account by default.

QuickBooks Online Default Synchronization Fields


Customer


Magento Customer

QBO Customer

Email

Email

First name

Given Name

Last name

Family Name

ID

Suffix

Telephone

Phone

Default Billing Address

Bill Address

Default Shipping Address

Shipping Address

First name + Last name + ID

Display Name (unique)

qbo_id

ID


Product


Magento Product

QBO Item

Name

Name, PurchaseDesc, FullyQualifiedName

Short Description

Description

Price

Unit Price

Tax Enable

Taxable

Sku

Sku

Qty

Qty On Hand

Created At

Inventory Start Date


(warning) Qty On Hand and Inventory Start Date requires QuickBooks Online Plus plan or above. QBO Item name depends on setting on Magento (use Product name/use product SKU/use both name and SKU )

 

Order


Magento 2 Order

QBO Open Invoice

Increment ID

Document Number

Customer

CustomerRef

Items

Line Items

Grand Total

Total Amount

Customer Email

Billing Address

Tax

TnxTaxDetail -> Total Tax

Created At

TnxDate

Product Qty

Quantity each product in order

Price Each Product

Rate

Total amount each Product

Amount

Discount Amount

Discount

Shipping Fee

Shipping

Billing address

Billing address

Shipping Address

Shipping Address


Invoice


Magento Invoice

QBO Payment

Method QBO ID

Payment Method Ref

Created At

TxnDate

Tax Amount

TxnTaxDetail -> Total Tax

Customer Reference

CustomerRef

Order ID

Linked Invoice ID

Grand Total

Total Amount

Customer Email

Billing Email Address


Credit Memo


Magento Credit Memo

QBO Credit Memo

Increment ID

Document Number

Created At

TxnDate

Tax Amount

TxnTaxDetail -> Total Tax

CustomerRef

Customer Reference

Items

Line Items

Item qty

Qty

Product price

Amount

Amount product

Total

Shipping Fee

Shipping

Discount Amount

Discount

Grand Total

Total Amount

Customer Email

Billing Email Address



Common Issues

The redirect_uri query parameter value is invalid.

(plus) Cause: the redirect URI on the Intuit app is different from the URI on Magento installation.

(plus) Reason: the redirect URI shown on Magento QuickBooks Online config page is [website base URL]+’qbonline/connection/success’. The real redirect URI might be different due to Magento settings or web server settings.

(plus) How to solve: find the real redirect URI of Magento site:

    • Copy the redirect URI and open this link on new browser tab.

    • Copy the final URL in the address bar (ends in ‘qbonline/connection/index/’).

    • Change the final URL to end with ‘qbonline/connection/success’ and use the modified address as redirect URI on Intuit App.

    • Save the Intuit app then reconnect.

Make sure all your transactions have a tax rate before you save

(plus) Cause: QuickBooks tax is not properly set on Magento.

(plus) Reason: some countries i.e. UK or Canada requires all sale items to have a tax code, including tax-free items, which needs to have a 0% rate attached.

(plus) How to solve: verify the following steps are performed on Magento backend:

    • On Tax Code Mapping menu, choose ‘Add All Tax Codes’ then ‘Synchronize’ . Synced tax rates will have a ‘Tax ID in QBO’ value. If there are rates without value after syncing, please check History Logs menu for the cause

    • On QuickBooks Online config page, on Tax and Country Settings, select your country. If Free Tax and Tax With Shipping option shows up, select the appropriate rate for them (if your site doesn’t have a 0% rate, our extension creates a tax_zero_qb 0% rate which you can choose instead)

    • Save Config and resync failed transactions

Invalid header line detected’ for all requests to QuickBooks, or Config page is blank'

(plus) Cause: Magento 2 doesn’t intercept responses from QuickBooks correctly.

(plus) Reason: QuickBooks have started sending responses in HTTP/2 instead of HTTP/1.1 . Some versions of Magento 2 doesn’t read HTTP/2 responses correctly.

(plus) How to solve: patch the bug with reading HTTP/2 responses.

    • Backup the file at [site root]/vendor/magento/zendframework1/library/Zend/Http/Response.php

    • Open this file with a text editor and find the following 2 lines: 

      if (! preg_match('|^\d\.\d$|', $version) ) {

(around line 185) and change it to 

 if (! preg_match('|^\d(\.\d)?$|', $version)) {

 if ($index === 0 && preg_match('#^HTTP/\d+(?:\.\d+) [1-5]\d+#', $line)) {

(around line 517) and change it to

if ($index === 0 && preg_match('#^HTTP/\d+(?:\.\d+|) [1-5]\d+#', $line)) {

  • Save the file, clear cache and try again.

In order to be able to sync customer data from QuickBooks Online to Magento 2, each customer is required to have three following fields, include:

(minus) First Name

(minus) Last Name

...

Note

After the data of new customers on QuickBooks Online is displayed at the List Customer page, the extension will allow admins to make any changes before they are really synced to Magento 2.  

 

Image Removed

 

(plus) Then click on Create Customer button to finish creating. 

 

Image Removed

 

Before creating any customers, admins can view and edit their information in three tabs: Account Information, Billing Addresses, and Shipping Address: 

  • Sales Receipt: 

Follow the two steps below to create a new sale receipt: 

(1) Click on Sync All New SalesReceipts button to synchronize salesreceipts from your QuickBooks Online account to List Sales Receipt page 

(2) Click on Create SalesReceipt button to finish creating. 

 

Image Removed

 

For SalesReceipt, admins can only view it before click on Create Sales Receipt button. 

 

Image Removed

 

 

Main Functions

  • When a new account is registered in frontend of Magento 2 or an existed customer is updated, Quickbooks Online Integration extension will allow synchronizing this record automatically to 
    QuickBooks Online and vice versa. 

 

Image Removed

 

 

Image Removed

 

 

Image Removed

 

  • When admins create or update information of products in Magento 2 store, data will be automatically synced into QuickBooks Online Items and vice versa. 

 

Image Removed

Image Removed

 

  • When an order is created in Magento 2, this order will be automatically synced in QuickBooks Online account and vice versa. 

 

Image Removed

 

Image Removed

 

  • When an invoice is created in Magento 2, this invoice will be automatically synced in QuickBooks Online account. 

 

Image Removed

 

Image Removed

 

  • When a credit-memos is created in Magento 2, this credit-memos will be automatically synced in QuickBooks Online account. 

 

Image Removed

 

Image Removed

...


...

Update

  • When a new update is available, we will provide you with a new package containing our updated extension.
  • You will have to delete the module directory and repeat the installing steps above.
  • Flush the config cache. Your store and newly installed module should be working as expected.

 


...

Support

  • We will reply to support requests after within 2 business days.
  • We will offer lifetime free update and 6 months free support for all of our paid products. Support includes answering questions related to our products, bug/error fixing to make sure our products fit well in your site exactly like our demo.
  • Support Support DOES NOT include include other series such services such as customizing our products, installation and uninstallation service.

 

 


...


Once again, thank you for purchasing our extension. If you have any questions relating to this extension, please do not hesitate to contact us for support.Magenest