Last week I bought a fitness tracker. It shipped from Dubai to Singapore on a well-run express service, arrived on time, and was cleared without incident by one of the best customs brokers in the world.
I paid GST on it twice.
Not through fraud, not through incompetence, and not because anyone in the logistics chain made a mistake. The courier did its job correctly. The clearance was correct. The declaration was correct. The tax was still collected twice, and the only reason it got refunded is that I happen to run a cross-border logistics business and knew which rule to cite.
Most members in that position pay it, grumble, and either eat the cost or refuse the parcel. Both outcomes are expensive for the brand, and neither one generates a signal anybody inside the company ever sees.
I want to walk through exactly how this happens, because if you sell direct-to-consumer into Singapore or anywhere else in APAC, there is a meaningful chance it is happening on your orders right now and nobody has told you.
Singapore's S$400 Low-Value Goods threshold, and what it actually means
Since 2023, Singapore has run an Overseas Vendor Registration regime for imported goods. The headline that most merchants absorbed is: overseas sellers must register and charge GST at checkout.
The part that gets lost is the threshold.
OVR checkout collection applies to Low-Value Goods — physical goods with a sales value of S$400 or less, imported by air or post. Above that line, the rule flips entirely. GST on above-threshold goods is collected at importation, by Singapore Customs, through the declaring agent. An OVR-registered vendor is not allowed to charge GST on an item with a sales value above S$400 — Singapore Customs gives the reason plainly, which is that doing so disrupts existing customs processes. A merchant may separately collect the import GST in advance and remit it to the courier to pay Customs, but that is a duty-paid delivery arrangement, not an OVR collection, and it only helps if the money actually reaches the courier.
It is a binary switch. Below S$400, you charge. Above S$400, you must not. There is no overlap and no discretion.
And the entry value test has its own trap: it is applied to the sales value of the goods, excluding transport, insurance, GST and duties. Not the order total. Not the amount charged to the card. Not the CIF value the customs declaration will eventually carry.
So a single parcel can carry three different numbers, all legitimate, all used for different purposes — and the merchant's cart is usually looking at the wrong one.
Why one parcel can carry three different values
Here is what one order actually produced.
S$400 LVG threshold
The entry value was S$517.37 — comfortably above S$400, so this was not an LVG supply and the checkout should not have applied GST. It applied 9% anyway: S$49.86. On arrival, the broker correctly assessed 9% on the declared value and collected S$48.23, plus a standard disbursement fee for advancing the tax to Customs.
Five reasons e-commerce checkouts miscalculate Singapore GST
Having now looked at this properly, I think there are five common failure modes, and most of them are invisible from inside the business.
The threshold test isn't running at all
The cart was configured at market launch to "charge GST for Singapore," full stop. It works perfectly for every order under S$400, which is most of them, so it never surfaces as a bug. The higher-value orders fail silently.
Discounts move the line
An order that lists at S$430 and sells at S$380 after a promotion crosses the threshold in one direction. Mine crossed in the other. If your tax logic evaluates pre-discount, or evaluates after freight is added, you will get the bucket wrong on exactly the orders where the money is largest.
Freight gets bundled into goods value
The entry value test excludes transport and insurance. Carts that test against the order subtotal-plus-shipping will over-count and misclassify.
The two tests get confused
There are two thresholds, not one, and they are measured differently. Whether an item is a low-value good is tested on its own sales value, item by item, excluding freight and insurance. Whether a consignment needs an import permit is tested on total CIF, which includes them. So five shirts at S$90 each are five low-value goods even though the parcel exceeds S$400 — and that parcel still needs a permit. Carts that test the order total, or that assume one parcel means one test, get both halves wrong.
FX timing
A USD-denominated cart converting at a different rate and moment than the customs declaration will produce two different SGD values for one parcel — and if the true value sits near S$400, the two systems will disagree about which side of the line it falls on.
None of these produce an error message. They produce a small number of quietly annoyed customers.
What a double-charged GST actually costs a brand
The tax itself is trivial. The exposure around it is not.
Regulatory
Collecting GST you were not authorised to collect is not a rounding error to a tax authority. IRAS requires OVR vendors to maintain a process for refunding customers who can evidence that import GST was paid to Singapore Customs on the same goods. If you don't have that process, you have a compliance gap, not just an unhappy buyer. And if you refuse, the buyer isn't stuck — Singapore Customs allows the transporter to help them lodge a refund application directly, which puts your error in front of the authority rather than leaving it between you and your customer.
Support load
Every one of these becomes a ticket. If your front line is trained to answer "customs charges are set by your local authorities and are outside our control" — which is the correct answer perhaps ninety percent of the time — they will give the wrong answer here, confidently, and escalate a solvable problem into a dispute.
Refused deliveries
A customer hit with an unexpected demand at the door often just declines it. Now you're paying return freight on a high-value item, restocking it, and refunding the order.
Chargebacks
Some fraction go straight to the card issuer.
Churn
This is the big one and it never shows up in a tax line. If you sell subscription hardware, the member who felt cheated at the door doesn't just cost you the tax — they cost you the lifetime value. A S$50 error can retire a S$1,500 relationship.
Why the courier is not at fault
It is tempting for someone in my industry to turn this into a story about picking the right carrier. It isn't one, and I'd rather say so.
The express operator on this shipment behaved exactly correctly. They cleared the goods at the declared value, assessed the statutory rate, collected what Customs was owed, and charged a standard, disclosed fee for advancing the money. They had no visibility into what the merchant's checkout had already collected, and no mechanism by which they could have.
That's the actual structural point. In a conventional setup, the party that determines tax at the cart and the party that settles tax at the border are two different organisations that never reconcile against each other. Nobody in the chain owns the question "did we already charge this?" — so the answer arrives as a surprise, at the customer's front door, at the worst possible moment in the experience.
You don't fix that by changing carriers. You fix it by making landed cost a single determination that survives from cart to clearance.
How to audit your cross-border tax setup
If you sell into Singapore and APAC, five things worth auditing this quarter.
- Run the entry value test on post-discount goods value, excluding freight and insurance. Verify it fires on a live above-threshold order rather than trusting the configuration.
- Establish one source of truth for value across the cart, the commercial invoice and the customs declaration. If those three numbers can diverge, they eventually will.
- Pick a lane per order and hold it. DDP where you collect at checkout, DAP where you don't — never both on the same parcel.
- Maintain a per-market threshold register. APAC markets run materially different de minimis and vendor-collect rules, and they change. One global cart rule is guaranteed to be wrong in at least one market.
- Build the refund path before you need it. When it does go wrong, the recovery has to be faster than the customer's patience.
Why tax determination is now a customer experience problem
Cross-border tax determination has quietly become a customer experience problem wearing a compliance costume. The regimes changed fast — Singapore, and most of the region, rewrote low-value import rules inside a few years — and a great many DTC carts were configured before the change and never revisited.
The brands getting caught are not careless ones. They are usually well-run companies whose logistics stack was assembled in layers, by different teams, at different times, with nobody holding the seam between what the cart charges and what the border collects.
That seam is where the money leaks and where the members walk.
I run WMG Pte Ltd, a Singapore-licensed postal operator moving cross-border e-commerce parcels across sixteen APAC markets. We spend most of our time on exactly this seam — determining duty and tax correctly at origin so nothing is collected at the door. If you're selling into the region and you've never pressure-tested your above-threshold orders, it's worth an hour of someone's time. Happy to point you at the right questions either way.
Jim HuangGroup President, WMG Pte Ltd