What this add-on does
BazaarKit's free core gives every vendor their own flat postage price on every listing, and charges the buyer one bundled rate per shop. That is per-vendor shipping, and it covers delivery inside the seller's own country.
Sending a parcel abroad is a different decision, so it is a different feature. The International Shipping add-on gives each listing a second, separate price for going overseas — one flat figure that applies everywhere, or a price for each continent. Vendors set it in the product form they already use, directly beneath the domestic price.
Nothing else moves. Domestic orders are untouched, and a vendor who ignores the new checkbox sells at home exactly as before.
The short version: a vendor ticks “Offer international shipping”, picks one worldwide price or fills in the continents they post to, and buyers in those places can buy that item. Buyers anywhere else still cannot.
Why international shipping is opt-in, and never forced
Most marketplace owners want international buyers. Almost none want to force their sellers into it, and they are right to be careful. A first-time seller posting a knitted jumper from Sheffield has a domestic shipping account, a book of stamps and no appetite for a customs form. Switch them into worldwide postage without asking and they either under-price a parcel to Australia and lose money, or quietly stop listing.
So the add-on turns nothing on for anybody. A listing ships abroad only when its vendor has ticked a box and typed a number. Untick it and the listing reverts to domestic-only at once. The BazaarKit vs Dokan Pro comparison sets out what each covers.
How “international” is worked out
An order is international when the buyer's delivery country differs from the seller's own country — an exact country match, not a trade bloc. A seller in France posting to Germany is international, because Germany is not France.
The seller's country comes from their Dokan store address, falling back to your store's base country if that address has none. If either country is unknown — a guest who has not typed an address yet — the order counts as domestic, so a home-country checkout is never blocked by accident.
The two pricing modes
A vendor who has opted a listing in picks one of two modes. They are mutually exclusive, so what you see on the edit screen is what the buyer is charged.
One price worldwide
A single figure for every country outside the seller's own. Right for small, light things where postage does not change much with distance.
Example. A seller in Manchester puts 8.00 in the worldwide box on a silver bracelet. A buyer in Dublin pays £8, and so does a buyer in Tokyo.
Different prices per region
A price for each continent, one row at a time. There are six: Europe, North America, South America, Asia, Africa and Oceania. Each can be given a price or left empty.
Example. The same seller lists a heavy wool coat. They put 4.00 against Europe, 9.00 against North America, and leave the rest blank. A buyer in Spain pays £4. A buyer in Canada pays £9. A buyer in New Zealand is offered no delivery at all, because that seller does not post to Oceania — which is precisely what they said.
The continents are WooCommerce's own, so the country list is the one your store already uses. Antarctica is not offered, and WooCommerce counts Europe geographically, so Great Britain, Russia and Türkiye fall under Europe.
Blank is not zero
This is the one thing to make sure your vendors understand.
Leaving a region blank means you do not post there. No shipping price is offered to buyers in that part of the world, and they cannot buy the item. That is a normal, respectable answer.
Typing 0 means you post there free of charge. The buyer pays nothing for delivery and the parcel still has to be sent. Zero is a real price, not an empty box.
A seller who means “not Asia, thank you” must leave the Asia row empty. A seller who types 0 into it has promised free postage to Asia, and will find out when the order arrives.
A blank row is dropped when the listing is saved; a zero is kept. The same goes for the worldwide box — an opted-in listing with a blank price stores no international shipping at all, rather than free worldwide postage.
Say this plainly in your seller guidance. “Leave it blank” is an unusual instruction; most forms treat an empty box as an oversight. Here it is a choice, and the safest one available.
What your vendors see and do
Everything appears in the product form vendors already use, beneath the core's domestic Shipping price box. There is no separate screen to find.
- Tick “Offer international shipping”. Nothing goes abroad until this is ticked.
- Choose a mode. “One price worldwide” uses the single price box; “Different prices per region” uses the continent rows.
- Fill in what applies, in your store's currency. A comma decimal is accepted, so
12,50gives £12.50 rather than an error. - Save. The price takes effect on the next basket.
To stop shipping a listing abroad, untick the box and save — both the worldwide and per-continent prices are removed. Three details worth knowing:
- The domestic default price does not apply abroad. There is no international equivalent of the fallback in BazaarKit → Settings, so an unpriced destination is not served.
- Listings priced before the continent rows existed still work. An older single price is read as a worldwide price; there is no migration to run.
- WooCommerce's own product editor shows the checkbox and worldwide price only. Editing there will not wipe per-continent prices a vendor has set.
What buyers see
A buyer whose country is covered sees one extra shipping line for that shop, labelled “International shipping”, with the vendor's price on it. A buyer whose country is not covered gets no shipping option at all for that shop, and WooCommerce stops the checkout there.
Why blocking is the correct behaviour
It looks severe the first time you see it. But if a vendor has not agreed to post to Oceania and no rate exists, the alternatives are to invent a price they never set, or to take the buyer's money for a parcel nobody is going to send. Both are worse than a checkout that politely declines.
The same rule applies inside a basket: every item from that shop must reach the buyer's destination, or the whole shop's package is blocked. The buyer is stopped, and can remove the item that does not travel. Other shops in the basket are unaffected.
Baskets going abroad
When an overseas buyer takes several things from one shop, the rule that governs domestic postage governs the international rate too. Set it once, in BazaarKit → Settings → Multi-item bundle rate:
- Highest per-item rate (the default). Two items priced £4 and £9 to North America come to £9.
- Sum of per-item rates. The same two come to £13.
Quantities count either way. There is deliberately no separate international bundle setting, so domestic and overseas pricing cannot drift apart. The reasoning for picking one is on the per-vendor shipping page.
Your settings
There is very little here, and that is honest rather than coy: the add-on has no settings screen of its own. Every decision is either a vendor's, taken on the listing, or one you have already made for domestic shipping. Three things govern it:
- The on/off switch on BazaarKit → Add-ons. It must be installed, licensed and switched on. Switch it off and the marketplace reverts to domestic-only; vendors' saved prices stay on their listings.
- Multi-item bundle rate in BazaarKit → Settings, shared with the free core.
- Each listing's own prices, set by the vendor.
What to change in WooCommerce
One thing, and it catches almost everybody at least once.
Check WooCommerce → Settings → General → Selling location and Shipping location. If either is limited to specific countries, foreign buyers are stopped before shipping is even considered, and your vendors' international prices will be perfectly correct and completely unused.
Set Selling location to sell to all countries (or a list including the ones you want), and Shipping location to ship to all countries you sell to. This is WooCommerce's own gate; no plugin setting overrides it.
Beyond that, nothing. The free core already keeps a flat-rate method in WooCommerce's catch-all zone so baskets count as shippable, and BazaarKit replaces its rate with the vendor's own. Do not delete that method, and do not build zones per country or per continent.
Check one thing on your vendors instead: every store address needs a country on it (Dokan → vendor → Settings → Store). That country decides which of their orders count as international.
Advising your vendors on pricing
This decides whether international shipping is good for your marketplace or a slow drain on the sellers who try it. Under-pricing overseas postage is the commonest way a small seller loses money on a sale, and they usually find out at the counter.
Price it before listing, not after
The honest number is the one on the courier's website today, for the real weight of the real parcel, to the furthest country in that region. A seller guessing from memory is remembering a domestic price.
Remind them what the price covers
Postage, yes — but also the box, the padding, the tape, the time queuing, and the greater chance of a long journey going wrong. A £9 rate that leaves 40p in a seller's pocket is not a rate, it is a favour.
Per-continent is usually kinder than one worldwide figure
A single worldwide price has to be high enough for the furthest destination, so it over-charges the nearest and quietly loses those sales. A seller in Ireland pricing Great Britain and Australia alike is either subsidising Australia or has priced Britain out.
Blank is a perfectly respectable answer
Nobody has to post everywhere. A seller comfortable with Europe should price Europe and leave the other five rows empty. Say so out loud: six empty boxes read like homework, and sellers who feel obliged to fill them all in are the ones who guess.
Revisit prices, do not set and forget
Postage rates rise, usually once a year. A rate typed eighteen months ago is a discount the seller never agreed to.
How to check it is working
- Confirm the add-on is on in BazaarKit → Add-ons, and shows as active rather than padlocked in BazaarKit → Settings.
- Check WooCommerce → Settings → General allows selling and shipping to the country you are testing with.
- Edit a listing as a vendor: tick “Offer international shipping”, choose Different prices per region, put
4.00against Europe, leave the rest blank, and save. - Add it to a basket with an address in Spain. You should see “International shipping” at £4.00.
- Change the address to Australia. The option should disappear and the checkout should refuse to proceed — the blank Oceania row doing its job.
- Change it back to the seller's own country. The ordinary domestic rate should return.
- Add a second item priced
9.00to Europe and return to Spain. On the default rule the total should be £9.00, not £13.00.
To try it on a marketplace that already exists, the live demo has vendors, listings and a checkout you can sign into as owner, vendor or buyer.
Troubleshooting
“No shipping options were available”
WooCommerce's exact wording varies by version and by checkout, but this is the message people search for. On a BazaarKit marketplace it almost always means one of four things:
- The vendor does not post there. The commonest cause by far, and not a fault — the region was left blank on purpose. Open the listing and look at the continent rows.
- The add-on is off, or the licence has lapsed. Without it the core is domestic-only and every foreign address is blocked.
- WooCommerce is not selling or shipping to that country in Settings → General, which stops the address first.
- One item in the basket does not ship there though the others do. The shop's whole package is blocked; remove the item that does not travel.
A buyer abroad is offered free shipping unexpectedly
Someone typed 0 where they meant to leave the row empty. Clear the box and save.
A vendor ticked the box but buyers abroad still cannot check out
Check a price was actually saved: ticking the box and leaving the price blank stores nothing, on purpose. Then check the mode — “Different prices per region” ignores the worldwide box, and vice versa.
Neighbouring countries are priced as international
That is correct. Every country is its own, so Belgium to the Netherlands is international, priced under Europe. If you want that cheap, the vendor should set a low Europe rate.
A seller's parcels to their own country are blocked
Their store address is probably missing a country, so BazaarKit falls back to your store's base country and treats their home orders as foreign. Add the country to their Dokan store address.
Frequently asked questions
Does every vendor have to ship internationally?
No. International shipping is opt-in per listing. A vendor who never ticks the box carries on selling domestically exactly as before.
What happens if a vendor leaves a region blank?
That listing is not posted there. No shipping rate is offered to buyers in that region, so WooCommerce will not let them check out with that item.
Is entering 0 the same as leaving a region blank?
No. Zero means you post to that continent free of charge. Blank means you do not post there at all.
Can a vendor charge a different price to Europe and to Australia?
Yes. Choose “Different prices per region” and price each continent — £4 to Europe, £9 to North America, nothing to Oceania. The six are Europe, North America, South America, Asia, Africa and Oceania.
Can a vendor set a price for one individual country?
No. Pricing is per continent, or one flat price worldwide. Continents keep the form short enough that sellers actually fill it in.
An EU seller is posting to another EU country — is that domestic or international?
International. It compares the buyer's country with the seller's own, and every country is its own. France to Germany is priced under Europe.
Does this handle customs, duty or import charges?
No. It sets the postage price and nothing else — no customs paperwork, no commercial invoice, no duty calculation.
Are live carrier rates or tracking included?
No. This is flat per-listing pricing: the price the vendor types is the price the buyer pays. No carrier account, no live rates, no weight tables, no tracking.
What happens when someone abroad buys several items from one shop?
The same bundling rule as domestic postage, set once in BazaarKit → Settings. By default the buyer pays the highest item rate in that shop's basket; you can switch it to the sum.
What does the add-on cost?
£5 / $5 per month, cancel anytime. Domestic per-vendor shipping stays free in the BazaarKit core whether or not you buy this.
Where to go next
Let your sellers post abroad, on their own terms.
£5 / $5 per month, cancel anytime. Domestic per-vendor shipping stays free in the core either way — start there, and add this when your sellers are ready.
See pricing Try the live demo