At Cryptodus, we truly believe in the value of Blockchain. We began life as an ICO advisory and software engineering company, and having seen traditional businesses shake off their fears about this technology, we gradually shifted our mindset to blockchain for enterprise. We’ve seen the way forward for us is real world use-cases for our clients to transform their businesses.

We recently became a Certified NEM Blockchain Service Partner. NEM provides easy-to-use SDKs (software development kits) and great blockchain infrastructure. Those reasons, among a number of others, were convincing enough for us to build this product on NEM.

The business case

Moving goods from point A to point B has a lot of complexity. Let’s take a look at the movement of shoes as cargo from China to Lithuania. Even though it sounds simple, the process is pretty complex with a lot of paperwork (yes, still paper) used in the whole process:

China: Freight forwarder creates the shipping order.

China: Seller loads the goods into the container and hands over the ownership to the carrier.

China: Carrier brings the container to port and hands over the ownership to the container shipping company (e.g. Maersk).

China: Customs approve the shipping.

China to Lithuania. Shipping…

Lithuania: Customs approves the import of goods.

Lithuania: Container shipping company hands over the goods to carrier.

Lithuania: Carrier hands over the goods to buyer.

DONE! This is just a high-level process description. There are even more parties involved (e.g. insurance, regulatory institutions etc.).

The key problem is that everything is currently being stored in closed databases by each company’s internal system. Every hand over requires manual input by parties on both sides including: customs and logistics managers, carrier and freight forwarder, shipping company and freight forwarder, etc. A huge amount of paperwork is being generated and transferred during each step. As a result, in case of unforeseen circumstances such as: loss of cargo, late delivery, or any other disputes, it’s hard to have a single source of truth that would allow for a fully automated problem-solving process.

The Solution

We can utilise technology by creating a single source of truth for the whole process in a decentralised way. In doing so, there is no single entity controlling all the data, nor a single point of failure — this is where the blockchain steps in. Blockchain provides a full tamper-proof log of actions, timestamps and confirmation tracing directly on a shared ledger. The key is to have the process of parcel hand over and proof of delivery (POD) verifiable on the blockchain for all parties involved.

The PoC (Proof of Concept)

Business logic

For the PoC we decided to reduce the overall scope and implement a solution with the following flow:

Logistics manager creates a shipment order.

Ownership is transferred to the carrier with customs approval.

Upon delivery, the carrier initiates the delivery process which requires confirmations from the buyer and an IoT location sensor.

Proof of delivery (POD) verification is triggered and the logistics manager — together with their billing department — verifies the full trace and initiates the payment process.

Technical solution

Key elements:

NEM Blockchain — for decentralised data storage.

IPFS — for decentralised document storage.

Node.JS for backend and API.

High-level scheme:

A NEM account is generated for each parcel and is used as a representation of cargo on the blockchain. A transaction payload message is used to store key data including: order id, delivery location, link to documents stored on IPFS. The solution utilizes NEM multi-signature accounts that requires N out of M (e.g. 1 out of 3) confirmations to initiate certain transactions (e.g. confirmation of Customs broker and Logistics manager to hand-over parcel to container shipping company). NEM mosaics are used as confirmation tokens (e.g. IoT sensor transferring “location_confirmed” mosaic in the case when location of the current coordinates and delivery coordinates match). Aggregated bonded transactions enable bonded transactions that would require signatures of all parties for a transaction to happen (e.g. to complete delivery Carrier initiates the transaction that requires IoT sensor to transfer “location_confirmed” mosaic and receiver to transfer “parcel_received” mosaic).

A few front-end screens

Parcel creation.

Parcel view.

Final step for verification.

The value

By taking advantage of this solution, companies can easily test the Blockchain via an integration through an API. They can then start interacting directly with the Blockchain through their existing systems. Implementation costs are surprisingly low, as it does not require custom integrations with each party. As a result, a shared and tamper-proof ledger is maintained to log and track the whole shipping process.

What’s next?

A solution like this can be introduced in parallel with existing systems and act as a duplicate log during a pilot o the project. Once the value is clear and all parties are feeling comfortable with the solution, further implementation stages would be completed.

Want to learn more about the Blockchain? Let’s connect on Linkedin: https://www.linkedin.com/in/lkairys/

Interested in the solution? Feel free to engage my colleague Ieva (ieva@cryptodus.com).