That's not programmable today, but may be in the future.
Presumably the shipment has a series of checkpoints, which add some amount of traceability. There's also the potential for insurance for blockchain contracts.
I only recently learned about oracles, but I suspect we're only getting started on unlocking the potential of blockchain.
If there are oracles making the progress at each checkpoint along the way available from the blockchain, and insurance contracts for potential disruptions at each stage, your contract can ensure payment on delivery, and the supplier can be insured against any disruptions.
Who operates those checkpoints? Isn't there going to be some sort of implicit trust there? Even if somehow you built a machine that executes instructions that is verified on the blockchain, how are you going to make sure that machine's firmware is secure?
edit: I think this is a valid thing to tackle potentially as a company, but right now it seems impossible.
Presumably the shipment has a series of checkpoints, which add some amount of traceability. There's also the potential for insurance for blockchain contracts.
I only recently learned about oracles, but I suspect we're only getting started on unlocking the potential of blockchain.
If there are oracles making the progress at each checkpoint along the way available from the blockchain, and insurance contracts for potential disruptions at each stage, your contract can ensure payment on delivery, and the supplier can be insured against any disruptions.