Bill of Lading SI Conformance for Carriers

This page provides a step-by-step guide for measuring the conformance of a carrier application with the Shipping Instructions module of the DCSA Bill of Lading 3.0.0 standard.

To access all conformance documentation, return to the DCSA Conformance page.

 

Create and configure the sandbox

Use the instructions in the Conformance Sandboxes page to create a sandbox with the following parameters:

Use the instructions in the Conformance Sandbox Configuration page to configure:

  • how the DCSA synthetic shipper running in the sandbox will make API requests to your carrier application
  • how your carrier application will send notification API requests to the DCSA synthetic shipper running in the sandbox (if you are implementing notifications at this time).

 

Run each scenario

Read the Conformance Scenarios page to understand the key concepts involved in executing DCSA conformance scenarios to measure the conformance of your application with the implemented DCSA standard.

Start each scenario from the sandbox home page that is supported by your application at this time, and perform each action as explained in the general scenario page above and illustrated in the example below.

Scenario actions use the name of the use cases from the Bill of Lading 3.0.0 State Transition Diagram.

 

Example SI scenario run

This is a step-by-step example of running the most common SI scenario:

  • UC1 (shipper submits shipping instructions)
  • UC14 (carrier confirms the shipping instructions completed)

 

Supply scenario parameters

As soon as you start the scenario, you will be prompted to supply the scenario parameters with which your application can run this scenario.

Copy the example JSON parameters into the text area below, and adjust each attribute to a value that would cause your application to accept a shipping instructions requests sent by the DCSA synthetic shipper running in the sandbox:

 

UC1: Shipper submits shipping instructions request

As soon as you submit the scenario parameters, the DCSA synthetic shipper running in the sandbox will use the parameters to build and submit a shipping instructions request to your application.

If your application has not yet processed the shipping instructions request and sent the corresponding notification to the shipper, the intermediate scenario status will be displayed as follows:

Once your application has processed the shipping instructions and sent the notification, click "Refresh status" to reflect the updated scenario status, which should look like this:

Note: For this step and for every other step involving notifications, if your application does not yet send notifications, you can complete the action without the notification being sent, and the corresponding checks will continue to be marked with a grey question mark indicating a missing HTTP exchange.

Press "Action completed" and confirm to complete step UC1.

You will see temporary notifications indicating that the orchestrator is waiting for the DCSA synthetic shipper to perform "GET", and then the shipper is waiting for your carrier application to respond. If your application responds as expected, you should see the updated scenario status as follows:

Press "Action completed" again and confirm to complete the GET after UC1.

 

UC12: Carrier completes the shipping instructions completed

After completing UC1 and the subsequent GET above, the scenario status indicates that it is your carrier application's turn to confirm the shipping instructions completed with UC14:

Have your application confirm the shipping instructions completed, which should trigger a notification to the shipper, then refresh the status:

Press "Action completed" to complete UC14.

Remember to also press "Action completed" again to complete the GET after UC14, which also completes the entire scenario (otherwise the scenario would still be running and you could not start another one):

Back to the sandbox overview, the scenario is now complete and you can start another scenario, or restart the same one if there were errors that you want to fix in your carrier application and retest: