DDP and DDU (now DAP) decide who clears customs and who pays the duty. Each one needs its own written procedure, for the goods you buy in and the orders you ship out.
DDP and DDU look like a question about who pays the duty. The bigger question is who does the customs work. Someone has to sign the entry, check the commercial invoice, pay a broker and keep the proof. Pick a term and you have given that work to a person. It is also the work that rarely gets written down.
For a US Shopify store, the terms show up in two places. One is inbound freight from a supplier. The other is outbound orders to customers in other countries. Each needs its own procedure.
Import customs clearance. Under DDP (Delivered Duty Paid), the seller handles and pays for export, transit and import formalities, duties and taxes included. Under DDU (Delivered Duty Unpaid), now called DAP (Delivered at Place), the buyer clears the goods into their country and pays the duty.
ICC Academy's comparison of the two rules puts it plainly: the key difference is import clearance. Almost everything else matches. Under both, the seller arranges and pays for transport to the agreed place. Risk passes to the buyer at the same moment: when the goods arrive there, ready to unload. And under both, the buyer unloads.
No. DAP replaced DDU in the 2010 revision of the Incoterms rules, and Incoterms 2020 still uses DAP.
This matters more for a written procedure than for a contract. If your SOP says "DDU shipment" and your forwarder's portal says "DAP", a new hire has to guess whether they mean the same thing. They do. Say so once in the document. Use DAP in anything you sign from now on, and keep a note that older supplier contracts may still say DDU.
Here is the split, step by step. This is the table worth pasting into the SOP itself.
| Step | DDP | DAP (formerly DDU) |
|---|---|---|
| Export clearance | Seller | Seller |
| Import entry and clearance | Seller | Buyer |
| Duty and import VAT or sales tax | Seller | Buyer |
| Unloading at the named place | Buyer | Buyer |
| Risk passes to the buyer | At the named place, ready to unload | At the named place, ready to unload |
One cost sits outside the table: the carrier's brokerage and disbursement fee. Shopify's help page on carriers and shipping terms says the carrier charges this fee, not customs. So it isn't included when you charge duties at checkout. Decide who absorbs it, and write the answer down.
When the destination country won't let a foreign seller clear the goods. The same ICC Academy article notes that some customs authorities require the local importer, the buyer, to handle import clearance. In those countries DDP can't be used, and DAP is the right term.
There is a tax trap too. Trade Finance Global's DDP guide warns that the seller may need to register for import and for VAT or GST in the buyer's country. The seller may also be unable to recover the VAT it pays. If it can't be the importer or can't recover that VAT, the guide says to use DAP instead.
So DDP is a decision per country, and it should be recorded per country.
Try it on one of your own procedures.
Record a process once, AI writes the structured SOP. 3 free SOPs, no credit card.
Charging duties and import taxes at checkout is how a Shopify store sells on DDP terms. Read Shopify's considerations page for the feature before you switch it on. These are the limits that catch people out:
Write down where the setting lives: which shipping profile and which zone carries DDP. "We turned duties on" is not something anyone can find later. Our post on how Shopify shipping rates work covers profiles and zones.
A short list. Through Shopify's own carrier accounts, you can buy DDP labels for Canada Post (US destinations only), DHL Express, DHL Express Canada and DHL eCommerce. With any other carrier on Shopify's accounts, you can't buy a label for an order where duties were collected. You have to buy the label elsewhere or refund the order.
The label step matters more than it looks. Shopify's help page on additional tasks for duties sets out four rules:
Your outbound procedure depends on a carrier list you don't control. Put the list in the SOP, with the date you last checked it.
Write one procedure per term, not one general customs document. The steps differ exactly where money and liability move.
The container receiving checklist picks up from there, including what to do when customs has opened and resealed a container.
A DDP quote can still be the better deal. Our supplier onboarding SOP explains why a cheap EXW quote often loses once you pay for everything in between.
Shopify also sets an audit step. When the first carrier invoice arrives, compare what checkout charged with what customs charged. Then repeat it on a schedule. Name the person and the month.
Quietly, and in a set order. The broker changes first. Then the login screen in the SOP's screenshots stops existing. Then the person who knew the workaround leaves, and the document still reads as if nothing happened.
Four events should force a re-check of a customs procedure:
None of these sends an email to your documentation. That gap between the process and the document is SOP drift. The failure to plan for is not a wrong definition of DDP. It is a correct definition attached to a broker you stopped using in March.
Six checks from the seal to the stock count, including a container that customs opened on the way.
Pick one lane this week. Write down who signs the entry, who pays the duty, who pays the brokerage fee and which carrier account prints the label. Add the date you last checked it against a real invoice. That one page beats a general Incoterms explainer every time.
ReccordSOP turns a screen recording into a step-by-step SOP, with a screenshot for each step and the clicked button highlighted. Re-record the same task later and it compares the new recording with the existing SOP, flagging the steps that changed instead of overwriting them. It documents a process. It doesn't watch your store settings, so the invoice comparison still needs a person.
The free plan covers 3 SOPs in total. Team is $19 per user per month, with a 3-user minimum. Start with the label-printing step for your DDP orders: record it on reccordsop.com.
Under DDP (Delivered Duty Paid), the seller clears the goods into the buyer's country and pays the duties and taxes. Under DDU (Delivered Duty Unpaid), the buyer does both. DDU is an old name: since the 2010 Incoterms rules, the same buyer-pays term has been called DAP (Delivered at Place).
The buyer pays customs duty under DAP, along with import clearance and import VAT or sales tax. Shopify notes the customer also usually pays the carrier's brokerage fee on delivery. The seller still arranges and pays for transport to the named place, and carries the risk until the goods arrive there ready to unload.
No. Shopify lets you choose DDP or DAP for each country or region, but not both for the same one. Duties are only calculated on international shipments, and a transaction fee applies to every checkout that calculates them, test orders included.
Check it when the first carrier invoice arrives, by comparing what checkout charged with what customs charged. Then repeat that on a schedule. Review it again whenever a broker, forwarder, 3PL or carrier changes, because none of those changes updates the document by itself.
3 free SOPs to start. No credit card required. See if drift detection keeps your docs honest.
Start for freeI built ReccordSOP after watching too many DTC ops teams lose months to undocumented workflows. These SOPs are battle-tested with Shopify operators running $1M to $50M brands.
Last reviewed October 27, 2026
Six checks, from the seal to the stock count in Shopify, each with one piece of proof. Plus the three screens that make last quarter's version wrong.
A rare-event process is the one that needs an SOP most. Six phases, five owners, one graduation gate.
A shipping rate nobody has touched in months can still start charging the wrong amount. The rate did not change. Something it reads from did.
We use essential cookies for sign-in and a small amount of analytics to improve the product. Privacy policy.