QuickBooks Online mapping specification

Overview

This document provides guidelines for data mapping configuration from a commerce platform to QuickBooks Online (QBO).

In Codat's Sync Flow UI, the data types are grouped under the three main features:

The document contains information about the account types supported by each feature and demonstrates the way that the data displays in the accounting platform after a successful synchronization via Sync for Commerce.

📘

QBO account types

In this document, we will be referencing the following account types in QBO:

  • Income,
  • Liability,
  • Expense, and
  • Asset.

Sales

The Sales feature represents sales made in course of a company’s normal business activities during a set period of time.

To set up Sales using the Codat Sync for Commerce UI flow, a merchant needs to complete the following steps:

  1. Select the accounts for Sales, Refunds, Gratuity, and Prepaid features from the respective dropdown lists. The lists display all the applicable accounts available on the merchant’s QBO accounting platform:
Sync UI Sales Accounts screen where you can select the accounts to use to map the commerce data.Sync UI Sales Accounts screen where you can select the accounts to use to map the commerce data.

Sync UI Sales Accounts screen where you can select the accounts to use to map the commerce data.

📘

Features display

Codat Sync for Commerce UI displays all the available features by default. However, the Sync for Commerce API allows you to disable any unsupported features in your own UI. For example, you can disable a particular payment type.

  1. Select the tax rates that they wish to apply to the data they are sending:
Sync UI Sales Tax rates screen where you can select the applicable tax rates.Sync UI Sales Tax rates screen where you can select the applicable tax rates.

Sync UI Sales Tax rates screen where you can select the applicable tax rates.

  1. Select the preferred status for invoices representing the Sales data within their accounting platform (Submitted or Draft).
  2. The grouping period is set to daily by default.
Sync UI Sales Other screen where you can set up the invoice status and the grouping period for **Sales**.Sync UI Sales Other screen where you can set up the invoice status and the grouping period for **Sales**.

Sync UI Sales Other screen where you can set up the invoice status and the grouping period for Sales.

Sales account mapping

Sales

Sales are booked on a nominal account of the QBO type Income. This is the account that the merchant would typically use to book their sales.

The merchant can select an existing account from QBO. If an account is not available, it needs to be created in QBO for this purpose.

A dropdown list displaying nominal accounts that can be used to map **Sales**.A dropdown list displaying nominal accounts that can be used to map **Sales**.

A dropdown list displaying nominal accounts that can be used to map Sales.

Codat pushes a single sales invoice to QBO each day. The invoice is issued to the commerce services provider. This invoice represents all sales made over the course of that day.

The invoice will contain one line item for each tax rate the merchant trades in, with this line item representing the total of all sales at that tax rate.

If no sales have been made for a given tax rate on that day, the corresponding line item will be omitted.

An invoice in QBO representing the daily sales made at the 20.0 and 0 tax rates (click to expand).An invoice in QBO representing the daily sales made at the 20.0 and 0 tax rates (click to expand).

An invoice in QBO representing the daily sales made at the 20.0 and 0 tax rates (click to expand).

🚧

Rounding

Discounts are applied to the total of the purchase once all the items have been summed up rather than at an item level. As we are splitting out items into VAT percentages across all sales for the day, discounts need to be applied at the item level which may lead to slight rounding discrepancies compared to applying the discount at the summed level. As per the advice of most accounting packages, we add an invoice line of ± 0.01 to bring the total in line with the correct total.

When the merchant receives payment for the reported sales, the invoice is marked as paid and balanced against an invoice payment (see Payments).

Refunds

Refunds represent a catch-all for all refunds, cash or non-cash.

Similar to Sales, Refunds are usually booked on a nominal account that the merchant uses to book their revenue, of the QBO type Income.

Typically, merchants would push Sales and Refunds into the same account. However, they can use a different account if they wish to report them separately.

A dropdown list displaying nominal accounts that can be used to map **Refunds** (click to expand).A dropdown list displaying nominal accounts that can be used to map **Refunds** (click to expand).

A dropdown list displaying nominal accounts that can be used to map Refunds (click to expand).

Codat pushes a credit note to QBO daily. The credit note represents all refunds made over the course of that day.

The credit note contains one line item for each tax rate the merchant trades in, with this line item representing the total of all refunds at that tax rate. If no refunds have been made for a given tax rate on that day, the corresponding line item will be omitted.

When purchase refunds are recorded in QBO, the negative revenue is booked to the selected account.

A credit note representing the refunds made over the course of the day (click to expand).A credit note representing the refunds made over the course of the day (click to expand).

A credit note representing the refunds made over the course of the day (click to expand).

🚧

Payments

The following information is related to the Payments feature. To learn more about the configuration of Payments, navigate to the Payments section.

To represent the money going back to the customer, a journal entry is pushed crediting the cash account and debiting the debtor’s account.

This is then linked to the credit note through a zero-value ‘receive payment’, which effectively changes the credit note status to paid and creates a payment link on the journal entry.

A journal entry that represents money going back to the customer (click to expand).A journal entry that represents money going back to the customer (click to expand).

A journal entry that represents money going back to the customer (click to expand).

A receive payment that links the journal entry to the credit note (click to expand).A receive payment that links the journal entry to the credit note (click to expand).

A receive payment that links the journal entry to the credit note (click to expand).

Gratuity

Gratuity represents tips collected by the merchant from their customers on payment.

Depending on the merchant’s preference, Gratuity can be booked in an Income or a Liability account.

A dropdown list displaying nominal accounts that can be used to map **Gratuity** (click to expand).A dropdown list displaying nominal accounts that can be used to map **Gratuity** (click to expand).

A dropdown list displaying nominal accounts that can be used to map Gratuity (click to expand).

Gratuity is pushed to QBO as part of the daily Sales invoice as a separate line item.

A sales invoice in QBO featuring a line item representing **Gratuity** payments that have been received during the day (click to expand).A sales invoice in QBO featuring a line item representing **Gratuity** payments that have been received during the day (click to expand).

A sales invoice in QBO featuring a line item representing Gratuity payments that have been received during the day (click to expand).

Prepaid

The Prepaid feature covers the transactions pertaining to selling and redeeming prepaid items, such as gift cards.

Transactions of the type Prepaid should be booked into a Liability account.

A dropdown list displaying nominal accounts that can be used to map **Prepaid** (click to expand).A dropdown list displaying nominal accounts that can be used to map **Prepaid** (click to expand).

A dropdown list displaying nominal accounts that can be used to map Prepaid (click to expand).

The purchase of prepaid items will appear as a line item on the daily Sales invoice in QBO.

A daily **Sales** invoice in QBO that features a gift card that was sold during the day.A daily **Sales** invoice in QBO that features a gift card that was sold during the day.

A daily Sales invoice in QBO that features a gift card that was sold during the day.

Note that when a customer uses the prepaid item (for example, purchases an item with a gift card), this is processed as a normal sale (see Sales).

Fees

The Fees feature encompasses the transactions that involve the commerce service provider, including Payment fees that a commerce platform charges the merchant for processing their card transactions and Payment fee refunds.

To set up Fees, the merchant needs to configure account mappings for all the Fees subtypes by selecting the account they wish to send the data into from the respective dropdown lists.

The lists display all the applicable accounts available on the merchant’s QBO accounting platform:

Sync UI **Fees** accounts screen where you can select the accounts to use to map the commerce data (scrolled up).Sync UI **Fees** accounts screen where you can select the accounts to use to map the commerce data (scrolled up).

Sync UI Fees accounts screen where you can select the accounts to use to map the commerce data (scrolled up).

Sync UI **Fees** accounts screen where you can select the accounts to use to map the commerce data (scrolled down).Sync UI **Fees** accounts screen where you can select the accounts to use to map the commerce data (scrolled down).

Sync UI Fees accounts screen where you can select the accounts to use to map the commerce data (scrolled down).

Fees account mapping

Payment fees

Fees are booked on a nominal account of type Expense.

If there's no account of such type, users need to create an account in QuickBooks for this purpose.

A dropdown list displaying nominal accounts that can be used to map **Payment fee** (click to expand).A dropdown list displaying nominal accounts that can be used to map **Payment fee** (click to expand).

A dropdown list displaying nominal accounts that can be used to map Payment fee (click to expand).

Codat pushes a single bill to QBO daily. This bill represents all fees taken by the commerce platform over the course of that day. The bill can have more than one line if there are different types of transactions that occur throughout the day.

A daily bill representing commerce payment fees taken during the day (click to expand).A daily bill representing commerce payment fees taken during the day (click to expand).

A daily bill representing commerce payment fees taken during the day (click to expand).

Payment fee refund

When a merchant refunds a payment accepted using a commerce platform, the commission taken when the payment was taken is simultaneously refunded to their commercial account. In the Codat Sync flow UI, such refunds are referred to as Payment fee refunds.

Payment fee refunds should be booked to the same accounts configured for Payment fees:

A dropdown list displaying nominal accounts that can be used to map **Payment fee refunds** (click to expand).A dropdown list displaying nominal accounts that can be used to map **Payment fee refunds** (click to expand).

A dropdown list displaying nominal accounts that can be used to map Payment fee refunds (click to expand).

A single bank deposit is pushed each day representing all fee refunds processed that day.

A bank deposit in QBO that represents all fee refunds processed during the day.A bank deposit in QBO that represents all fee refunds processed during the day.

A bank deposit in QBO that represents all fee refunds processed during the day.

Payments

Payment accounts contain cash. This is in contrast to all the accounts discussed above in the Sales, Refunds, and Fees sections, which are nominal accounts and represent accounting concepts rather than hard cash.

Codat supports either bank accounts or current accounts for payment accounts. They should be of a QBO nominal type Cash at bank and in hand (Asset).

To use an account for Payments, it should be of the type **Cash at bank and in hand** as shown on this screenshot.To use an account for Payments, it should be of the type **Cash at bank and in hand** as shown on this screenshot.

To use an account for Payments, it should be of the type Cash at bank and in hand as shown on this screenshot.

❗️

Deposit accounts

A deposit account cannot be used for payments.

We recommend having the following core payment types enabled:

  • Card
  • Cash
  • Payout

Sync for Commerce supports additional payment types that can be switched on as applicable including invoices, specific payment types, or custom types.

Payments account mapping

Codat has provided functionality to allow users to select different accounts for each different payment type.

❗️

New payment types after setup

If the user starts using other payments types after initial setup, the synchronization will stop until the accounts have been re-mapped via returning to the configuration page.

Codat pushes a single payment to QBO per day, per type of payment used that day.

If a merchant processed ten card payments and twenty cash payments in one day, two payments are pushed. These payments are recorded against the daily sales invoice (see Sales).

A QBO Receive Payment that represents a cash payment.A QBO Receive Payment that represents a cash payment.

A QBO Receive Payment that represents a cash payment.


Did this page help you?