Skip to content

The money layer

The supplier invoices Shopify never tracked

Knowing what is on the shelf is half the job. The other half is knowing what you owe for it, when it is due, and what it truly cost you. Purser keeps all three in the admin — no export, no accounting detour, no spreadsheet that only one person understands.

Shopify Admin

Accounts payable: aging

Current

$18,420.00

7 invoices

1–30 days

$6,180.50

3 invoices

31+ days

$2,740.00

1 invoice

Outstanding supplier balances with due date and payment status.
SupplierDueBalanceStatus
Nike Corp12 Aug$9,240.00Unpaid
Alden & Co28 Jul$4,180.50Partial
Verity Goods02 Jul$2,740.00Overdue
Purser inside the Shopify Admin. Interface shown with sample data.

The maths, made visible

What last price paid actually costs you

Shopify records the last price you paid on a purchase order and treats it as the cost of every unit you hold. Purser weights the stock you already had against the stock arriving. Put your own numbers in and see the gap.

Your figures

Stock held before this delivery arrives.

$

What those units actually cost, per unit.

Units on the purchase order being received.

$

The price paid on this purchase order.

$

What the unit sells for.

Shopify: last price paid

$52.50

Recorded unit cost

Reported margin
47.5%

Purser: weighted average

$47.50

True unit cost

Actual margin
52.5%

The gap

Shopify overstates the cost of every one of these 180 units, misvaluing the inventory on the balance sheet by $900.00 and reporting margin 5.0% lower than reality.

Purser recalculates the weighted-average cost automatically on receipt, so this correction happens without anyone rebuilding a spreadsheet at month end.

Shopify is not doing any kind of average costing that I can tell. The price seems to just be updated with the last price you paid on a PO, leading to margin tracking errors.
Merchant, on Shopify's native cost handling

What it does

Three things that protect the margin

Weighted-average cost

Recalculated on every receipt, part-deliveries included, using the stock you already hold and the stock arriving. It is the number your margin reports should have been using all along.

The payables ledger

Invoice number, invoice date, due date, amount, and whether it is paid, part-paid or unpaid. Record payments against a bill and watch the supplier's balance come down.

Aging, and an export

See what is current, what is overdue, and by how long, per supplier. When the bookkeeper asks, export the whole payables ledger as a CSV rather than reading it out over the phone.

Accounts payable aging

Know what is owed, and when

Outstanding bills sit in the standard aging buckets, so you can see what must be paid this week and what has been sitting too long.

Current

  • Not yet due
  • Invoices awaiting their due date

1–30 days

  • Past the due date
  • The supplier is about to ring

31+ days

  • Seriously overdue
  • The relationship is the risk now

Credit notes, when the supplier gets it wrong

Charged for twelve and sent ten? Raise a credit note against the bill. What you owe comes down, the history shows why, and the cost of the stock you did receive stays correct.

Shopify shuts Stocky down on 31 August 2026

Stocky stops working on 31 August 2026

The supplier records, costs and purchase-order history you built up over years do not move to Shopify by themselves. Export them, bring them into Purser, and keep the ledger you have been running your shop on.

Get early accessRead the migration guide

Free plan, five purchase orders a month. Pro is $37.99 a month, flat.

Questions

Frequently asked questions

How is weighted-average cost calculated?

The stock you already hold, at the cost you already hold it at, is weighted against the units arriving at the price on this delivery. The result becomes the new unit cost. It is recalculated on each receipt, so a part-delivery at a new price moves the average by exactly its share and no more.

Can I track unpaid invoices in the app?

Yes. Each bill carries its invoice number, invoice date, due date and amount, and is marked paid, partly paid or unpaid as you record payments against it. The supplier's outstanding balance and the aging view both follow from that.

What about suppliers who invoice in another currency?

A bill is held in the supplier's currency, because that is what you actually owe them — you owe a British mill £500, not roughly $640. You enter the rate, and Purser stores the amount in your shop's currency too, frozen at that rate, so your totals add up and do not drift every time you refresh the page.

Does Purser handle freight, duty and landed cost?

Not yet, and we would rather say so than imply otherwise. Shipping costs recorded on a purchase order are not currently spread across the individual items. Landed-cost allocation is planned, and it is not in the app today.

Can my bookkeeper get the data out?

Yes. The payables ledger exports as a CSV on every plan, including the free one. Your books are yours.