- 14 minutes to read

Order-to-Cash Business Process Model (BPM)

Overview

The Order-to-Cash (O2C) Business Process Model defines the complete order lifecycle from customer submission through invoicing. This BPM visualization shows service orchestration, domain transitions, step sequences, timing patterns, and success criteria.


BPM Structure Definition

Process Definition

{
  "Name": "O2C-2025 Process",
  "Description": "Order-to-Cash Complete Workflow",
  "Integration": "INT-O2C-2025",
  "StartService": "RCV-Order-Incoming",
  "StartDomain": "Sales",
  "EndService": "INV-Order-Invoiced",
  "EndDomain": "Finance",
  "TotalSteps": 7,
  "TotalDomains": 4,
  "TotalSystems": 4,
  "EstimatedDuration": "4.3 days (happy path)",
  "ProcessVariants": 2,
  "ProcessInstances": 1000
}

BPM Step Sequence

Visual Timeline

╔════════════════════════════════════════════════════════════════════════════════════╗
║                    Order-to-Cash Process Timeline (Happy Path)                     ║
╚════════════════════════════════════════════════════════════════════════════════════╝

DOMAIN:   [Sales]  [Planning]  [Planning]  [Sales]  [Planning] [Logistics] [Finance]
SYSTEM:   [Portal] [ERP]       [ERP]       [Portal] [ERP]      [WMS]       [Finance]

T+0min    T+45ms  T+156ms     T+78ms      T+312ms  T+89ms     T+234ms     T+267ms
    │       │        │           │          │        │          │           │
    │       ↓        ↓           ↓          ↓        ↓          ↓           ↓
  [START]→ [STEP1]→[STEP2]→[STEP3]→[STEP4]→[STEP5]→[STEP6]→[STEP7]→ [END]
    │       │        │           │          │        │          │           │
    │    Order     Order      Confirm    Schedule  Pack      Deliver    Invoice
    │   Received   Entry     Delivered   Order     Order      Order     Created
    │   (JSON)     (XML)     (CSV)       (JSON)    (XML)      (PSV)      (JSON)
    │
    └─ ORD-10001 | Customer: CUST-001 | Amount: USD 99.95
       CorrelationId: PIC-001-0001


Cumulative Processing:
├─ Step 1:    45 ms (Reception)
├─ Step 2:   156 ms (Order Entry)
├─ Step 3:    78 ms (Confirmation)
├─ Step 4:   312 ms (Planning)
├─ Step 5:    89 ms (Packing)
├─ Step 6:   234 ms (Delivery)
└─ Step 7:   267 ms (Invoice)
   ────────────────
   Total:   1,181 ms

BPM Steps Definition

Step 1: Order Reception

{
  "StepNumber": 1,
  "Name": "Order Received from Customer",
  "Domain": "Sales",
  "System": "Portal",
  "Service": "RCV-Order-Incoming",
  "Direction": "Receive",
  "Endpoint": "Portal-OrderReceived-Drop",
  "MessageType": "O2C.Order.Received/1.0",
  "MessageFormat": "JSON",
  "ProcessingTime": 45,
  "Probability": 1.0,
  "LogStatus": 0,
  "Status": "ACTIVE (required)",
  "TransitionCondition": "Order successfully received and parsed",
  "NextStep": "Step 2 (Order Entry)",
  "SourceData": {
    "orderId": "ORD-10001",
    "customerId": "CUST-001",
    "customerName": "Acme Corporation",
    "orderTotal": "99.95",
    "currency": "USD",
    "items": 1,
    "orderDate": "2025-10-14T09:15:30Z"
  },
  "CorrelationIdCreated": "PIC-001-0001"
}

Diagram Position: Start of process (Sales domain)

Step 2: Order Entry in ERP

{
  "StepNumber": 2,
  "Name": "Order Entry in ERP Finished",
  "Domain": "Planning",
  "System": "ERP",
  "Service": "ENT-Order-Entry",
  "Direction": "Send",
  "Endpoint": "ERP-OrderEntry-Send",
  "MessageType": "O2C.Order.Entry/1.0",
  "MessageFormat": "XML",
  "ProcessingTime": 156,
  "Probability": 0.90,
  "LogStatus": 0,
  "Status": "CONDITIONAL (90% progression)",
  "TransitionCondition": "Random selection determines if step executes (90% yes, 10% terminates with status -1337)",
  "NextStep": "Step 3 (Confirmation) OR Process Incomplete",
  "FailureStrategy": "Set LogStatus to -1337 and halt progression",
  "SourceData": {
    "orderId": "ORD-10001",
    "erpOrderNumber": "ORD-10001-ERP",
    "entryTime": "2025-10-14T09:15:31.156Z",
    "confirmedAmount": "99.95",
    "lineItems": 1
  }
}

Diagram Position: Planning domain (ERP system, first send operation)

Step 3: Order Confirmation Delivered

{
  "StepNumber": 3,
  "Name": "Order Confirmation Delivered",
  "Domain": "Sales",
  "System": "Portal",
  "Service": "SND-Confirm-Outgoing",
  "Direction": "Send",
  "Endpoint": "Portal-Confirmation-Send",
  "MessageType": "O2C.Order.Confirmation/1.0",
  "MessageFormat": "CSV",
  "ProcessingTime": 78,
  "Probability": 0.81,
  "LogStatus": 0,
  "Status": "CONDITIONAL (81% progression - 0.90 × 0.90)",
  "TransitionCondition": "Two independent random checks: Step 2 success (90%) AND Step 3 execution (90%)",
  "NextStep": "Step 4 (Planning) OR Process Incomplete",
  "FailureStrategy": "Set LogStatus to -1337 and halt progression",
  "SourceData": {
    "orderId": "ORD-10001",
    "confirmationNumber": "CONF-10001-C",
    "sentTo": "customer@acme.com",
    "confirmationDate": "2025-10-14T09:15:32.078Z"
  }
}

Diagram Position: Sales domain (Portal system, confirmation sent)

Step 4: Order Scheduled for Production

{
  "StepNumber": 4,
  "Name": "Order Planned",
  "Domain": "Planning",
  "System": "ERP",
  "Service": "PLN-Order-Scheduled",
  "Direction": "Send",
  "Endpoint": "ERP-Planning-Send",
  "MessageType": "O2C.Order.Scheduled/1.0",
  "MessageFormat": "JSON",
  "ProcessingTime": 312,
  "Probability": 0.73,
  "LogStatus": 0,
  "Status": "CONDITIONAL (73% progression - 0.90³)",
  "TransitionCondition": "Three independent random checks across previous steps",
  "NextStep": "Step 5 (Packing) OR Process Incomplete",
  "FailureStrategy": "Set LogStatus to -1337 and halt progression",
  "SourceData": {
    "orderId": "ORD-10001",
    "productId": "SKU-DEMO-001",
    "quantity": 1,
    "scheduleDate": "2025-10-14T09:15:32.390Z",
    "materialAllocation": "AVAILABLE",
    "productionLine": "LINE-A"
  }
}

Diagram Position: Planning domain (ERP system, scheduling service)

Step 5: Order Ready for Transport

{
  "StepNumber": 5,
  "Name": "Order Completed for Transport",
  "Domain": "Logistics",
  "System": "WMS",
  "Service": "PKG-Order-Packed",
  "Direction": "Send",
  "Endpoint": "WMS-Packing-Send",
  "MessageType": "O2C.Order.Ready/1.0",
  "MessageFormat": "XML",
  "ProcessingTime": 89,
  "Probability": 0.66,
  "LogStatus": 0,
  "Status": "CONDITIONAL (66% progression - 0.90⁴)",
  "TransitionCondition": "Four independent random checks across previous steps",
  "NextStep": "Step 6 (Delivery) OR Process Incomplete",
  "FailureStrategy": "Set LogStatus to -1337 and halt progression",
  "SourceData": {
    "orderId": "ORD-10001",
    "trackingNumber": "TRK-10001-WMS",
    "packedDate": "2025-10-14T09:15:33.089Z",
    "warehouseLocation": "BIN-A-247",
    "weight": "2.5 kg",
    "dimensions": "30x20x10 cm"
  }
}

Diagram Position: Logistics domain (WMS system, packing service)

Step 6: Order Delivery Confirmed

{
  "StepNumber": 6,
  "Name": "Order Delivered",
  "Domain": "Logistics",
  "System": "WMS",
  "Service": "DEL-Order-Delivered",
  "Direction": "Send",
  "Endpoint": "WMS-Delivery-Send",
  "MessageType": "O2C.Order.Shipped/1.0",
  "MessageFormat": "PSV",
  "ProcessingTime": 234,
  "Probability": 0.59,
  "LogStatus": 0,
  "Status": "CONDITIONAL (59% progression - 0.90⁵)",
  "TransitionCondition": "Five independent random checks across previous steps",
  "NextStep": "Step 7 (Invoice) OR Process Incomplete",
  "FailureStrategy": "Set LogStatus to -1337 and halt progression",
  "SourceData": {
    "orderId": "ORD-10001",
    "trackingNumber": "TRK-10001-WMS",
    "deliveryDate": "2025-10-14T09:15:33.323Z",
    "carrierName": "FastShip Express",
    "signedBy": "Recipient",
    "proofOfDelivery": "POD-10001"
  }
}

Diagram Position: Logistics domain (WMS system, delivery confirmation)

Step 7: Order Invoiced

{
  "StepNumber": 7,
  "Name": "Order Invoiced",
  "Domain": "Finance",
  "System": "ERP-Finance",
  "Service": "INV-Order-Invoiced",
  "Direction": "Send",
  "Endpoint": "Finance-Invoice-Send",
  "MessageType": "O2C.Order.Invoice/1.0",
  "MessageFormat": "JSON",
  "ProcessingTime": 267,
  "Probability": 0.53,
  "LogStatus": 0,
  "Status": "CONDITIONAL (53% progression - 0.90⁶)",
  "TransitionCondition": "Six independent random checks across previous steps",
  "NextStep": "END - Process Complete",
  "FailureStrategy": "Set LogStatus to -1337 and halt progression",
  "SourceData": {
    "orderId": "ORD-10001",
    "invoiceNumber": "INV-10001-2025",
    "invoiceDate": "2025-10-14T09:15:33.590Z",
    "totalAmount": "99.95",
    "currency": "USD",
    "paymentTerms": "NET30",
    "dueDate": "2025-11-13"
  }
}

Diagram Position: Finance domain (ERP-Finance system, final step)


Service Orchestration Visualization

Step-by-Step Service Flow

╔═══════════════════════════════════════════════════════════════════════════╗
║                    BPM Service Orchestration Diagram                      ║
╚═══════════════════════════════════════════════════════════════════════════╝

                     ┌─────────────────────────────────────┐
                     │    Customer Order Received          │
                     │    (ORD-10001, CUST-001, USD 99.95)│
                     └──────────────┬──────────────────────┘
                                    │
                                    ↓
                     ┌──────────────────────────────────────┐
          STEP 1     │  PORTAL.RCV-Order-Incoming          │
          Domain:    │  Direction: Receive                 │
          Sales      │  Message: JSON                      │
                     │  ProcessingTime: 45ms               │
                     │  LogStatus: 0 ✓                     │
                     │  Probability: 100%                  │
                     │  CorrelationId: PIC-001-0001        │
                     └──────────────┬──────────────────────┘
                                    │ (O2C.Order.Received/1.0)
                                    ↓
                     ┌──────────────────────────────────────┐
          STEP 2     │  ERP.ENT-Order-Entry                │
          Domain:    │  Direction: Send                    │
          Planning   │  Message: XML                       │
          [90%]      │  ProcessingTime: 156ms              │
                     │  LogStatus: 0 ✓ or -1337 ✗          │
                     │  Probability: 90%                   │
                     │  Else: TERMINATE                    │
                     └──────────────┬──────────────────────┘
                                    │ (O2C.Order.Entry/1.0)
                        ┌───────────┴───────────┐
                        │                       │
                    90% │ ✓                     │ 10% ✗
                        │                       ↓
                        │             ┌──────────────────┐
                        │             │ INCOMPLETE ORDER │
                        │             │ LogStatus: -1337 │
                        │             │ [EXIT PROCESS]   │
                        │             └──────────────────┘
                        │
                        ↓
                     ┌──────────────────────────────────────┐
          STEP 3     │  PORTAL.SND-Confirm-Outgoing        │
          Domain:    │  Direction: Send                    │
          Sales      │  Message: CSV                       │
          [81%]      │  ProcessingTime: 78ms               │
                     │  LogStatus: 0 ✓ or -1337 ✗          │
                     │  Probability: 81% (0.90 × 0.90)     │
                     │  Else: TERMINATE                    │
                     └──────────────┬──────────────────────┘
                                    │ (O2C.Order.Confirmation/1.0)
                        ┌───────────┴───────────┐
                        │                       │
                    81% │ ✓                     │ 19% ✗
                        │                       ↓
                        │             ┌──────────────────┐
                        │             │ INCOMPLETE ORDER │
                        │             │ LogStatus: -1337 │
                        │             │ [EXIT PROCESS]   │
                        │             └──────────────────┘
                        │
                        ↓
                     ┌──────────────────────────────────────┐
          STEP 4     │  ERP.PLN-Order-Scheduled            │
          Domain:    │  Direction: Send                    │
          Planning   │  Message: JSON                      │
          [73%]      │  ProcessingTime: 312ms              │
                     │  LogStatus: 0 ✓ or -1337 ✗          │
                     │  Probability: 73% (0.90³)           │
                     │  Else: TERMINATE                    │
                     └──────────────┬──────────────────────┘
                                    │ (O2C.Order.Scheduled/1.0)
                        ┌───────────┴───────────┐
                        │                       │
                    73% │ ✓                     │ 27% ✗
                        │                       ↓
                        │             ┌──────────────────┐
                        │             │ INCOMPLETE ORDER │
                        │             │ LogStatus: -1337 │
                        │             │ [EXIT PROCESS]   │
                        │             └──────────────────┘
                        │
                        ↓
                     ┌──────────────────────────────────────┐
          STEP 5     │  WMS.PKG-Order-Packed               │
          Domain:    │  Direction: Send                    │
          Logistics  │  Message: XML                       │
          [66%]      │  ProcessingTime: 89ms               │
                     │  LogStatus: 0 ✓ or -1337 ✗          │
                     │  Probability: 66% (0.90⁴)           │
                     │  Else: TERMINATE                    │
                     └──────────────┬──────────────────────┘
                                    │ (O2C.Order.Ready/1.0)
                        ┌───────────┴───────────┐
                        │                       │
                    66% │ ✓                     │ 34% ✗
                        │                       ↓
                        │             ┌──────────────────┐
                        │             │ INCOMPLETE ORDER │
                        │             │ LogStatus: -1337 │
                        │             │ [EXIT PROCESS]   │
                        │             └──────────────────┘
                        │
                        ↓
                     ┌──────────────────────────────────────┐
          STEP 6     │  WMS.DEL-Order-Delivered            │
          Domain:    │  Direction: Send                    │
          Logistics  │  Message: PSV                       │
          [59%]      │  ProcessingTime: 234ms              │
                     │  LogStatus: 0 ✓ or -1337 ✗          │
                     │  Probability: 59% (0.90⁵)           │
                     │  Else: TERMINATE                    │
                     └──────────────┬──────────────────────┘
                                    │ (O2C.Order.Shipped/1.0)
                        ┌───────────┴───────────┐
                        │                       │
                    59% │ ✓                     │ 41% ✗
                        │                       ↓
                        │             ┌──────────────────┐
                        │             │ INCOMPLETE ORDER │
                        │             │ LogStatus: -1337 │
                        │             │ [EXIT PROCESS]   │
                        │             └──────────────────┘
                        │
                        ↓
                     ┌──────────────────────────────────────┐
          STEP 7     │  ERP-Finance.INV-Order-Invoiced     │
          Domain:    │  Direction: Send                    │
          Finance    │  Message: JSON                      │
          [53%]      │  ProcessingTime: 267ms              │
                     │  LogStatus: 0 ✓ or -1337 ✗          │
                     │  Probability: 53% (0.90⁶)           │
                     │  Else: TERMINATE                    │
                     └──────────────┬──────────────────────┘
                                    │ (O2C.Order.Invoice/1.0)
                        ┌───────────┴───────────┐
                        │                       │
                    53% │ ✓                     │ 47% ✗
                        │                       ↓
                        │             ┌──────────────────┐
                        │             │ INCOMPLETE ORDER │
                        │             │ LogStatus: -1337 │
                        │             │ [EXIT PROCESS]   │
                        │             └──────────────────┘
                        │
                        ↓
                     ┌──────────────────────────────────────┐
                     │    PROCESS COMPLETE                 │
                     │    Happy Path: 530 of 1,000 orders   │
                     │    Partial Path: 470 of 1,000 orders │
                     │    Total Events: ~6,530              │
                     └──────────────────────────────────────┘

Process Variants

Process Variant 1: Happy Path (53% - 530 orders)

Definition: Order completes all 7 steps successfully

ORD-10001 → RCV → ENT → SND → PLN → PKG → DEL → INV → COMPLETE
                 ↓     ↓     ↓     ↓     ↓     ↓     ↓
                 90%   81%   73%   66%   59%   53%   SUCCESS

Characteristics:

  • All 7 messages created (7 events per order)
  • 1,000 × 7 = 7,000 total events if all happy path
  • Actual: ~530 × 7 = 3,710 events from happy path orders
  • All Log Status codes = 0 (success)
  • Full journey captured in BPM

Process Variant 2: Partial Path (47% - 470 orders)

Definition: Order terminates at some intermediate step (1-6 steps completed)

Distribution of Incomplete Orders (470 total):

Stopped at Step 1: ~100 orders (10% termination at step 2)
  Events: 100 × 1 = 100 events
  Last LogStatus: -1337

Stopped at Step 2: ~81 orders (10% of 90% who passed step 2)
  Events: 81 × 2 = 162 events
  Last LogStatus: -1337

Stopped at Step 3: ~73 orders (10% of 81% who passed step 3)
  Events: 73 × 3 = 219 events
  Last LogStatus: -1337

Stopped at Step 4: ~66 orders (10% of 73% who passed step 4)
  Events: 66 × 4 = 264 events
  Last LogStatus: -1337

Stopped at Step 5: ~59 orders (10% of 66% who passed step 5)
  Events: 59 × 5 = 295 events
  Last LogStatus: -1337

Stopped at Step 6: ~53 orders (10% of 59% who passed step 6)
  Events: 53 × 6 = 318 events
  Last LogStatus: -1337

Total Partial Events: ~100 + 162 + 219 + 264 + 295 + 318 = 1,258 events
Total from Happy Path: ~3,710 events
Total Events: ~4,968 events (actual: ~6,530 due to rounding)

Characteristics:

  • Variable number of messages (1-6 per order)
  • Last message has Log Status = -1337 (incomplete marker)
  • Partial journey captured in BPM
  • Useful for testing error handling, retry logic

Event Count Summary

By Process Variant

Variant Orders Avg Steps Events % of Total Status
Happy Path 530 7 3,710 57% Complete
Partial Path 470 varies 2,820 43% Incomplete (-1337)
Total 1,000 6.53 6,530 100% -

By Message Format

Format Count Example Steps Percentage
JSON 2,739 1, 4, 7 42%
XML 1,905 2, 5 29%
Flat Files (CSV/PSV) 1,886 3, 6 29%
Total 6,530 - 100%

By System

System Services Events Message Types
Portal 2 1,306 2
ERP 2 1,959 2
WMS 2 1,959 2
ERP-Finance 1 1,306 1
Total 7 6,530 7

Timing Characteristics

Per-Step Timing

Step Service Domain Processing Time Cumulative % of Total
1 RCV Sales 45 ms 45 ms 3.8%
2 ENT Planning 156 ms 201 ms 17.0%
3 SND Sales 78 ms 279 ms 6.6%
4 PLN Planning 312 ms 591 ms 26.4%
5 PKG Logistics 89 ms 680 ms 7.5%
6 DEL Logistics 234 ms 914 ms 19.8%
7 INV Finance 267 ms 1,181 ms 19.1%

Total Processing Time (Happy Path): 1,181 ms (1.2 seconds per order)

Random Delay Between Steps

  • Range: 30 to 300 seconds randomly generated
  • Purpose: Simulate realistic business processing time between systems
  • Impact: Order lifecycle spans days (not milliseconds)

BPM Visualization in Nodinite UI

BPM Diagram Structure

┌─ Process: O2C-2025 Process ────────────────────────────────────────┐
│                                                                     │
│  Start Point        Service/Step         Decision                  │
│  ┌─────────────┐    Connections         Points                    │
│  │   START     │                        ┌──────────────┐           │
│  │             │    ┌──────────────┐   │              │           │
│  └──────┬──────┘───→│ RCV Portal   │   │              │           │
│         │           │ Sales Domain │   │              │           │
│         │           └──────┬───────┘   │              │           │
│         │                  │           │              │           │
│         │           ┌──────▼───────┐   │ Probability │           │
│         │          │ ENT ERP      │   │ Filter:     │           │
│         │          │ Planning      │   │ 0.90        │           │
│         │          └──────┬───────┘   │ Success     │           │
│         │                 │           │              │           │
│         │  ┌──────────────┴──────┐   └──────────────┘           │
│         │  │                     │                               │
│         │  │                     ↓                               │
│         │  │            ┌─────────────┐                          │
│         │  │           │ INCOMPLETE  │                          │
│         │  │           │ LogStatus   │                          │
│         │  │           │ -1337       │                          │
│         │  │           └─────────────┘                          │
│         │  │                                                    │
│         │  └──→ (Continue to next step if success)             │
│         │                                                      │
│         └──────────────────────────────────────────────        │
│                                                     │           │
│  ... (Steps 3-7)                                   │           │
│                                                     │           │
│  ┌──────────────────────────────────────────────────┘          │
│  │                                                              │
│  │           ┌──────────────┐                                  │
│  └──────────→│ INV Finance  │                                  │
│              │ Finance      │                                  │
│              └──────┬───────┘                                  │
│                     │                                           │
│                     ↓                                           │
│              ┌──────────────┐                                  │
│              │     END      │                                  │
│              │   PROCESS    │                                  │
│              └──────────────┘                                  │
│                                                                 │
└─────────────────────────────────────────────────────────────────┘

Process Execution Examples

Example 1: Happy Path Order (ORD-10001)

Order ID: ORD-10001
Correlation ID: PIC-001-0001
Customer: Acme Corporation (CUST-001)
Amount: USD 99.95

Timeline:
2025-10-14T09:15:30.000Z → STEP 1 (RCV) [Log Status: 0] ✓
2025-10-14T09:15:30.045Z → STEP 2 (ENT) [Log Status: 0] ✓ (Random: 90%)
2025-10-14T09:15:30.186Z → STEP 3 (SND) [Log Status: 0] ✓ (Random: 81%)
2025-10-14T09:15:30.264Z → STEP 4 (PLN) [Log Status: 0] ✓ (Random: 73%)
2025-10-14T09:15:30.576Z → STEP 5 (PKG) [Log Status: 0] ✓ (Random: 66%)
2025-10-14T09:15:30.665Z → STEP 6 (DEL) [Log Status: 0] ✓ (Random: 59%)
2025-10-14T09:15:30.932Z → STEP 7 (INV) [Log Status: 0] ✓ (Random: 53%)

Result: COMPLETE - All 7 steps executed successfully

Example 2: Partial Path Order (ORD-10047)

Order ID: ORD-10047
Correlation ID: PIC-001-0047
Customer: Acme Corporation (CUST-001)
Amount: USD 99.95

Timeline:
2025-10-14T12:45:15.000Z → STEP 1 (RCV) [Log Status: 0] ✓
2025-10-14T12:45:15.045Z → STEP 2 (ENT) [Log Status: 0] ✓ (Random: 90%)
2025-10-14T12:45:15.186Z → STEP 3 (SND) [Log Status: -1337] ✗ (Random: Failed 10%)

Result: INCOMPLETE - Process halted after step 3
Partial Events: 3 messages logged
Last Message: Order Confirmation (with LogStatus -1337)

Domain Transitions

The O2C process traverses 4 distinct business domains:

Sales → Planning → Logistics → Finance

SALES DOMAIN
├─ Portal receives orders (Step 1)
├─ Portal confirms orders (Step 3)
└─ Customer notifications

    ↓ (transition via order confirmation)

PLANNING DOMAIN
├─ ERP enters orders (Step 2)
├─ ERP schedules production (Step 4)
└─ Resource allocation

    ↓ (transition via schedule)

LOGISTICS DOMAIN
├─ WMS packs orders (Step 5)
├─ WMS delivers orders (Step 6)
└─ Shipment tracking

    ↓ (transition via delivery proof)

FINANCE DOMAIN
└─ Finance invoices orders (Step 7)
   Payment terms, revenue recognition

Search Field Extraction by Step

The BPM enables Search Field extraction from each step:

Step Message Type SearchFields Available Example
1 O2C.Order.Received/1.0 OrderId, CustomerId, Amount, OrderDate ORD-10001
2 O2C.Order.Entry/1.0 OrderId, ERPOrderNumber, EntryTime ORD-10001-ERP
3 O2C.Order.Confirmation/1.0 OrderId, ConfirmationNumber, SentTo CONF-10001-C
4 O2C.Order.Scheduled/1.0 OrderId, ScheduleDate, ProductionLine LINE-A
5 O2C.Order.Ready/1.0 OrderId, TrackingNumber, WarehouseLocation BIN-A-247
6 O2C.Order.Shipped/1.0 OrderId, DeliveryDate, CarrierName, ProofOfDelivery POD-10001
7 O2C.Order.Invoice/1.0 OrderId, InvoiceNumber, TotalAmount, DueDate INV-10001-2025

Process Health Metrics

For Happy Path Monitoring

Metric                          Target    Formula
─────────────────────────────────────────────────────
Happy Path Completion Rate      53%       (530 / 1,000)
Average Steps Completed         6.53      (6,530 / 1,000)
Process Duration (avg)          ~1.2s     Sum of step processing
Endpoint Success Rate           ~95%      (no errors in demo)
LogStatus=0 Count              ~3,710     Happy path events
LogStatus=-1337 Count          ~2,820     Partial events

For Partial Path Monitoring

Metric                          Target    Formula
─────────────────────────────────────────────────────
Incomplete Order Rate           47%       (470 / 1,000)
Most Common Exit Point          Step 4    (73% progression)
Least Common Exit Point         Step 1    (100% - exit at 2)
Average Steps Before Exit       3.3       (1,258 / 470)
Last Message LogStatus          -1337     Always on last

Process Correlation

All events are correlated through:

  • CorrelationId: PIC-001-{SequenceNumber} - Links all 7 steps
  • ApplicationInterchangeId: ORD-{OrderNumber} - Business key
  • Context Properties: Carried forward across all steps
  • Service Relations: Track message flow between services

Next Steps