Skip to main content
All CollectionsFinancial ReportsUnderstanding my sales
Finaloop's Shopify Integration Deep-Dive
Finaloop's Shopify Integration Deep-Dive

Understand all the data we sync from Shopify and exactly how the ins and outs of our Shopify integration works

Rayla Rappaport avatar
Written by Rayla Rappaport
Updated over 2 months ago

1. About

Finaloop’s seamless integration with Shopify ensures that your financial data is always accurate and up-to-date.

We automatically sync and reconcile your Shopify transactions, eliminating the need for manual adjustments and provides clear, reliable financial data. This article explains how our Shopify syncing works, how you can link offline payments to Shopify orders, and how we manage fulfillment and cost of goods sold (COGS) data, ensuring that your books always reflect the financial reality of your business.


2. How our Shopify syncing works

Finaloop pulls your orders, products, fulfillment, and payment data through secure integrations, updating your numbers in real-time.

Our integration was designed by accounting and tax experts to automatically map the Shopify data to the appropriate accounts, following best practices for ecommerce businesses. This ensures that all sales, refunds, discounts, fees, and COGS are accurately reflected in your financial reports.

Note: There are certain financial/accounting actions that you may take relating to your Shopify orders that should be done in Finaloop and not Shopify so they're reflected in your books, such as:

  • Voiding orders

  • Marking an order as uncollectible

  • Reporting an over collected payment

  • Marking an order with an offline or manual payment as paid

But, keep in mind that the orders themselves will still need to be managed only in Shopify.

Finaloop also reconciles your order data against the data we sync from all payment gateways connected to Shopify, such as Shopify Payments, PayPal, Stripe, Amazon Pay, and Afterpay. The reconciliation process includes a three-way matching process: orders→payment processors→payouts in the bank, ensuring every transaction is accurately accounted for in real-time.

Channels connected to Shopify

Many businesses use non-Shopify sales channels, marketplaces, or apps that are the source of the order but are connected to Shopify so they can manage their orders, products, and customers all in one place. Examples include TikTok Shop, Faire, Amazon, Loop Returns, and many others.

When we sync your Shopify data, we ensure we are syncing 100% accurate numbers and don't create 'noise' related to fully discounted orders or double counting sales that are already being recorded from another source.

To keep your numbers clean, we created the ability to include or exclude part or all of the data from various apps based on a selected status:

Finaloop status

Is sales data synced?

Is COGS data synced?

Examples / Images

Included - includes all data

  • Shopify stores

Excluded - excludes data that will overstate sales, e.g., if we pull sales from another source, like other integrations or through net bank payouts

X

X

  • Amazon (we sync through Amazon instead)

  • Target (we record based on net payouts in the bank)

COGS only - includes only COGS because we sync sales from the payouts

X

  • TikTok Shop

  • Replacements, warranty, exchanges

Sales only - includes only sales because Shopify toggle is off in Inventory Settings page

X


3. Shopify reconciliation

We built our Shopify integration to accurately account for each penny so you get a real understanding of the health of your business. Sometimes, these numbers may be described differently in Shopify and in Finaloop so we created a line-by-line reconciliation report between Finaloop and Shopify. This way you can have complete confidence in your numbers.

Reviewing your Shopify reconciliation report

To view the reconciliation report:

  1. Click More on the menu.

  2. Click Shopify reconciliation report.

  3. Select the relevant store and the date range. You can also select the timezone you have set in Shopify to reconcile the numbers.

  4. Click Generate.

Here you’ll see a full reconciliation of any differences between what you see in Shopify and what you see in Finaloop, including:

  • Finaloop books: Total amounts you see in Finaloop books (broken down by sales source)

  • Amounts excluded from Finaloop: To avoid double counting sales transactions, Finaloop excludes sales from certain external apps integrated with Shopify when Shopify is not the original source of income, ensuring that only relevant financial data is included in your reports.

  • Adjustments: There are certain differences between how Shopify displays and records specific numbers and how Finaloop does it. This is for purposes of making sure your books are completely accurate for accounting and tax purposes. Here are some examples:

    • Void/ canceled orders

    • Order over-collected

    • Discounts, refunds, returns and shipping income

    • Sales tax adjustments

    • Unfulfilled orders

    • Shipping discount adjustments

  • Finaloop adjusted numbers vs. Shopify. Here you should see all green checks, so you know you are good to go! The one exception, is that you may see a red check mark pertaining to Additional duties, taxes, and fees this is because the Total Sales may be broken down differently in Shopify. This is normal and as long as the rest are green checks, you are in the clear!


4. Your Shopify accounts in your P&L and Balance Sheet

Here is a breakdown of some of your key Shopify accounts in your P&L and Balance Sheet:

Shopify Sales, Shipping income, Discounts & promotions

Your sales, shipping income, and discounts & promotions will be added to your P&L on an order-by-order basis.

Each order will also have an impact on your Balance sheet, depending on how it is paid:

Paid through a digital payment processor, e.g., Shop Pay, Stripe, Paypal, Afterpay, etc:

Your Undeposited funds (UDF) account in your Balance Sheet for that payment processor will increase by the collected amount less any fees you pay to the payment processor. Your UDF account essentially indicates payments you’ve already received from customers that have not yet been deposited into your bank account.

The payment processor typically pays out the funds into your account after combining them with multiple other order payments. When the payment processor pays the funds into your account, your corresponding UDF account will decrease and your cash account will increase accordingly.

Not paid through a digital payment processor, e.g., paid by check, ACH/ wire, cash or unpaid orders:

Your Accounts receivable (A/R) - cash orders - Shopify account in your Balance Sheet will increase. This indicates the orders that you haven’t yet received payment for. You can also view these by navigating to Customers> Branded Store Orders>Unpaid Orders tab.

If a cash, check, or ACH payment is received in your account, you can link each cash payment to specific Shopify orders. See section below on Linking payments to orders to learn how.

Alternatively, you can categorize this transaction as Cash payment received for store orders (there is no way for us to know automatically that a check or cash deposit is a payment for a Shopify order without your input).

These payments will create another Balance Sheet account called Cash payments received for store orders which will be a negative balance to reduce the net impact of the Accounts receivable (A/R) - cash orders - Shopify account in your books.

For example:

Accounts receivable (A/R) - cash orders - Shopify account: $2,000

Cash payments received for store orders: -$1,500

The net impact on your books is that you have remaining A/R from Shopify of $500.

Each sale will also increase your COGS if your Shopify Report-per-SKU is on and you are using either sales based or InventoryIQ to track your COGS.

To set your Shopify Report-per-SKU to on, see Shopify COGSbelow.

Note that the timing of the sales income may differ depending on which fulfillment method you are using of our Shopify fulfillment feature. Check out the section below on Shopify fulfillment.

Shopify refunds & returns

When an order is refunded, it will decrease your UDF in your Balance Sheet and increase your Refunds & Returns - Shopify account in your P&L on the date of the actual refund (not on the date of the original sale). It will also be deducted from the Shipping income account.

Note that the refunds itself will not impact your COGS unless the item is marked as restocked in Shopify. In this case, the refund will reduce your COGS and increase your inventory.

Item exchanges: If you use an external platform to manage item exchanges, such as Loop Returns or Redo Free Returns & Exchanges, each exchange creates a new order in Shopify with a 100% discount applied. We exclude these orders to ensure your numbers are never overinflated and instead apply a COGS-only status. Note: its important to mark a returned item as Restocked in Shopify since this can impact your inventory and COGS numbers.

Shopify gift cards

There are a few types of gift cards available in Shopify.

  1. Purchased: The customer buys the gift card through an order in your store.

  2. Issued: When you issue a gift card to a customer.

  3. Third-party: When another application with which you partner issues a gift card to your store.

When a gift card is purchased through option 1, we record it as deferred revenue in your Balance Sheet in an account called Gift card liability - Shopify. It won’t yet impact your P&L. When it's redeemed, we decrease the liability and record it as sales income.

In the other two options (issued and third-party), nothing is reflected in your books at the time of issuance. When the gift card is redeemed by the customer, we record it as a "giveaway discount" in your Discounts & promotions account in your P&L. We use this method of recording because most of these gift cards are never actually redeemed. Recording them as gift card liabilities would inflate your liabilities and wouldn’t give you a true picture of your finances

Sales tax

All your sales tax collected from customers will be recorded and tracked in your Balance Sheet in a Sales tax liability account. When sales tax is paid from your bank account to state taxing authorities, we’ll reduce this account so you can keep track of what you still owe.

Please note that sales tax collected is not added to your sales income and is only considered a liability for tax purposes, not income.

Shopify fees

For more information on the breakdown of Shopify fees, please see our article on why Shopify bills are categorized as Software & subscription.

Shopify COGS

If you are using sales based COGS or unit based COGS with InventoryIQ, we can sync your sales data directly from Shopify so that each Shopify order will automatically increase your COGS.

To set this up, go to Inventory>Settings>General and make sure the Shopify toggle is set to ON. Then click Save.


5. Managing your orders

There are certain financial/accounting actions that you may take relating to your Shopify orders in Finaloop, including:

  • Tracking your Shopify orders and status

  • Linking your cash or ACH payments to the relevant orders

  • Voiding orders from Shopify

Let's run through how to manage each action in Finaloop.

Tracking your orders and their status

Reviewing your Shopify order status

You can see all your Shopify orders by navigating to Customers>Branded Store Orders from the navigation menu.

Filters (#1)

Filter options:

  • Time period: e.g, today, last month, last quarter, or from book start date (the day your books start in Finaloop), etc.

  • Date range: from and to

  • Search: enter order number or amount

  • Filter:

    • By date type: Placed date, Payment date, Fulfillment date, Refund date

    • Payment status: Paid, Partially paid, Refunded, Partially refunded, Unpaid

    • Customer: Search by customer name.

    • Products: Search by product

    • Net order amount: Add min to max range

    • Number of items per order: Add min to max range

    • Tags: Search by tags you added in Finaloop

    • Shopify tags: Search by tags you added in Shopify

    • Payment gateway: Search by payment gateway

    • Sales channel: Filter by sales channel (draft orders, Online store, etc.)

    • Store: If you have multiple Shopify stores connected to Finaloop, you can filter by store.

    • Finaloop status: Filter by orders marked as Uncollectible, Overcollected, Excluded, or Voided in Finaloop

    • Fulfillment status: Fulfilled, Unfulfilled, Partially fulfilled, Restocked

Bulk Actions (#2)

  • Link payment: Link orders to bank/card transactions

  • Void: Void orders to remove the impact of those orders from your books

Order details (#3)

For each order, view details on Placed date, Source, Sales channel, Order #, Net sales amount, Net order amount, Unpaid balance, Status, and payment source.

When you click into any of the orders, you will see all the order details such as payment details, timeline, customer, and items.


Linking payments to orders

Sometimes a customer will pay for a Shopify order offline and not through a payment processor, such as by check, ACH, or wire transfer. In order to keep track of which orders were paid for and in order to keep your Shopify A/R balance updated, you can link the payment from the bank to the actual order on your Shopify orders screen.

To link an order/ multiple orders to a payment transaction

Here is how to link the payment from your Transactions screen to the Shopify order to keep your order status and accounts receivable (A/R) balance 100% accurate.

You can also check out this walkthrough which takes you through each step.

Note: Marking an order as manually paid in Shopify won’t automatically match it to the payment transaction or change the status of your order in Finaloop. This is something that can only be done only in Finaloop.

  1. From the menu pane, navigate to Customers> Branded Store Orders.

  2. The Orders screen opens with all of your orders from Shopify. Click the Unpaid orders tab at the top of the screen.

  3. Scroll through the unpaid orders, search, filter, and check one or more specific orders you want to link to payments. You can select up to 50 orders at a time.

  4. Click Bulk Actions>Link payment or you can click on a specific transaction. If not, click the arrow next to the transaction and click Actions>Link payment from the specific order screen. Whichever you choose, the Link between orders and payments screen opens.

  5. You can link one or multiple transactions to one or multiple payments from your bank account.

  6. In the section Payments to link, click Add Payment to view relevant money-in transactions from your bank account.

  7. The Payments tab opens. Select the relevant bank transaction(s).

  8. Enter a payee or amount in the search bar to find transactions. You can select one or multiple transactions. Finaloop allows you to link one payment to one order (1:1), one payment to many orders (1:Many), many payments to one order (Many:1), or many payments to many orders (Many: Many).

  9. Click Apply at the bottom of the screen.

  10. Review and make adjustments as needed, such as allocating only part of the total order or only part of the total payment amount. You can also add discounts, fees, or other expenses.

  11. When you’re ready, click Save. If all’s good you’ll see the success message.

  12. To see the completed transaction, click the Back to Orders link at the top of the screen. You’ll see that the status of the order will change accordingly, i.e., marked ‘Paid’ or ‘Partially paid’ and that the order balance is zero or reduced. You can always go back and edit the link (unless the year is locked) by clicking on it in the order screen or in the Transactions screen.

  13. That’s it. Your unpaid or partially paid transactions are now linked to bank credits, and those transactions will now show the correct amount in Accounts Receivable (A/R).

You can view the linked orders and payments by clicking on the Linked Orders & Payments tab at the top of the screen.

Here you’ll see all links between orders and cash payments. Cash payments are those transactions from your Transactions page that you linked to specific orders. This won’t include digital payments that were processed through an integrated payment processor and automatically linked to the orders by Finaloop.

To edit linked transactions

Want to make changes? No problem.

Open the order and in the cash payments section, click View. This opens up the editor. You can make changes as needed, or even unlink the payment. Then click Save to save any changes.


Voiding orders

You can void orders in Finaloop to ensure they don’t impact your books. This action is reversible at any time.

Note: Voiding is not available for orders in a closed year or for orders that have a payment through a payment processor. This helps us keep everything accurate and reconciled in your books!

To void an order/ multiple orders:

  1. From the menu pane, navigate to Customers> Branded Store Orders.

  2. The Orders screen opens with all of your orders from Shopify. Click the Unpaid orders tab at the top of the screen.

  3. Scroll through the unpaid orders, search, filter, and check one or more specific orders you want to void. You can select up to 50 orders at a time.

  4. Click Bulk Actions>Void orders or you can click on a specific transaction. If not, click the arrow next to the transaction and click Actions>Void order from the specific order screen.

  5. Click Save.


6. Shopify Fulfillment

Finaloop offers a new Shopify fulfillment feature that allows users to recognize sales based on the actual fulfillment date rather than the order date. This feature provides two options:

  • Automatic Fulfillment: Sales, shipping income, discounts, and other order components are recognized on the order date.

  • Integration-Based Fulfillment: Sales and other components are recognized based on the fulfillment date, with unfulfilled items recorded as deferred revenue on the Balance Sheet.

This feature is particularly useful for businesses with multiple warehouses or complex fulfillment processes, or businesses that have a significant timing delay between the order date and the fulfillment date, ensuring that your financials align with your operational reality. If you are using our InventoryIQ module to track your inventory units, selecting the right fulfillment method is key to getting your numbers right.

Your default setting will be automatic fulfillment based on the order date. If you’d like to switch to Integrated-based fulfillment, please contact support at [email protected].

Did this answer your question?