Bill of Lading

Author: Accord Project

bill-of-lading@0.1.0 Clause ^0.22.0 247f13f3f221ec7e70493e9ed619672b86bd7840b378544db9695b37b82501f4

Bill of Lading for transfort of goods via ocean vessel

Download Archive Download Compiled Archive Open in Template Studio Open in VSCode Web

Bill of Lading

This clause defines a Bill of Lading for the transport of goods via an ocean vessel.

References:

  • https://www.icecargo.com.au/bill-of-lading/
  • https://www.advancedontrade.com/2015/03/how-to-complete-consignee-and-notify-fields-of-a-bill-of-lading.html

Template Text

"MAERSK LINE"

Bill of Lading for Ocean Transport or Multimodal Transport

Non-negotiable unless consigned TO ORDER

ORIGINAL

SCAC: "MAEU"

B/L Number: "MAEU-ABC12345678"

Booking Number: "2021030264747"

Shipper

"CLAUSE TECHNOLOGIES"

Consignee

"TO ORDER"

Notify Party

"SAME AS CONSIGNEE"

Exporter References: ""
Onward Instructions: ""

Vessel: "Lagua"
Voyage number: "725"

Port of Loading: "Shanghai, China"
Port of Discharge: "Brisbane, Australia"

Place of Receipt: "Brisbane, Australia"
Place of Delivery: "Brisbane, Australia"

Freight

  1. Amount: 15 TONNE Package: CONTAINER Description: "Corn" NMFC: "" Freight Class: CLASS_400 Hazardous: NO

  2. Amount: 35 TONNE Package: CONTAINER Description: "Wheat" NMFC: "" Freight Class: CLASS_400 Hazardous: NO

Declared value: 2500.00 USD.

# "MAERSK LINE"

## Bill of Lading for Ocean Transport or Multimodal Transport
### Non-negotiable unless consigned TO ORDER
## ORIGINAL

SCAC: "MAEU"

B/L Number: "MAEU-ABC12345678"

Booking Number: "2021030264747"

### Shipper

"CLAUSE TECHNOLOGIES"

### Consignee

"TO ORDER"

### Notify Party

"SAME AS CONSIGNEE"

Exporter References: ""  
Onward Instructions: ""

Vessel: "Lagua"  
Voyage number: "725"

Port of Loading: "Shanghai, China"  
Port of Discharge: "Brisbane, Australia"

Place of Receipt: "Brisbane, Australia"  
Place of Delivery: "Brisbane, Australia"

### Freight

1. Amount: 15 TONNE Package: CONTAINER Description: "Corn" NMFC: "" Freight Class: CLASS_400 Hazardous: NO
1. Amount: 35 TONNE Package: CONTAINER Description: "Wheat" NMFC: "" Freight Class: CLASS_400 Hazardous: NO

### Declared value: 2500.00 USD.
# {{accountName}}

## Bill of Lading for Ocean Transport or Multimodal Transport
### Non-negotiable unless consigned TO ORDER
## ORIGINAL

SCAC: {{scac}}

B/L Number: {{bolNumber}}

Booking Number: {{bookingNumber}}

### Shipper

{{shipper}}

### Consignee

{{consignee}}

### Notify Party

{{notifyParty}}

Exporter References: {{exportReferences}}  
Onward Instructions: {{onwardInstructions}}

Vessel: {{vessel}}  
Voyage number: {{voyageNumber}}

Port of Loading: {{portOfLoading}}  
Port of Discharge: {{portOfDischarge}}

Place of Receipt: {{placeOfReceipt}}  
Place of Delivery: {{placeOfDelivery}}

### Freight

{{#olist commodities}}
Amount: {{quantity}} {{unitOfMass}} Package: {{packageType}} Description: {{description}} NMFC: {{nmfcCode}} Freight Class: {{freightClass}} Hazardous: {{hazmat}}
{{/olist}}

### Declared value: {{declaredValue}}.
{
    "$class": "org.accordproject.billoflading.BillOfLadingClause",
    "accountName": "MAERSK LINE",
    "scac": "MAEU",
    "bolNumber": "MAEU-ABC12345678",
    "bookingNumber": "2021030264747",
    "exportReferences": "",
    "onwardInstructions": "",
    "shipper": "resource:org.accordproject.organization.Organization#CLAUSE%20TECHNOLOGIES",
    "consignee": "resource:org.accordproject.organization.Organization#TO%20ORDER",
    "notifyParty": "resource:org.accordproject.organization.Organization#SAME%20AS%20CONSIGNEE",
    "vessel": "Lagua",
    "voyageNumber": "725",
    "portOfLoading": "Shanghai, China",
    "portOfDischarge": "Brisbane, Australia",
    "placeOfReceipt": "Brisbane, Australia",
    "placeOfDelivery": "Brisbane, Australia",
    "commodities": [
        {
            "$class": "org.accordproject.billoflading.Commodity",
            "quantity": 15,
            "unitOfMass": "TONNE",
            "packageType": "CONTAINER",
            "description": "Corn",
            "nmfcCode": "",
            "freightClass": "CLASS_400",
            "hazmat": "NO"
        },
        {
            "$class": "org.accordproject.billoflading.Commodity",
            "quantity": 35,
            "unitOfMass": "TONNE",
            "packageType": "CONTAINER",
            "description": "Wheat",
            "nmfcCode": "",
            "freightClass": "CLASS_400",
            "hazmat": "NO"
        }
    ],
    "declaredValue": {
        "$class": "org.accordproject.money.MonetaryAmount",
        "doubleValue": 2500,
        "currencyCode": "USD"
    },
    "clauseId": "830f56e0-d2f4-455b-8bb4-07030e1f7433",
    "$identifier": "830f56e0-d2f4-455b-8bb4-07030e1f7433"
}

Template Model

namespace org.accordproject.billoflading

import org.accordproject.contract.* from https://models.accordproject.org/accordproject/contract.cto
import org.accordproject.runtime.* from https://models.accordproject.org/accordproject/runtime.cto
import org.accordproject.time.Duration from https://models.accordproject.org/time@0.2.0.cto
import org.accordproject.money.MonetaryAmount from https://models.accordproject.org/money@0.2.0.cto
import org.accordproject.organization.Organization from https://models.accordproject.org/organization.cto
import org.accordproject.value.UnitOfMass from https://models.accordproject.org/value.cto

enum PackageType {
  o BAG
  o BALE
  o BARREL
  o BASKET
  o BATTERY_CORROSIVE_WET
  o BIN
  o BOX
  o BUNCH
  o BUNDLE
  o CABINET
  o CAN
  o CARBOY
  o CARRIER
  o CARTON
  o CASE
  o CASK
  o CONTAINER
  o CRATE
  o CYLINDER
  o DRUM
  o LOOSE
  o OTHER
  o PACKAGE
  o PAIL
  o PALLET
  o PIECES
  o PIPE_LINE
  o RACK
  o REEL
  o ROLL
  o SKID
  o SPOOL
  o TANK
  o TUBE
  o UNIT
  o VAN_PACK
  o WRAPPED
}

enum FreightClass {
  o CLASS_50
  o CLASS_55
  o CLASS_60
  o CLASS_65
  o CLASS_70
  o CLASS_775
  o CLASS_85
  o CLASS_925
  o CLASS_100
  o CLASS_110
  o CLASS_125
  o CLASS_150
  o CLASS_175
  o CLASS_200
  o CLASS_250
  o CLASS_300
  o CLASS_400
  o CLASS_500
}

enum Hazardous {
  o YES
  o NO
}

concept Commodity {
  o Integer quantity
  o UnitOfMass unitOfMass
  o PackageType packageType
  o String description
  o String  nmfcCode optional // National Motor Freight Classification (NMFC) number associated with the commodity classification.
  o FreightClass freightClass optional
  o Hazardous hazmat optional
}

/**
 * An (To Order) Bill of Lading is a legal document that gives the
 * holder of the bill of lading legal title to the goods described
 * Refs: https://www.icecargo.com.au/bill-of-lading/
 * https://www.advancedontrade.com/2015/03/how-to-complete-consignee-and-notify-fields-of-a-bill-of-lading.html
 */
asset BillOfLadingClause extends Clause {

  o String accountName

  o String scac // The Standard Carrier Alpha Code (SCAC) assigned to identify the carrier.
  o String bolNumber
  o String bookingNumber
  o String exportReferences optional
  o String onwardInstructions optional

  --> Organization shipper
  --> Organization consignee optional // identifier should be "TO ORDER" or "TO BEARER" if this is a negotiable BoL
  --> Organization notifyParty optional

  o String vessel
  o String voyageNumber

  o String portOfLoading
  o String portOfDischarge

  o String placeOfReceipt optional
  o String placeOfDelivery optional

  o Commodity[] commodities
  o MonetaryAmount declaredValue
}

Model Dependencies

Template Logic

Find the full logic for this template on on GitHub.

State Types

Type Sample JSON

Request Types

Type Sample JSON

Response Types

Type Sample JSON

Events Types

Type Sample JSON

Technical Integration

Please refer to the Accord Project documentation for how to use a template or integrate it within your application.

View the Latest code for this template on GitHub.