MessageFlow Example - Example Messages ๐
Example Message Structures
This page continues the messageflow example in Tutorial 7b, and provides sample Message Header and Message Payload design to make a 3-way process collaboration work. Note that opening messages, sent to a Message Start Event, typically contain just a message name - all of the information is in the payload because the receiving party is not yet aware of the transaction / process that you are starting. Once the process has been started, information known to both parties at that time can be used for message hesder keys.
Pro Tip: If you have the Enterprise Edition with the AskFlo AI Assistant connected, you can get information on the message structures in a collaboration. Use the โMessagingโ quick action button to create a summary of all of the messages on a diagram. You can then ask the assistant for more information if required.
Customer Messages
-
Purchase Order (PO)
- Message Name :
purchaseOrder
- Payload : json
{ "customer": "CustomerCo", "customerPO": "PO123", "dateRequired": "2024-12-30T12:00:00", "purchaseItems": [ {"UPC": "24586356789", "qty_reqd": 20}, {"UPC": "24586456862", "qty_reqd": 10} ] }
- Message Name :
-
Sales Order (SO) Confirmation
- Message Name :
salesOrder
- Key Name :
customerPO
- Key Value :
PO123
- Payload : json
{ "supplierSalesOrder": "SO4567", "orderItems": [ {"UPC": "24586356789", "qty_ordered": 20, "unit_price": 12.56}, {"UPC": "24586456862", "qty_ordered": 10, "unit_price": 86.56} ] }
- Message Name :
-
Delivery Order
- Message Name :
deliveryOrder
- Key Name :
customerPO
- Key Value :
PO123
- Payload : json
{ "ShipFrom": "MySupplierCo", "SupplierRef": "SO5678", "orderItems": [ {"UPC": "24586356789", "qty_ordered": 20}, {"UPC": "24586456862", "qty_ordered": 10} ], "mode": "air", "waybill": "45673647741578" }
- Message Name :
-
Invoice
- Message Name :
sendInvoice
- Key Name :
customerPO
- Key Value :
PO123
- Payload : json
{"the bill": "..."}
- Message Name :
Supplier Messages
-
Purchase Order (PO)
- Message Name :
purchaseOrder
- Payload : Same as the Customerโs PO payload provided above.
- Message Name :
-
Sales Order (SO)
- Message Name :
salesOrder
- Key Name :
customerPO
- Key Value :
PO123
- Payload : Same as the SO payload above for Customer.
- Message Name :
-
Shipping Instructions
- Message Name :
shippingInstruction
- Payload : json
{ "ShipFrom": "MySupplierCo", "SupplierRef": "SO5678", "ShipTo": "MyCustomerCo", "CustomerRef": "PO123", "DateRequired": "2024-12-30T12:00:00", "orderItems": [ {"UPC": "24586356789", "qty_ordered": 20}, {"UPC": "24586456862", "qty_ordered": 10} ] }
- Message Name :
-
Delivery Confirmation
- Message Name :
deliveryConfirmation
- Key Name :
supplierSO
- Key Value :
SO5678
- Payload : Same as the Delivery Confirmation payload below from the Shipper.
- Message Name :
-
Invoice
- Message Name :
sendInvoice
- Key Name :
customerPO
- Key Value :
PO123
- Payload : Same as the Invoice payload above for Customer.
- Message Name :
Shipper Messages
-
Shipping Instructions
- Message Name :
shippingInstruction
- Payload : Same as the Supplierโs Shipping Instructions payload.
- Message Name :
-
Delivery Confirmation
- Message Name :
deliveryConfirmation
- Key Name :
supplierSO
- Key Value :
SO5678
- Payload : json
{ "ShipFrom": "MySupplierCo", "SupplierRef": "SO5678", "ShipTo": "MyCustomerCo", "CustomerRef": "PO123", "deliveredItems": [ {"UPC": "24586356789", "qty_ordered": 20}, {"UPC": "24586456862", "qty_ordered": 10} ], "mode": "air", "waybill": "45673647741578", "dateDelivered": "2024-10-02T08:47:00", "signedForBy": "Bill Smith" }
- Message Name :
Adjusting the communication structure in this way ensures clarity and accuracy in representing the message exchanges as defined in the BPMN diagram.