Assume Client A wants to sell a package to client B.

How should I write down a smart contract that prevents from B to receive the package while being refuse to pay in a claim that he isn't receive anything? (B is cheating)

In another word, How can I link with the action of a real(physical) transfer of item\package, and digital transfer of money? (Does it must rely on a physical sensor of the delivery?)

A good contract reference/solutions would be appreciated.


You can use information from the delivery company on their website, you will need to use an Oracle service or create your own. The service basically checks the id or the purchase and, for instance, set a variable to true in the contract, if the delivery company indicates that the package was delivered.

From that moment on, if A request the money from the contract it will be delivered if the variable indicating the successful delivery is set to true, or if B confirms to reception of the package.

This, of course, implies that the service (third party) is trustable.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.