# Types and Subtypes

Each cargo in the system is assigned a cargo type. In addition, a cargo may be assigned a subtype where applicable.

The cargo type is determined by evaluating the cargo against defined type criteria. The system assesses each criteria in sequence, in the order presented below. The first matching criteria determines the cargo type.

## Cargo Types

#### COA

A COA cargo is connected to a [Contract of Affreightment ](https://docs.dataloy.com/voyage-management-system/step-by-step-guides/chartering/contracts-of-affreightment)through a [COA-line](https://docs.dataloy.com/voyage-management-system/step-by-step-guides/chartering/contracts-of-affreightment/contract-of-affreightment-lines). When a cargo is connected to a CoA, there will be a small chip on the top of the cargo drawer with a quick link to the contract. Read more about [connecting](https://docs.dataloy.com/voyage-management-system/step-by-step-guides/cargoes/maintain-cargoes/cargo-drawer-actions/connect-cargo-to-coa) or [removing](https://docs.dataloy.com/voyage-management-system/step-by-step-guides/cargoes/maintain-cargoes/cargo-drawer-actions/remove-coa-from-cargo) the connection.

#### Internal

When reletting internally, the system generates additional cargoes in order to correctly record incomes to the companies. Internal cargoes either have no subtype, or the [Relet](#relet) subtype.

Read more about [internal reletting here](https://docs.dataloy.com/voyage-management-system/step-by-step-guides/cargoes/maintain-cargoes/cargo-drawer-actions/relet-internally).

#### Forward

A cargo where the number of days between CP Date and Laydays Cancelling is greater than the number of days set on the [Forward Cargo Threshold](https://docs.dataloy.com/voyage-management-system/setup/system-settings/general#breakdown-of-the-available-settings) System Setting is marked as Forward. If either date is missing, or if the threshold is set to 0, the cargo will never be set as Forward.

#### Spot

Any cargo that does not meet any of the criteria for the types above, are marked as Spot.

## Cargo Subtypes

#### Has Transfer and Transfer

A **cargo transfer** is a type of [transshipment](https://docs.dataloy.com/voyage-management-system/step-by-step-guides/cargoes/maintain-cargoes/cargo-drawer-actions/transship-and-preship-cargoes) where a cargo is transported on two voyages. The cargo is transported on the first voyage to an intermediate port and then further transported on a second voyage to its final port.

Read more about [Transfer cargoes](https://docs.dataloy.com/voyage-management-system/step-by-step-guides/cargoes/maintain-cargoes/cargo-drawer-actions/transfer-cargoes) here.

#### Preshipment and Transshipment

A **transshipment** is the shipment of cargo to an intermediate destination, then by a different vessel to another destination. It is a type of [relet](https://docs.dataloy.com/voyage-management-system/step-by-step-guides/cargoes/maintain-cargoes/cargo-drawer-actions/relet-cargoes) created from a cargo booking from a particular discharge port at the end of an original booking.

A **preshipment** is another type of relet created from a cargo booking. It is the transportation of a cargo from a location to that cargo's load port in an existing cargo booking.

Read more about [Transshipment cargoes](https://docs.dataloy.com/voyage-management-system/step-by-step-guides/cargoes/maintain-cargoes/cargo-drawer-actions/transship-and-preship-cargoes) here.

#### Relet

A **relet** can be defined as the act of sub-chartering a cargo to other owners to transport. A relet always covers the entire voyage of a relet cargo.

The system distinguishes between three different ways of reletting, with some differences in how costs and commissions are handled.

* [Relet cargo](https://docs.dataloy.com/voyage-management-system/step-by-step-guides/cargoes/maintain-cargoes/cargo-drawer-actions/relet-cargoes)
* [Relet internally](https://docs.dataloy.com/voyage-management-system/step-by-step-guides/cargoes/maintain-cargoes/cargo-drawer-actions/relet-internally)
* [Convert cargo to relet/non-relet](https://docs.dataloy.com/voyage-management-system/step-by-step-guides/cargoes/maintain-cargoes/cargo-drawer-actions/convert-cargo-to-relet-non-relet)

For most users, the "Convert Cargo to relet/non-relet" option should be avoided.
