ModulesOperations lifecycle
Modules

Operations & Lifecycle in Jules

How Jules models trade operations — from creation to closing — for recyclable commodity trading.

Operations & Lifecycle in Jules

Product documentation — How Jules models trade operations, their lifecycle, and the relationships that drive the entire supply chain.


Table of Contents

  1. Overview
  2. Operation Types & Market Modes
  3. Operation Lifecycle
  4. Operation Qualities
  5. Pricing Models
  6. Follow-Up Tracking
  7. Approval Workflow
  8. Agreements (Term Contracts)
  9. Relationships with Other Modules
  10. Key Business Rules
  11. Glossary

Overview

An operation is the central entity in Jules. It represents a commercial transaction — either a purchase or a sale — of recyclable commodities between your organization and a counterparty (supplier or customer).

Everything in Jules revolves around operations: containers are attached to them, invoices are generated from them, margins are calculated across them, and logistics is planned around them.

What makes an operation?

At its core, an operation captures:

DimensionDescription
DirectionPurchase (BUY) or Sale (SELL)
CounterpartyThe company you're trading with
SiteThe physical location involved
QualitiesWhat materials, at what price, in what quantity
Market typeExport or Local
Shipment modeContainer, Bulk cargo, or Truck/Rail/Barge

Operation Types & Market Modes

Direction: Buy vs Sell

Every operation has a type that determines its role in the trade flow:

TypeRoleCounterpartyTypical actions
BUYPurchase from a supplierSupplier companyCreate PO, receive goods, pay supplier
SELLSale to a customerCustomer companyCreate SO, ship goods, invoice customer

A complete trade typically involves one purchase operation and one (or more) sale operations, linked together through allocations.

Market Type

MarketDescriptionTypical logistics
EXPORTInternational trade, cross-borderMaritime freight (containers or bulk)
LOCALDomestic trade, same countryTruck, rail, or barge

Shipment Mode

ModeDescriptionUse case
CONTAINERGoods loaded in standard shipping containersMost common for export
BULK_CARGOLoose cargo loaded directly onto a vesselLarge volumes (e.g., bulk metals)
TRUCK_RAIL_BARGELand/inland waterway transportLocal operations, pre-carriage

Operation Lifecycle

Every operation follows a defined lifecycle through five statuses:

Status Definitions

StatusMeaningWhat happens
NEWOperation has been created but not yet confirmedDraft state — terms can still change freely
CONFIRMEDDeal is confirmed with the counterpartyCommercial terms are locked; PO/SO can be generated
IN_PROGRESSExecution has startedContainers are being loaded, shipped, or delivered
CLOSEDOperation is completeAll goods delivered, invoices settled; operation is archived
CANCELLEDOperation was abandonedNo further action possible

Cancellation Reasons

When an operation is cancelled, a reason must be provided:

ReasonDescription
Documentation / License ProblemMissing permits, licenses, or documentation
Operational Problems / DelaysLogistic or operational issues making execution impossible
Over-competitive QuoteThe counterparty found a better deal elsewhere
Payment DuePayment issues preventing the deal from proceeding
OtherAny other reason (free-text comment can be added)

Closing & Reopening

  • Closing (markAsComplete) moves an operation from IN_PROGRESS to CLOSED. Multiple operations can be closed in batch.
  • Reopening (markAsOpen) moves a CLOSED operation back to IN_PROGRESS, for example when a late invoice requires adjustments.

Operation Qualities

An operation can contain one or more qualities — each representing a distinct material being traded. This is a key concept: the commercial terms (price, incoterm, quantity) are defined per quality, not per operation.

What's in an Operation Quality?

FieldDescription
QualityThe material grade (e.g., HMS 1&2, OCC, LDPE Film)
QuantityHow much material (in tonnes, containers, or other units)
PriceThe agreed price per unit
Price typeSPOT (fixed) or INDEX (formula-based)
IncotermCommercial terms (FOB, CFR, CIF, EXW, etc.)
Port of Loading / DestinationLogistics routing
MQCMinimum Quality Commitment
EquipmentContainer type (e.g., 40' HC, 20' standard)
Tolerance rateAllowed quantity deviation (e.g., +/- 5%)

Quality Follow-Up

Each quality has its own follow-up tracking (see Follow-Up Tracking) to monitor how much has been allocated, booked, loaded, and delivered against the contracted quantity.


Pricing Models

Jules supports three pricing models at the quality level:

1. Spot Price (Fixed)

A fixed price agreed at the time of the deal.

Price = 320 USD / T

Simple and definitive — the price doesn't change.

2. Index Price (Formula-based)

The price is calculated based on a market index, with optional adjustments:

Price = Index Value + Differential + Other Costs

Index pricing supports complex configurations:

ParameterDescription
IndexThe market reference (e.g., Platts, LME, TSI)
DifferentialPremium or discount applied on top of the index
Recovery ratePercentage of the index value applied
Quotational PeriodThe time window for averaging index values
ContangoForward premium for future delivery
FormulaMathematical formula combining multiple indices

Jules can combine two indices in a single quality line, each with its own recovery rate, timing, and price mode.

3. Temporary Price

When the final price is not yet known (e.g., pending index fixation), Jules supports temporary prices that are later replaced by the definitive price. This is flagged at the quality level (isTemporaryPrice).


Follow-Up Tracking

The follow-up is a real-time progress tracker that shows where an operation stands in its physical execution. It appears as a visual pipeline in the UI.

Follow-Up Stages

StageDefinitionWhat it means
TotalThe full contracted quantityWhat was agreed in the operation
PlannedQuantity assigned to containers (not yet allocated to a counterpart)Containers exist but are not linked to a buy/sell pair
AllocatedQuantity matched between a purchase and a saleBuy and sell sides are connected
BookedQuantity with a confirmed freight bookingShipping space has been reserved
LoadedQuantity physically loaded onto a vesselCargo is on the ship
DeliveredQuantity received at destinationGoods have arrived

Follow-up quantities are tracked both in tonnes and in number of containers, giving traders a dual view of progress.

Month-to-Date Tracking

Jules also provides month-to-date aggregations for both purchases and sales, allowing traders to compare their current execution pace against targets.


Approval Workflow

Operations can be subject to an approval process before they become executable. This is controlled by the isApproved flag and the dedicated approval/rejection mutations.

How it works

  1. A trader creates an operation
  2. The operation is flagged as pending approval (validation status = PENDING)
  3. Authorized approvers can approve or reject the operation (with a comment)
  4. Approved operations proceed normally; rejected operations require revision

Multiple operations can be approved or rejected in batch using the bulk approval action.

Note: The approval system uses a generic entity (Approval) that also applies to budgets, contracts, and other entities via the LinkedEntityEnum.


Agreements (Term Contracts)

An agreement is a special type of operation (isAgreement = true) that represents a long-term contract with a counterparty, typically covering a period of several months.

Key characteristics

FeatureDescription
Parent-child relationshipIndividual operations are created as children of the agreement
Quantity trackingJules tracks how much of the agreement has been fulfilled (agreementFulfilledQuantity)
RenewalAgreements can be renewed via the renewOperation mutation
Discount tiersAgreements can define volume-based discounts (percentage or spread)
Allocation instructionsAgreements carry instructions for how allocations should be handled

Fulfillment tracking

Each quality on an agreement tracks:

  • Fulfilled quantity — how much has been executed through child operations
  • Allocated quantity — how much has been allocated to buy/sell pairs
  • Loaded quantity — how much has been physically loaded
  • Delivered quantity — how much has arrived at destination

Relationships with Other Modules

An operation is the hub that connects most of Jules' modules:

Related moduleRelationship
ContractProvides default terms that prefill operation fields
ContainersPhysical units of cargo attached to operation qualities
AllocationsLinks between purchase and sale operations
Freight BookingsShipping space reservations for the operation's containers
ShipmentsGroups of bookings forming a complete shipment
InvoicesPurchase and sale invoices generated from the operation
BillsThird-party costs (logistics, customs, inspection)
Documents (PO/SO)Purchase Orders and Sales Orders generated as PDFs
TasksAction items and checklists tracked per operation
Hedging ContractsFinancial instruments covering commodity price risk
GoalsCommercial targets that operations contribute to
StockpilesWarehouse stock that operations feed or deplete
Pre-CarriageLocal transport legs before the main freight
Letter of CreditFinancial guarantee instruments attached to operations
MarginProfitability calculations derived from buy/sell pairs

Key Business Rules

1. Operation numbering

Every operation receives a unique Harold number (harold_number) automatically generated by the system. This is the primary reference used across the platform and in communications with counterparties.

2. Multi-quality operations

An operation can include multiple qualities, each with its own price, incoterm, quantity, and port routing. This is common when a single commercial deal covers several material grades.

3. Document generation workflow

Documents follow a progression tracked by the PO/SO status:

StatusMeaning
PENDINGDocument not yet created
CREATEDDocument generated as PDF
SENTDocument sent to the counterparty
SIGNED_AND_UPLOADEDSigned document uploaded back to Jules

4. Maturity classification

Operations are classified by maturity — a configurable label (e.g., "Spot", "30 days", "60 days") with an associated probability percentage. This allows traders to weight their pipeline by likelihood of closing.

5. Warehouse operations

Operations flagged as isWarehouse = true follow a different flow: goods are received into a stockpile at a warehouse site, and later sold from that stockpile. This changes how margins are calculated (see Margin Calculations).

6. Roles on an operation

RoleDescription
Created byThe user who created the operation
Assigned toThe trader responsible for the operation
AdminThe administrative contact
Account repThe account representative
SignatoryThe person who signs documents
WatchersUsers who receive notifications about the operation

7. Agent commissions

An intermediary agent can be attached to an operation, with a commission defined either as a fixed amount per unit or as a percentage of the price.

8. ERP synchronization

Operations can be synchronized to an external ERP system via the synchronizeOperationToErp action, pushing the operation data to third-party accounting or logistics systems.

9. Sharing & portal access

Operations can be shared with external counterparties via a portal. Shared operations are visible to the counterparty's portal users, with restricted fields (prices, margins, and internal costs are hidden).


Operation Detail View

The operation detail page in Jules is organized in tabs:

TabContent
QualitiesMaterial lines with prices, quantities, incoterms
Follow-UpVisual progress tracker (planned → delivered)
Price & CostDetailed pricing, costs, and margin overview
ActivitiesAudit trail of all changes and communications
Linked OperationsRelated buy/sell operations via allocations
ReceptionDelivery receipts and weight slips
BudgetsBudget allocations linked to this operation
Purchase GoalsGoals this operation contributes to
Agreement OperationsChild operations (for agreements only)

Glossary

TermDefinition
AllocationA link connecting a purchase quality to a sale quality, matching buy and sell sides
AgreementA long-term contract operation covering multiple shipments over time
BUY / SELLThe two operation directions — purchase and sale
ContainerA physical shipping container attached to an operation quality
Follow-upReal-time tracking of an operation's physical progress
Harold numberThe unique identifier automatically assigned to every operation
IncotermInternational Commercial Term defining transport and cost responsibilities
Index priceA price derived from a market reference (LME, Platts, TSI, etc.)
MaturityA configurable classification indicating deal probability
MQCMinimum Quality Commitment — the minimum weight per container
Operation QualityA material line within an operation, carrying its own commercial terms
PO (Purchase Order)The document sent to a supplier confirming a purchase
SO (Sales Order)The document sent to a customer confirming a sale
Spot priceA fixed price agreed at the time of the deal
StockpileA physical pile of material stored in a warehouse
Temporary priceA provisional price used before the final price is determined
WatcherA user subscribed to notifications on an operation