Shopify bookkeeping for your store

Billfetch reads your Shopify orders and Shopify Payments balance, so sales, refunds, card fees and payouts arrive as separate, explained records.

What Billfetch collects from Shopify

Billfetch reads two streams from your store: orders and your Shopify Payments balance transactions.

  • Sales — paid and partly paid orders become sales, with the order’s tax shown separately. Orders that are only pending, authorised, expired or voided aren’t recorded.
  • Refunds — each refund on an order is recorded as a refund.
  • Shopify Payments fees — the processing fee on each charge is recorded as a fee. The sale itself comes from the order, so nothing is counted twice.
  • Payouts — transfers to your bank are recorded as payouts. They aren’t income; they’re where Shopify money meets your bank account.
  • Test orders are ignored.

Disputes, chargebacks, reserves and adjustments go to review instead of being guessed, so you can decide what they are.

Payouts matched to your bank

A Shopify Payments payout bundles many orders minus fees and refunds. Connect your bank too, through Wise, Starling or a CSV statement, and Billfetch matches each payout to the deposit it became. The bank line is explained, and the orders behind it are in your records.

How to connect Shopify

Shopify no longer lets you create new custom apps inside the store admin, so you create a small app in the Dev Dashboard instead:

  1. Open the Shopify Dev Dashboard (dev.shopify.com), select Create app and name it Billfetch.
  2. In a new version, add the read-only scopes read_orders (and read_all_orders if Shopify has approved it), read_shopify_payments_payouts and read_shopify_payments_accounts. Release the version and install the app on your store.
  3. In Billfetch, open Sources, select Add connection and choose Shopify.
  4. Enter your store’s myshopify.com address with the app’s Client ID and Client secret, then select Connect Shopify.

Already have an older custom app? Paste its Admin API access token (it starts with shpat_) instead of the Client ID and secret.

Billfetch checks the details against your store before saving them, and stores them encrypted.

How often it syncs

Billfetch checks connected sources automatically about every half hour, and Sync now on the card fetches the latest at once. On first connection it reaches back up to 12 months, within the limit your scopes allow.

What it doesn’t do

  • It doesn’t read or change products, stock or customers.
  • It doesn’t fetch fees or payouts for gateways other than Shopify Payments. Connect those providers separately.
  • It isn’t a Shopify App Store app, and it doesn’t submit anything to HMRC.

Frequently asked questions

Why do I have to create an app in Shopify?

Billfetch connects through an app you create for your own store in the Shopify Dev Dashboard, with read-only scopes. That way your store grants access directly and you can remove it at any time.

Can Billfetch see orders older than 60 days?

Only if your app has Shopify's read_all_orders scope, which Shopify has to approve. Without it, Shopify limits apps to the last 60 days of orders. Fees and payouts are not affected.

I take payments with PayPal or Stripe as well. Will sales be counted twice?

Billfetch warns you when a payment provider and a shop connection could both record the same sales. In the provider's settings, choose that sales are recorded by your shop connection.

Does it work without Shopify Payments?

Yes. Orders, sales and refunds come from your store either way. Fees and payouts come from Shopify Payments, so for other gateways connect that provider too.

Shopify is a trademark of Shopify Inc. Billfetch is not affiliated with, endorsed or sponsored by Shopify.

Bring Shopify into one tidy month.

Sign up with your email and connect your sources. Billfetch matches documents to payments, keeps a list of what's missing and prepares the package for your accountant.