Sign Up

Best Accounting Practices for Shopify + QuickBooks

Best Accounting Practices for Shopify + QuickBooks


The following steps and how-to videos will help you get setup with Shopify, Greenback, and QuickBooks. Greenback auto-fetches your sales, refunds, and payouts from Shopify and syncs them to QuickBooks. We even create ancillary transactions for “netted out” card swipe fees, and subscription plans (when the data is available). We are fanatical about itemized details because it’s imperative to know your cost of sales. Greenback captures your Shopify accounting data from Shopify Payments.

Let's clarify what we know. The most important thing to remember is that Shopify holds funds on your behalf. You already know that when you make a sale or accept a payment, Shopify will take the payment from the customer, then deposit the funds to a holding account. This is your balance of funds comprised of different types of transactions (e.g., payments, refunds, etc.). Shopify will then transfer these funds (payouts) from your available account balance into your actual bank account based on your payout schedule.

You also know that Shopify withdraws funds from your balance (ie: Shopify funds/balance) to pay for various expenses such as payment processing fees and refunds. Thus, (and this is key!) the transfers Shopify will periodically make to your actual bank account will not reflect all the credits and/or debits behind the scenes. That's where Greenback provides outstanding support. Our platform will sync and generate (if necessary) all the transactions that affect your Shopify balance. And our platform also helps get all of them into QuickBooks as sales and expenses.

Here are the best practices we are going to go over. Make sure that you’ve already signed up for a Greenback account, then connect Shopify, and then QuickBooks. You’re going to customize your Chart of Accounts by creating an informal Shopify Bank Account, and creating an Expense Account. Then you’ll teach Greenback the mappings by exporting a sale, expenses (like fees), and a refund.

Step 1: Connect Shopify and QuickBooks to Greenback

On the Greenback dashboard, click “Connect” in the left nav, find Shopify and click on "Connect", and click Connect again. You'll be redirected to Shopify where you can follow the steps to authorize Greenback to connect to your account eg: Connect My Shopify Account. Once you’ve completed that, you'll be redirected back to Greenback where an initial sync will complete. You will see your sales, refunds, payment processing or merchant fees, purchases, reimbursements, etc. if you have any.

On the Greenback dashboard, click “Connect” in the left nav, find “QuickBooks” and click on "Connect", and click Connect again. You'll be redirected to QuickBooks where you can follow the steps to authorize Greenback to connect to your account eg: Allow Access. Once you've completed that, you'll be redirected back to Greenback where an initial sync will complete. You’ll also get a glimpse of your initial scorecard.

Step 2: Add a Bank Account in QuickBooks

Since Shopify maintains a balance of funds on their platform for your shop, they act like any other bank account for your business. As a best accounting practice, you'll want to create a new bank account in QuickBooks to reflect the funds Shopify holds. When Shopify transfers funds to your actual bank account, you'll simply "transfer" those funds in QuickBooks from your "Shopify Funds" bank account to your actual bank account.

Rather than have a dedicated account in your Chart of Accounts for Shopify as Undeposited Funds -- we recommend having a dedicated account that is a Bank -> Checking Account instead. Because you'll be paying for expenses like swipe fees, issuing refunds, etc. all from this specific account, it acts more like a real bank account than simply a place undeposited funds are held.

Greenback will note where funds came from/went to on every transaction. If you change your bank account information associated with your Shopify Balance, you'll need to pick the right account in QuickBooks. Shopify only uses your actual bank account to make a payment if you don’t have enough funds in your Shopify balance. Make sure your bank allows both credit and debit payouts. During a training session, we’ll run thru how the Greenback UI (user interface) provides hints and selects defaults based on the account we know you paid from or deposited to.

On your QuickBooks dashboard, you'll click on Accounting > Chart of Accounts > New. Next, you’ll add a new account to customize your Chart of Accounts. The Account Type is “Bank” and the new bank account can be named "Shopify Payout Funds" or something similar and the Detail Type is “Checking”. Select the currency that mirrors the country of your Shopify account. In the video we chose USD because we get USD payouts sent to a USD-denominated bank account. Click Save and Close.

Pro-Tip: Greenback supports multi-currencies and tax setting configurations for Sales Tax, VAT, GST, HST, PST and even Shopify's Auto Tax (for digital services) too.

Step 3: Add an Expense Account in QuickBooks

Shopify charges you various fees for doing business on their platform. For example, when you sell an item, Shopify will charge (and auto-deduct) a swipe fee. To simplify accounting for these fees, Greenback recommends the best practice of also adding a new account to your Chart of Accounts with an "operating expense" account category to represent these Shopify fees. On your QuickBooks dashboard, go to Accounting> Chart of Accounts> New. The Account Type is "Expenses", the Detail Type is “Other Business Expenses” or possibly “Bank Charges” etc. and the Account Name is "Shopify Merchant Fees" or something similar, then click Save and Close. You can leave the Description blank. Greenback has special per-transaction handling of sales taxes, VAT, etc depending on how you have your shop set up.

As a best practice, Greenback recommends that you treat swipe fees, monthly fees, etc. as operating expenses and simply lump them together as Merchant Fees. Some businesses will account for some of these as a "Cost of Goods Sold (COGS)" or "Cost of Sales (COS)", but most accounting professionals we surveyed recommended that they get treated as a standard operating expense.

Step 4: Export a Sale to QuickBooks

You are now ready to export your first Shopify sale to QuickBooks! Greenback learns the correct export settings and mappings as you do them. So you'll only need to export a few different types of transactions (e.g. sales receipt, a monthly subscription fee, refund) and Greenback will begin to pick the right defaults every time.

On the Greenback dashboard while your Shopify account is selected on the left nav, choose a sales transaction that represents an item that you’ve sold (immediate payment) on Shopify and click on the white “Export” button. Greenback will refresh your settings from QuickBooks and search for possible matches/duplicate transactions. (We are fanatical about protecting your books.) Next, click on “Create a New Sale” since the transaction doesn’t exist in QuickBooks yet and click Next. When you select this option, Greenback will add a new transaction to QuickBooks after the next 2 steps are completed.

For the Customer field, we haven't done any exports yet and the actual Shopify customer is not on your existing customer list yet, so let’s add Shopify as a new customer eg: “Add Shopify-Sales”. Greenback will add the “customer” you input here (marketplace/seller platform, or customer name if available) to your list for you in QuickBooks and remember it for you the next time. The Deposit To field is where the deposit should be applied to. Select the bank/asset account “Shopify Shop Funds” that we already set up in Step 2. For the Product/Service field, you can choose a “Sales” income account from your Chart of Accounts in QuickBooks. You may or may not be dealing with sales tax, but we usually include it and select QuickBooks’ "Auto Lookup" option in our demos. Greenback’s Automated Sales Tax feature helps Shopify sellers by detecting when your shop or platform has collected sales tax for you, so we either include it as a line item in the text receipt and the Sales Tax will say “0” or it will appear as a line item under the Subtotal where it typically appears in a transaction. It depends on how you have set up your Shopify Shop. Click "Export" and you're finished.

NOTE: Always speak with a tax advisor about your obligations to avoid a sales tax audit even when you use a seller platform.

Greenback creates a sales receipt transaction in QuickBooks with the details of what you sold. Greenback also makes a deposit to your Shopify Payout Funds account in QuickBooks. Remember, there’s no need for an invoice in QuickBooks, when the sale is immediately paid. To view it in QuickBooks, go to Sales, All Sales, and click anywhere to view that transaction.

Step 5: Export an Expense to QuickBooks

For expenses like your monthly subscription plans, "netted" out card swipe fees, and other costs, Greenback creates ancillary transactions if needed. As mentioned in Step 3, best practice is to treat them as "Operating Expenses" and lump them together as Merchant Fees. For an example on how to handle an export, here's a similar video working with Stripe expenses.

Step 6: Export a Refund to QuickBooks

If you sell enough on Shopify, you'll eventually need to issue full or partial refunds. So let's go through an example of one to show you how it works. For every “discount/refund” you issue on Shopify, Greenback creates a transaction for you that represents the "negative" sale.

On your dashboard, choose a Refund transaction, then click the white "Export" button. Next select "Create New Refund" and click "Next". Greenback defaults to “Shopify-Sales” as the Customer. The Deposit to bank/asset account is “Shopify Payout Funds” (the “bank account” you created in Step 2). For the Product/Service field, select the “Sales” income account. Click Next. You are finished.

Let's take a look at a couple of reports in QuickBooks after the Refund transaction. Go to Reports and then Profit & Loss. Then check out your Transaction Report for your Sales ie: “Income”, and Refunds.

Step 7: Reconciling Payouts and Handling Deposits on Your Bank Feed

Shopify holds funds on your behalf (and periodically transfers payouts to your bank account). It's important to remember it's a revolving balance of cash and not always a clear cut batch of settled transactions. There could be sales, holdbacks/reserves, miscellaneous credits/debits, time zones, cut-off times etc. For example, a sale occurring at 1:00 PM may not be included with a payout initiated at 1:02 PM.

Payouts are simply cash transfers from one account to another. Not a batch of transactions. It's the same as transferring cash from one personal bank account to another. You are transferring money. Payouts from Shopify are just transfers of money from one account to another too. But how do you reconcile the transfers and feel confident you've accounted for everything?

The best practice is to reconcile overall balances and net-profits. If Greenback's total sales, total expenses, and net-profits match for example your Shopify statement, then you've reconciled the Shopify -> to Greenback data is 100% accurate. When you export all of your transactions, then you've reconciled the Greenback -> to your Accounting Package (optional) data is also 100% accurate. Therefore, Shopify -> Greenback -> Accounting Package is reconciled. Additionally, if you've setup an Shopify Shop funds account in your Chart of Accounts, then the balance in your Shopify account should match it. The only exception would be a payout currently in-flight (since bank transfers can take a few days).

If you have bank feeds setup in your accounting package, you'll have transactions (deposits) appear that represent the payouts from your selling platform. You may notice that Greenback doesn't create any transfer types of transactions on our platform or export any to your accounting package either. In order to simplify the processing of your bank feed, we chose not to track the transfers.

Here's why. First, if you sync and import your bank feed before exporting your data from Greenback, we would need to find a match during the export. Otherwise you'd have a possible duplicate transfer. Second, in the reverse direction, if you export from Greenback first and then import your bank feed, you'd need to hope your accounting package finds a match. Based on our product research, rather than introduce this scenario, we decided it's best to let your bank feed be the authoritative source of transfers.

Since Greenback exports the sales & expense data--while we leave the transfers to your bank feed--every deposit in your bank feed can be simply marked as a transfer on your books. Your accounting package may either remember you did this after the first time, or you can setup a rule to have it do that every time. Here's a demo on how to transfer the funds from your clearing account to your real bank account and then set up a transfer rule in QuickBooks so that it is automated. Then all you will need to do is click "Transfer" the next time.

How to Customize Your Accounting Data Exports

If you've connected QuickBooks, you can set your preferences when exporting your data. Choose your time zone to match, make it easy to see your shop name, enable item SKU matching, and more. Set Your Preferences

Shopify Payment Data

Businesses all over the world can accept payments directly without the hassle of a payment gateway since Shopify has its own payment provider--Shopify Payments. We can auto-fetch your data in the following countries: United States, Canada, United Kingdom, Australia, Ireland, New Zealand, and Singapore if you use Shopify Payments. Greenback can only capture data made available through your Shopify account ie: Shopify Payments. If you use a 3rd party payment gateway, your data isn't available.

Join the world's most advanced pre-accounting system.

Start a free trial on our growth plan now.

  • Start your free trial
  • Easy set-up
  • Cancel any time