MedSupply Inc. is a pharmaceutical distribution company that supplies medication to hospitals,

clinics, and pharmacies. The company is implementing a new inventory management system and
needs to model its order fulfilment process, which includes complex transaction-based activities.

The order fulfilment process involves:
• Receiving customer orders through an online portal.
• Verifying customer credit and payment terms.
• Checking inventory availability.
• Processing payment (including potential refunds or adjustments).
• Picking, packing, and shipping orders.
• Managing returns and exchanges.

The process must ensure data integrity, handle exceptions appropriately, and comply with the
regulations of the pharmaceutical industry. The system needs to manage complex transactions
that might require compensation and rollback capabilities.
(a) Create a detailed BPMN model of the order fulfilment process, including:
o Order processing
o Payment handling
o Inventory management
o Shipping procedures
(15)

(b) Incorporate a transaction sub-process with proper compensation handling for
payment processing.
(15)
23; 24;25 2025
© The Independent Institute of Education (Pty) Ltd 2025
Page 7 of 22
(c) Include appropriate error handling and exception management for common
scenarios like:
o Insufficient inventory
o Payment failures
o Regulatory compliance issues

1 answer

To create a BPMN (Business Process Model and Notation) model for the order fulfilment process of MedSupply Inc., we need to break down the various components of the transaction and ensure we incorporate elements such as error handling and compensation for complex transactions. Below is an outline of how the BPMN components can be structured:

(a) BPMN Model of the Order Fulfilment Process

The BPMN model should consist of the following activities and associated flows:

Main Process Flow:

  1. Receive Customer Order

    • Task: Receive order from the online portal.
  2. Verify Customer Credit and Payment Terms

    • Exclusive Gateway (Decision): Is the credit valid?
      • Yes → Proceed to Check Inventory Availability.
      • No → → End Event (Send Notification: Credit Issues).
  3. Check Inventory Availability

    • Exclusive Gateway (Decision): Is inventory available?
      • Yes → Proceed to Process Payment.
      • No → → End Event (Send Notification: Insufficient Inventory).
  4. Process Payment

    • Sub-process: Handle Payment Processing
      • Includes internal tasks like:
        • Verify Payment Details
        • Process Payment (Authorize, Capture)
        • Manage Refund/Adjustments (if necessary)
    • Event-based Gateway (Decision): Was the payment successful?
      • Yes → Move to Pick, Pack, and Ship Order.
      • No → → End Event (Send Notification: Payment Failure).
  5. Pick, Pack, and Ship Order

    • Task: Prepare Order for Shipping.
  6. Manage Returns and Exchanges

    • Inclusive Gateway: Initiate Return/Exchange?
      • If yes, handle return process.
      • If no, proceed to End Event.
  7. End Event: Order Fulfilled.

(b) Transaction Sub-process with Compensation Handling for Payment Processing

Incorporate the following steps within the Payment Processing sub-process with compensation:

  1. Payment Verification
  2. Charge Customer Card
  3. Set Payment Status to "In Progress"

Compensation handling:

  • If Payment Fails:

    • Trigger a compensation event to cancel the charge and revert any charges made (e.g., refund).
    • Utilize a compensation event in BPMN to represent the refund handling.
        Sub-Process: Process Payment
            - Task: Verify Payment
            - Task: Charge Customer Card
            - Event-based Gateway (Payment Status Decision)
                 - If failed → Trigger Compensation Event (Refund).
                 - If succeeded → Update Inventory.
    

(c) Error Handling and Exception Management

Include appropriate error handling:

  1. Insufficient Inventory

    • If inventory is found to be insufficient:
      • Send Notification to Customer (out of stock).
      • Log Error and Terminate Process.
  2. Payment Failures

    • If payment authorization fails:
      • Send Notification to Customer.
      • Automatic retries (with limit).
      • Log Error and Terminate Process if retries exceed.
  3. Regulatory Compliance Issues

    • Check for regulatory compliance before fulfilling orders.
    • If non-compliant:
      • Send alert to Compliance Department.
      • Log Issue.
      • Terminate Process until compliance is confirmed.

Visual Representation of the BPMN

To visualize the BPMN, you would typically use a BPMN diagramming tool where you can drag and drop the activities, gateways, events, and subprocesses, connecting them with arrows to show the sequence in which they should occur.

Please Note: The actual drawing of the BPMN model would require a graphics-based software tool or an environment compliant with the BPMN specifications (such as Lucidchart, Signavio, or similar).

In summary, the complete BPMN process diagram should visually represent all the elements discussed above while clearly defining the flow of the order fulfilment process respecting the complexities associated with payment processing and regulatory requirements.