An order is shipping across a border. What has to clear before the warehouse can release it?
The goods need a commercial invoice and packing list that agree, a defensible tariff classification and country of origin, an Incoterm fixing who pays duty and tax, and a completed restricted-party and export-control screen that blocks release rather than warning after despatch.
What the interviewer is scoring
- Does the candidate treat screening as a gate that fails closed rather than an audit run afterwards
- Whether tariff classification is recognised as a stored judgement with an owner and an audit trail
- That an Incoterm is understood as allocating cost and risk, not as a shipping speed
- Can they design for false positives without making the manual queue the bottleneck for every order
- Whether they account for rescreening when lists change after an order was cleared
Answer
The documents, and the fact that somebody signs them
A cross-border consignment moves on paperwork that makes assertions to a state. The commercial invoice states what the goods are, how many, what they are worth, who is selling and who is buying, where they were made, and on what commercial terms. The packing list states how that is physically distributed across cartons and pallets, with weights and dimensions. A transport document, whether an air waybill or a bill of lading, evidences the carriage contract. Depending on the goods and the route there may be a certificate of origin, licences, or health and safety certificates.
The systems point is that these documents must be generated from the same data as the shipment rather than assembled separately. When the invoice says twelve units and the cartons contain eleven, that is a customs discrepancy rather than a fulfilment one, and it can hold the consignment at a border for days. The common architectural mistake is generating documents from the order while shipping from the pick result, so a short pick silently creates a mismatch. Documents belong downstream of the packed reality, produced from what went in the box, and the declared value follows a written rule tied to the transaction, because understating it is fraud and the rule is exactly what an authority asks about years later.
Classification is a judgement that becomes a liability
Every product must be classified under the Harmonized System, the World Customs Organization's nomenclature, which is internationally common to six digits and extended by national tariffs to eight or ten. The classification determines the duty rate, whether a licence or restriction applies, and what preferential treatment the goods may claim under a trade agreement.
Classification is difficult and consequential. Composite goods, textiles by fibre content, anything with embedded electronics, and anything describable under two chapters produce arguable answers settled by rules of interpretation rather than intuition. Getting it wrong in your favour is an underpayment recoverable with interest and penalties, retrospectively across every shipment that used the code.
Which makes the data model prescriptive. A classification is an attribute of the product with an owner, a decision date, the reasoning that supported it and, where obtained, a binding ruling reference from the relevant authority. It is versioned, because tariff nomenclature is revised on a cycle and codes are added, merged and withdrawn, so a shipment's declaration must reference the classification that was valid on its declaration date rather than whatever the product record says today. Systems that store a single mutable code column cannot reconstruct their own past declarations, which is precisely what an audit requires.
Country of origin is a separate determination sitting beside it. It is not where the goods shipped from, and for anything assembled from parts across several countries it is decided by substantial-transformation or value-added rules, sometimes differently for preferential and non-preferential purposes. Claiming a lower rate under a trade agreement is a claim you must be able to substantiate.
Duties, taxes and who is paying them
The Incoterm on the sale allocates cost and risk between seller and buyer, and it is the field that most often causes an argument at delivery. Under delivered duty paid the seller bears the import duty and clearance, so the customer sees a total price with no surprises and the seller carries the compliance burden of being the importer. Under delivered at place the seller carries transport to the destination but the buyer is responsible for import charges, which means a courier asking a consumer for money on the doorstep. Under ex works the buyer takes on nearly everything from the seller's premises.
None of those is right in general. What is wrong in every case is a checkout that quotes one figure and a border that charges another, because the resulting refusals and returns cost more than the duty did. So selling cross-border to consumers means calculating landed cost at checkout: goods value, freight, duty derived from classification and origin, and import tax under the destination's rules, including the low-value regimes and import schemes many jurisdictions now operate in place of a simple exemption. Those rules change by destination, which is a strong argument for treating rates and thresholds as subscribed reference data rather than encoded logic. And the assessed duty will sometimes differ from your calculation because a classification was challenged or a value adjusted, so it needs reconciling against the broker's invoice the way freight charges are.
Screening is a gate, and it has to fail closed
Restricted-party screening checks the parties to a transaction against sanctions and denied-party lists maintained by governments and supranational bodies. Export control asks a separate question about the goods themselves, whether their technical characteristics make them controlled and whether the destination and end use require a licence. Both are legal obligations, and both apply before the goods move.
The design consequence is that screening is a blocking step in fulfilment, not a report someone reads. The order enters a state where it cannot be allocated or picked until the screen clears, and the failure mode of the screening service is to hold rather than to pass. That is the opposite of the usual availability instinct, and stating it explicitly is what an interviewer is listening for: a screening service that is down must stop shipments, because a shipment released untested is a violation whereas a delayed one is an inconvenience.
Matching is fuzzy, because names transliterate, companies restructure and addresses are entered inconsistently, so you tune for recall over precision and accept false positives. That creates a manual review queue, and its throughput becomes your fulfilment throughput unless it is managed: thresholds for auto-clear and auto-block with review only in the band between, recorded dispositions so the same customer is not re-adjudicated every order, and queue age treated as an operational metric. A cleared decision is stored with its evidence and its reviewer, because the review is the audit artefact. And a block never quietly cancels an order, since telling a customer why they were blocked can itself be prohibited, making the customer-facing message a designed piece of wording rather than an error string.
The hold is a state, and a clean order can become dirty
Two things get missed by candidates who otherwise answer well.
The first is that a hold is a modelled state with defined behaviour, not an absence of progress. Held stock is still allocated and therefore unavailable to other orders, so accumulating holds quietly starve availability. The promise date is already unachievable and the customer should be told something. And a hold released three days later re-enters a fulfilment flow whose wave, load and carrier booking have all moved on, so re-entry needs a real path rather than an assumption.
The second is that clearance is not permanent. Lists are updated continuously, and a party who was clean when the order was screened may not be by the time it ships, or by the time a subsequent order arrives. So screening happens at more than one point, at order capture and again before release, and a list update triggers a rescreen of everything not yet despatched. Which raises the harder case: a hit that lands on a consignment already in transit is not a fulfilment problem at all, it is an interception and disclosure problem, and knowing that it is handled by legal and compliance rather than by a retry is the mark of somebody who has been near a real incident.
Underneath all of it is the same divergence that runs through the domain. The declaration is a statement about goods you are not looking at, derived from product data maintained by someone else and a pick that may have substituted an item, and the border compares your statement to the physical carton. Detecting that mismatch at the packing bench, where it is cheap, is the whole game.
Screening and classification are the two places in a fulfilment flow where being fast and wrong is worse than being slow, so they belong in the release path with a defined behaviour for the case where the answer is not available.
Likely follow-ups
- A screening hit lands on an order that has already been picked and manifested. What happens to it?
- How would you model landed cost so the figure the customer saw at checkout is the one they are charged?
- A sanctions list is updated overnight. Which of yesterday's orders do you revisit?
- Who in the business owns a classification decision, and what happens when it turns out to be wrong?
Related questions
- How is sanctions screening different from transaction monitoring, and what happens when a payment hits a name on a list?hardAlso on screening6 min
- Two shipments of the same product were declared under different commodity codes. Why does that matter, and whose problem is it?hardAlso on customs4 min
- The operations team says there is no rule for this, they just use judgement. How do you model that?hardSame kind of round: design6 min
- You have been handed a scope and a budget, and the budget cannot buy the scope. What do you put in front of the customer?hardSame kind of round: design5 min
- How do you decide whether to use a managed service or self-host a component, and which cloud costs catch teams out?hardSame kind of round: design6 min
- You have six teams building one product and they keep blocking each other. How do you coordinate the dependencies, and what do you make of frameworks like SAFe?hardSame kind of round: design6 min
- How do you decide whether to build a capability in-house or buy it?mediumSame kind of round: design4 min
- An erasure request arrives and the person's data is in backups, an event stream, a warehouse copy and a training set. What can you honestly delete?hardSame kind of round: scenario7 min