Understanding Charge Class
What is Charge Class?
The Charge Classis the foundational element in Canary7's Billing Module. It defines how a charge is calculated, delineating between unit, weight, container, or numerous other quantifiable metrics. These are system-defined formulas that cannot be modified. Instead, they are selected and applied within Charge Types which define when and why a charge is triggered.
Each Charge Class belongs to a specific dataset, which determines the data it operates from (e.g., shipment headers, shipment details, inventory, receipts, etc.). This ensures accurate, context-specific billing based on the operational activity it relates to.
📘 Key Characteristics
System-defined: Cannot be created or modified by users.
Used by Charge Types: The Charge Class provides the logic; the Charge Type decides when to use it.
Dataset-bound: Each Charge Class applies to a specific dataset, such as
shipment_header
,ds_receipt_detail
, ords_inventory
.
Accessing Charge Class
Within the Navigation menu, click on the search bar, type and click on "Charge Class". Charge Class is also in Billing > Charge Class.
📂 Charge Class List
Charge Class Name | Dataset | Description |
---|---|---|
PerShipment | FlatRateCharge | shipment_header | Applies a flat charge per shipment. |
ChargePerContainerUptoXContainer | shipment_header | Charges per container up to a certain quantity. |
ChargePerContainerUptoXContainerAndUptoYThereAfter | shipment_header | Charges per container with two tiers—up to X, and a different rate thereafter. |
PerShipment | FlatChargeUpToXQty + ChargePerQtyThereAfter | shipment_header | Combines a flat charge for the first X quantity and a per-unit charge beyond. |
ChargePerShipmentPerContainer | shipment_header | Charges per container within each shipment. |
ChargePerShipmentContainerUptoXContainerThereafter | shipment_header | Tiered charge per container up to X, then a different rate. |
ChargePerShipmentContainerUptoXContainerAndUptoYThereafter | shipment_header | Multi-tiered charge per container with two thresholds. |
PerShipmentDetail | FlatRateCharge | ds_shipment_detail | Flat charge per shipment detail line. |
PerShipmentDetail | FlatChargeUpToXQty + ChargePerQtyThereAfter | ds_shipment_detail | Tiered charge based on quantity per detail line. |
PerShipmentDetailChildCharge | ds_shipment_detail_child | Flat charge for each child line within a shipment detail. |
ChargePerShipmentDetailChildUptoXQtyThereafter | ds_shipment_detail_child | Tiered quantity-based charge at the detail child level. |
PerShipmentContainer | FlatRateCharge | ds_shipment_container | Flat charge per shipment container. |
PerShipmentContainer | FlatChargeUpToXWeight + ChargePerWeightThereAfter | ds_shipment_container | Tiered charge based on weight in shipment containers. |
PerReceiptCharge | ds_receipt_header | Flat charge per receipt. |
ChargePerReceiptUptoXQtyThereafter | ds_receipt_header | Quantity-tiered charge per receipt. |
ChargePerReceiptPerContainer | ds_receipt_header | Charges based on number of containers in a receipt. |
ChargePerReceiptContainerUptoXContainerThereafter | ds_receipt_header | Container-tiered charge for receipts (X threshold). |
ChargePerReceiptContainerUptoXContainerAndUptoYThereafter | ds_receipt_header | Multi-tiered charge for containers on a receipt. |
PerReceiptDetailCharge | ds_receipt_detail | Flat charge per receipt detail line. |
ChargePerReceiptDetailUptoXQtyThereafter | ds_receipt_detail | Tiered quantity-based charge on receipt detail. |
PerInventoryPerQtyCharge | ds_inventory | Charges based on quantity held in inventory. |
PerInventoryPerUnitCharge | ds_inventory | Charges per unique inventory unit. |
PerInventoryPerVolumeCharge | ds_inventory | Charges based on inventory volume (e.g., cubic metres). |
PerInventoryPerWeightCharge | ds_inventory | Charges based on inventory weight. |
PerShipmentExtraPerQtyCharge | ds_shipment_extra | Charges based on quantity for additional shipment services. |
PerShipmentContainer | FlatRateCharge2 | ds_shipment_container | Alternate flat-rate charge per shipment container. |
PerInventory | FlatRateCharge | ds_inventory | Flat charge per inventory entry. |
PerShipmentContainer | FlatChargeUpToXQty + ChargePerQtyThereAfter | ds_shipment_container | Tiered quantity-based charge per shipment container. |
PerReceiptContainerCharge | FlatRateCharge | ds_receipt_container | Flat charge per receipt container. |
PerReceiptContainerCharge | FlatChargeUpToXPieces + ChargePerPieceThereAfter | ds_receipt_container | Tiered piece-based charge per receipt container. |
PerShipmentDetailChild | ChargePerUnit | ds_shipment_detail_child | Charges per unit at the detail child level. |
PerInventoryLocation | FlatCharge | ds_inventory_location | Flat charge per inventory location. |