Versions Compared

Key

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

...

 

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

Please refer to this document for common issues https://docs.google.com/document/d/1ArRmDr7xtY_AV3P7u--qK4AyhASkCrgjrYF2aD42r48/edit?usp=sharing. It may help you solve the problems

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

(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.

 

...

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.

...