Guide · Net terms
How to track who still owes you on Shopify net terms
The most common question from wholesalers who moved their B2B customers onto Shopify's native payment terms is not about checkout. It is the one asked after the first month: how do you currently track who still owes you?
Shopify answers it per order — each order shows paid, partially paid, unpaid or overdue — but not per customer. This guide covers what the per-customer view has to contain, why the spreadsheet most merchants keep drifts within a quarter, and how to replace it.
What Shopify shows, and what it does not
For an order with payment terms Shopify stores the issue date, the due date, the amount and every payment against it, and it marks the order overdue once the due date passes. Filter Orders by "payment status: unpaid" and you see the open orders across all customers, newest first.
What it does not show: the balance of a company across its open orders, how much of that balance is overdue, how many days the oldest item is past due, or what that customer was last told they owe. Those four numbers are what you need before a phone call, and what the customer's bookkeeper needs before a payment.
The spreadsheet, and why it drifts
So merchants keep a sheet: one row per stockist, columns for open invoices, a total, a note. It works for a while. It drifts for three reasons: a payment arrives by bank transfer and is marked in Shopify a week later (or never); an old order is refunded or edited after the row was written; and the sheet is updated at month end while Shopify changes every day. By the third month the sheet and Shopify disagree, and nobody is sure which one is right.
The per-customer view that works
Four figures per company, all derived from the orders and payments Shopify already holds:
- Balance — the sum of what is outstanding across every open order, in the customer's currency.
- Overdue — the part of that balance past its due date, with the oldest open due date next to it.
- Days past due — of the oldest unpaid invoice, so "who to call first" is a sort, not a judgement.
- Last statement — what the customer was last told, and whether it reached them.
The bank-transfer problem
A customer who pays by transfer shows as unpaid in Shopify until someone marks the order paid. Any per-customer view is only as current as that habit. Two things help: mark orders paid the day the money lands, and treat an overdue balance on a customer who usually pays by transfer as "possibly paid — check first" rather than "chase".
Doing it inside Shopify
StatementClerk's dashboard is exactly this view, computed live from your Shopify orders: balance, overdue, oldest open due date and last statement per company, with a flag for possible off-platform payments. The same figures go out to each customer as a monthly statement, so what you see and what they see agree. Free for up to 5 companies.