Guide · Choosing a partner

How to choose a China fulfillment partner

Choose a China fulfillment partner on eight structural questions, not on a rate card: who owns the goods, who touches your procurement money, when the binding quote is produced, what evidence you get, how systems connect, what happens to a mixed order, who classifies your cargo, and how exceptions are decided. Rates change; these answers do not.

A vendor’s answers to these eight determine what your operation feels like a year in — long after whatever rate you were quoted at signup has been renegotiated. Each question comes with why it matters and a way to verify the answer on any vendor, and WooliiPorter answers all eight, stated so you can hold us to them.

Last updated: 2026-08-01 · The framework is vendor-neutral, and WooliiPorter answers all eight questions in it, stated so you can hold us to them. · Reviewed by Alice Zhou

The eight questions, with verification

DimensionWhy it mattersHow to verify any vendorWooliiPorter’s answer
Goods ownershipIf the vendor owns or sources the goods, your product decisions inherit their catalog, their factory relationships and their margins.Ask: can I use my existing suppliers, unchanged? Then read the terms for any transfer of title, in either direction.Goods stay merchant-owned throughout, in both the forwarding and the stocked path. WooliiPorter never takes title.
Procurement moneyA partner who pays your suppliers for you controls your supply-chain cash and blurs accountability when a shipment is short.Ask who places supplier orders and whose money pays them. Get the payment flow in writing, not in a call.You buy from and pay suppliers directly. WooliiPorter never handles the purchase payment and is not a buying agent.
Quote transparencyAn estimate quoted before goods are measured becomes a dispute after. The billable number has to come from the parcel that actually travels.Ask when the binding quote is produced, and whether the final bill reconciles against it line by line. Ask to see a sample settlement.Quotes are generated from packed weight and dimensions against the live lane; the settlement is fee line items reconciling against that quote.
Operating evidenceWithout intake photos and measurement records, every damaged or missing item becomes your word against theirs, months later.Ask what is recorded at receiving and whether you can open it per parcel — not as a monthly summary, not on request.Every inbound parcel is scanned, photographed and measured at intake, with contents recorded; the evidence is attached to a parcel record you can open.
Integrations and APIManual order entry does not scale, and a vendor without an API cannot sit inside an automated stack or be operated by an agent.Ask for public API docs and a sandbox before committing. Check whether the store connector is published anywhere you can inspect it.WooCommerce plugin published on WordPress.org (0.7.0), Merchant API V1 with HMAC-signed webhooks, and an optional standalone MCP server. Sandbox keys open on approval.
Mixed-order handlingOrders mixing stocked and unstocked lines are where silent guessing costs money — split shipments, double freight, a customer waiting on two boxes.Ask what happens when one order needs both stock and forwarding. “We handle it” is not an answer; ask where the decision is recorded.Mixed orders pause for a recorded merchant decision — forward all, wait for stock, or re-evaluate inventory. They are never split automatically.
Cargo classification authorityBattery and cosmetic cargo on a general-cargo route is how parcels get seized and fined. Whoever decides the classification owns that risk.Ask who sets the cargo type and whether the record names them. A vendor classifying from your store category is classifying from free text.The warehouse operator who opens the box sets it, and the record stores who confirmed it and when. Declarations and store categories only pre-fill the screen.
Exception processWrong items arrive, parcels go missing, routes close. What matters is whether exceptions follow a process with an audit trail or someone’s inbox.Ask how an exception is raised, who decides, and where the decision is stored. Ask to see one from last month.Exceptions are flagged at intake, routed through an approval-gated review, and the decision stays linked to the order record.

No transit-day or rate comparison appears here on purpose: both depend on route, season and your parcel pattern, so a number quoted without those conditions is not a claim anyone can stand behind. A transit promise is checkable only in one form — a range banded from measured deliveries on a named lane and channel, frozen on the order, with attainment tracked against it. Fee structure is covered in What China fulfillment actually costs.

Verify our answers without talking to us

A framework a vendor cannot be checked against is a sales page with a table in it. Five of these six rows are public artifacts — inspect them before you spend a call on us.

ClaimThe artifact that proves or disproves itWhere it lives
The store connector is real and reviewedA listing in the WordPress.org plugin directory, with a version, a changelog and a download you can hash.wordpress.org/plugins/wooliiporter-fulfillment — currently 0.7.0. The directory is distinct from the WooCommerce Marketplace, and the plugin is not represented as Marketplace approved.
The API is documented, not promisedPublic reference pages listing every operation, its parameters, its error codes and its webhook events.https://woolii.com/developers — including the signature scheme, the idempotency contract and the full error table.
Pricing structure is stated even where rates are notA published fee structure with billing units, plus a stated list of fees not charged.https://woolii.com/guides/china-fulfillment-cost-breakdown for people, https://woolii.com/pricing.md for machines.
The company is a real entityA named legal entity and jurisdiction, and a publisher profile tied to the distributed software.WOOLII, LLC (Newark, Delaware); publisher profile at profiles.wordpress.org/wooliiporter.
Claims about status are verifiableA vendor linking a current, public distribution surface.The Shopify app is listed on the Shopify App Store and links directly to its listing.
Quoting behaviour is what was describedA sandbox order taken through to a packed quote and a settlement, compared against the estimate.A sandbox key after approval. This is the only row on the list that requires an account — deliberately, because it is the only one that involves your data.

Six answers that should make you ask a second question

None of these prove a vendor is bad. Each one means the interesting information is one question further down, so each answer below is paired with the question to ask next.

SignalWhat it usually meansAsk this next
A per-kg rate quoted before any discussion of your destinationsThe rate is either a headline for the cheapest lane or it will be adjusted once real parcels arrive.“Which destination, service level and cargo type is that rate for, and what is the rounding increment?”
“We can ship anything”Nobody can. Destination restriction rules make some items prohibited, some restricted and some conditional on documents.“Show me what happens in your system when an item is prohibited at the destination.”
A single delivery-day figure quoted before your lane is knownTransit varies by route and carrier channel, so an unconditional number is a marketing figure. The credible form is a range banded from measured deliveries on your specific lane and channel, set conservatively at the upper bound, and frozen on the order at booking — so it can be checked against the actual delivery date.“What deliveries is that range banded from, is it frozen on my order when I book, and what happens to a channel whose measured attainment falls below the promise?”
Prep quoted as a single bundled feeYou cannot audit which operation you paid for, and you cannot tell when one was skipped.“Can I see a settlement where each prep service is its own line item?”
Storage billed as a monthly number with no movement trailThe storage bill and your inventory view are being computed from different things, which is how they drift.“Is storage derived from the same movement ledger that produces my stock levels?”
Cargo type taken from your product categoryStore categories are free text. One headphone category holds units with cells and units without.“Who physically confirms cargo type, and does the record name them?”

Common questions

What should I look for in a China fulfillment partner?

Eight structural properties: goods stay yours, they never touch your supplier payments, the binding quote comes from packed measurement, intake evidence is per parcel and openable, there is a documented API and a sandbox, mixed orders pause for your decision rather than being split, cargo type is confirmed by someone who opened the box, and exceptions follow a recorded process.

Should I just pick the cheapest per-kg rate?

A per-kg rate is one input into landed cost, and it is the easiest number to make look good by moving cost elsewhere — handling fees, dimensional rounding, storage minimums, bundled prep. Compare fee structures and billing units instead, and ask for a sample settlement on a realistic shipment.

Is a big 3PL always safer than a smaller operator?

Scale helps with capacity, but the eight questions here are structural rather than size-based. A large vendor that takes title to goods, quotes before measurement or classifies cargo from a store category carries exactly those risks at larger scale.

What questions expose a vendor who is guessing?

Ask what happens when an item is prohibited at the destination, who confirms cargo type and whether the record names them, and whether storage is derived from the same ledger as inventory. Each has a mechanical answer if the mechanism exists, and a reassuring paragraph if it does not.

How does WooliiPorter score on its own framework?

WooliiPorter answers all eight, and four of the answers are artifacts you can check without talking to us: the plugin listing on WordPress.org, the public API reference, the published fee structure and the machine-readable pricing file. Only the sandbox needs an account, because it involves your data.

How should transit days and rates be compared between vendors?

Compare them on your own route, season and parcel pattern, because all three move the number — a quoted average describes someone else’s shipment. For transit specifically, test the form of the claim rather than its size: a credible promise is a range banded from measured deliveries on your lane and carrier channel, set at the conservative upper bound, and frozen on the order at booking so it can be checked against the actual delivery. Then ask how attainment is monitored and what happens to a channel that stops meeting its band — a number nobody is accountable for is not a promise. Fee structure is the part that does not move with the route; the cost breakdown guide sets out all six layers.

Run the framework against us

A workflow review walks your real parcel pattern through each of the eight points; sandbox access lets you verify the answers instead of trusting this page.

Request a workflow review