2006 lines
103 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:spiffworkflow="http://spiffworkflow.org/bpmn/schema/1.0/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" camunda:diagramRelationId="f01e22f1-a50b-42ba-afad-22f56fc3e635">
<bpmn:collaboration id="Collaboration_130jph2">
<bpmn:participant id="Participant_1fsb6gv" name="Core Contributor" processRef="Process_cc_invoice_approval_process_v2_b" />
<bpmn:participant id="Participant_11ab2hx" name="Process management platform" processRef="Process_cc_invoice_approval_process_v2_a" />
<bpmn:participant id="Participant_0a8arrz" name="AWS DynamoDB" />
<bpmn:participant id="Participant_1qabwrg" name="AWS S3" />
<bpmn:participant id="Participant_0b27sri" name="Xero" />
<bpmn:messageFlow id="Flow_0ppupld" sourceRef="Activity_175j3o7" targetRef="Participant_0a8arrz" />
<bpmn:messageFlow id="Flow_0yfnc92" sourceRef="Activity_0p88elm" targetRef="Participant_1qabwrg" />
<bpmn:messageFlow id="Flow_0jciftq" sourceRef="Activity_0gkpa9s" targetRef="Participant_1fsb6gv" />
<bpmn:messageFlow id="Flow_0p0bc5u" sourceRef="Activity_0fq1nb4" targetRef="Participant_0b27sri" />
<bpmn:messageFlow id="Flow_1getkzr" sourceRef="Activity_0rae8g6" targetRef="Participant_1fsb6gv" />
<bpmn:messageFlow id="Flow_1dgkwzr" sourceRef="Waku_Message_Pending_Payment" targetRef="Participant_1fsb6gv" />
<bpmn:messageFlow id="Flow_14gw1v6" sourceRef="Participant_0a8arrz" targetRef="Activity_0gkejaj" />
<bpmn:textAnnotation id="TextAnnotation_1uaw1w7">
<bpmn:text>Environment - Vendor portal, Mailbox, etc.</bpmn:text>
</bpmn:textAnnotation>
<bpmn:association id="Association_1eygti7" sourceRef="Participant_1fsb6gv" targetRef="TextAnnotation_1uaw1w7" />
<bpmn:correlationKey name="CorrelationKey_Submit_Invoice">
<bpmn:correlationPropertyRef>CorrelationProperty_Submit_Invoice</bpmn:correlationPropertyRef>
</bpmn:correlationKey>
</bpmn:collaboration>
<bpmn:process id="Process_cc_invoice_approval_process_v2_b" isExecutable="false" />
<bpmn:process id="Process_cc_invoice_approval_process_v2_a" isExecutable="true">
<bpmn:laneSet id="LaneSet_0txkzqg">
<bpmn:lane id="Lane_1a0qu8e" name="Process Initiator">
<bpmn:flowNodeRef>Submit_the_invoice</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Gateway_validation_successful_question_mark</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Event_15y55nw</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Gateway_1lbghql</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Event_0x83ruk</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Event_0m3ri6v</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Gateway_1l4tz4i</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Activity_0fq1nb4</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Event_1usbnt0</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Event_0lhkxwc</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Event_1b58a3z</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Activity_0faln91</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Event_0rwxlca</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Activity_07oyzdx</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Gateway_05ov5p5</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Activity_0p88elm</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Gateway_1717c0p</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Activity_104xpp8</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Activity_175j3o7</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Event_176ch98</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Delete_File</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Gateway_0dqj39f</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Event_1vi3um1</bpmn:flowNodeRef>
<bpmn:flowNodeRef>SubProcess_Data_validation_rules</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Event_invoice_validation_failed</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Gateway_0wk5se9</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Activity_show_errors</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Activity_1colhao</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Activity_1u89kok</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Event_1r3yh2kx</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Activity_0rae8g6</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Activity_1ucvkk4</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Activity_1kgaqpf</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Waku_Message_Pending_Payment</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Activity_0gkpa9s</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Activity_0gkejaj</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Event_169on0z</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Activity_10p5t0r</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Activity_0twki30</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Activity_1864qj2</bpmn:flowNodeRef>
</bpmn:lane>
<bpmn:lane id="Lane_1b7abal" name="Project Lead">
<bpmn:flowNodeRef>Activity_06b32ar</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Activity_1t8wi0r</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Gateway_06i3we9</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Event_09q0ym0</bpmn:flowNodeRef>
</bpmn:lane>
<bpmn:lane id="Lane_1so23vf" name="Finance Team">
<bpmn:flowNodeRef>Activity_0cdgqi0</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Gateway_1ytq6m7</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Activity_11stdua</bpmn:flowNodeRef>
<bpmn:flowNodeRef>Event_1lh7308</bpmn:flowNodeRef>
</bpmn:lane>
</bpmn:laneSet>
<bpmn:sequenceFlow id="Flow_1x4rtop" name="Yes" sourceRef="Gateway_validation_successful_question_mark" targetRef="Activity_10p5t0r" />
<bpmn:sequenceFlow id="Flow_05ffq52" name="No" sourceRef="Gateway_validation_successful_question_mark" targetRef="Event_invoice_validation_failed">
<bpmn:conditionExpression>not(svc_is_invoice_submit_pass)</bpmn:conditionExpression>
</bpmn:sequenceFlow>
<bpmn:sequenceFlow id="Flow_1c5u447" sourceRef="Activity_0gkejaj" targetRef="Gateway_1lbghql" />
<bpmn:sequenceFlow id="Flow_1gohkts" name="Yes" sourceRef="Gateway_1lbghql" targetRef="Event_0m3ri6v" />
<bpmn:sequenceFlow id="Flow_18xvx8w" name="yes" sourceRef="Gateway_1l4tz4i" targetRef="Activity_1kgaqpf" />
<bpmn:sequenceFlow id="Flow_1ex5hfx" sourceRef="Event_15y55nw" targetRef="Activity_0gkejaj" />
<bpmn:sequenceFlow id="Flow_16bw9hx" name="No" sourceRef="Gateway_1lbghql" targetRef="Event_0x83ruk">
<bpmn:conditionExpression>not(isMatch)</bpmn:conditionExpression>
</bpmn:sequenceFlow>
<bpmn:sequenceFlow id="Flow_0bfs2xe" name="No" sourceRef="Gateway_1l4tz4i" targetRef="Activity_0rae8g6">
<bpmn:conditionExpression>not(isInvoiceApproved)</bpmn:conditionExpression>
</bpmn:sequenceFlow>
<bpmn:sequenceFlow id="Flow_0c0c9mw" sourceRef="Activity_0rae8g6" targetRef="Event_1b58a3z" />
<bpmn:sequenceFlow id="Flow_13ng1f4" sourceRef="Event_invoice_validation_failed" targetRef="Activity_show_errors" />
<bpmn:sequenceFlow id="Flow_18cic3h" sourceRef="Activity_show_errors" targetRef="Activity_0twki30" />
<bpmn:sequenceFlow id="Flow_02moyg7" sourceRef="Submit_the_invoice" targetRef="SubProcess_Data_validation_rules" />
<bpmn:sequenceFlow id="Flow_1ck27i7" sourceRef="SubProcess_Data_validation_rules" targetRef="Gateway_validation_successful_question_mark" />
<bpmn:sequenceFlow id="Flow_1v8dszb" sourceRef="Event_09q0ym0" targetRef="Activity_1t8wi0r" />
<bpmn:sequenceFlow id="Flow_0hev3yn" sourceRef="Gateway_05ov5p5" targetRef="Activity_175j3o7" />
<bpmn:sequenceFlow id="Flow_02o270g" sourceRef="Activity_175j3o7" targetRef="Gateway_1717c0p" />
<bpmn:sequenceFlow id="Flow_0o94g4u" sourceRef="Activity_0p88elm" targetRef="Gateway_1717c0p" />
<bpmn:sequenceFlow id="Flow_1vxagrf" sourceRef="Event_1r3yh2kx" targetRef="Activity_1u89kok" />
<bpmn:sequenceFlow id="Flow_0bipj9q" sourceRef="Activity_1u89kok" targetRef="Activity_1colhao" />
<bpmn:sequenceFlow id="Flow_04ccp12" sourceRef="Event_0m3ri6v" targetRef="Activity_1kgaqpf" />
<bpmn:sequenceFlow id="Flow_0kngdw4" sourceRef="Event_0x83ruk" targetRef="Activity_1ucvkk4" />
<bpmn:sequenceFlow id="Flow_0lfqk0y" sourceRef="Activity_1ucvkk4" targetRef="Activity_06b32ar" />
<bpmn:sequenceFlow id="Flow_1ds4s8o" sourceRef="Activity_1kgaqpf" targetRef="Activity_0cdgqi0" />
<bpmn:sequenceFlow id="Flow_00kky3k" name="No" sourceRef="Gateway_1ytq6m7" targetRef="Gateway_1l4tz4i">
<bpmn:conditionExpression>not(isInvoiceApproved)</bpmn:conditionExpression>
</bpmn:sequenceFlow>
<bpmn:sequenceFlow id="Flow_0h96w9j" name="Yes" sourceRef="Gateway_1ytq6m7" targetRef="Activity_0fq1nb4" />
<bpmn:sequenceFlow id="Flow_053ca95" sourceRef="Activity_0fq1nb4" targetRef="Event_0lhkxwc" />
<bpmn:sequenceFlow id="Flow_0a9w301" sourceRef="Gateway_1717c0p" targetRef="Delete_File" />
<bpmn:sequenceFlow id="Flow_15pzvrr" sourceRef="Activity_0faln91" targetRef="Gateway_1l4tz4i" />
<bpmn:sequenceFlow id="Flow_02v6lr2" sourceRef="Activity_11stdua" targetRef="Event_1lh7308" />
<bpmn:sequenceFlow id="Flow_04fl87d" sourceRef="Activity_0gkpa9s" targetRef="Event_15y55nw" />
<bpmn:sequenceFlow id="Flow_1jfb24q" sourceRef="Waku_Message_Pending_Payment" targetRef="Event_1usbnt0" />
<bpmn:sequenceFlow id="Flow_1qf14hx" sourceRef="Gateway_06i3we9" targetRef="Event_0rwxlca" />
<bpmn:sequenceFlow id="Flow_1w4cqkv" sourceRef="Activity_1t8wi0r" targetRef="Gateway_06i3we9" />
<bpmn:sequenceFlow id="Flow_17vkjgc" sourceRef="Gateway_0wk5se9" targetRef="Submit_the_invoice" />
<bpmn:sequenceFlow id="Flow_1pefcgv" sourceRef="Activity_0twki30" targetRef="Gateway_0wk5se9" />
<bpmn:sequenceFlow id="Flow_1s2as7o" sourceRef="Gateway_05ov5p5" targetRef="Activity_104xpp8" />
<bpmn:sequenceFlow id="Flow_0hyvwku" sourceRef="Activity_104xpp8" targetRef="Activity_0p88elm" />
<bpmn:sequenceFlow id="Flow_1fvtcqt" sourceRef="Event_0lhkxwc" targetRef="Waku_Message_Pending_Payment" />
<bpmn:sequenceFlow id="Flow_14glsqd" sourceRef="Event_176ch98" targetRef="Gateway_05ov5p5" />
<bpmn:userTask id="Submit_the_invoice" name="2. Submit the invoice" scriptFormat="python" script="SdgsdGsdhgwsDEHhww">
<bpmn:extensionElements>
<spiffworkflow:properties>
<spiffworkflow:property name="formJsonSchemaFilename" value="Submit-the-invoice_JSONSchema.json" />
<spiffworkflow:property name="formUiSchemaFilename" value="Submit-the-invoice_UISchema.json" />
</spiffworkflow:properties>
<spiffworkflow:postScript />
<spiffworkflow:preScript />
</bpmn:extensionElements>
<bpmn:incoming>Flow_17vkjgc</bpmn:incoming>
<bpmn:outgoing>Flow_02moyg7</bpmn:outgoing>
</bpmn:userTask>
<bpmn:exclusiveGateway id="Gateway_validation_successful_question_mark" name="Successful?" default="Flow_1x4rtop">
<bpmn:incoming>Flow_1ck27i7</bpmn:incoming>
<bpmn:outgoing>Flow_1x4rtop</bpmn:outgoing>
<bpmn:outgoing>Flow_05ffq52</bpmn:outgoing>
</bpmn:exclusiveGateway>
<bpmn:subProcess id="SubProcess_Data_validation_rules" name="2b. Data validation rules">
<bpmn:incoming>Flow_02moyg7</bpmn:incoming>
<bpmn:outgoing>Flow_1ck27i7</bpmn:outgoing>
<bpmn:dataOutputAssociation id="DataOutputAssociation_1topzui">
<bpmn:targetRef>DataObjectReference_0bymrvr</bpmn:targetRef>
</bpmn:dataOutputAssociation>
<bpmn:startEvent id="Event_1qkuk5g">
<bpmn:outgoing>Flow_1avkxpe</bpmn:outgoing>
</bpmn:startEvent>
<bpmn:scriptTask id="Activity_Check_Due_Date" name="Check Due Date" scriptFormat="python">
<bpmn:incoming>Flow_18i6dlo</bpmn:incoming>
<bpmn:outgoing>Flow_1d7sgm2</bpmn:outgoing>
<bpmn:script>invoice_date_obj = datetime.strptime(invoice.dueDate, '%Y-%m-%d')
local_date_time_obj = datetime.strptime(local_date_str, '%Y-%m-%d')
if invoice_date_obj &gt; local_date_time_obj:
svc_is_due_date_after = True
else:
svc_is_due_date_after = False
# Add date of invoice
invoice["invoiceDate"] = local_date_str
ld = str(local_date_time_obj)
ido = str(invoice_date_obj)
del local_date_time_obj
del invoice_date_obj
del datetime</bpmn:script>
</bpmn:scriptTask>
<bpmn:endEvent id="Event_015l7j8">
<bpmn:incoming>Flow_04odmtl</bpmn:incoming>
</bpmn:endEvent>
<bpmn:sequenceFlow id="Flow_1avkxpe" sourceRef="Event_1qkuk5g" targetRef="Activity_check_contributor_name" />
<bpmn:scriptTask id="Activity_check_contributor_name" name="Check Contributor Name" scriptFormat="python">
<bpmn:extensionElements>
<spiffworkflow:unitTests>
<spiffworkflow:unitTest id="ScriptUnitTest_1kke2c8">
<spiffworkflow:inputJson>{"invoice.contributorName": "Harmeet"}</spiffworkflow:inputJson>
<spiffworkflow:expectedOutputJson>{
"isNameNum": false,
"invoice.contributorName": "Harmeet"
}</spiffworkflow:expectedOutputJson>
</spiffworkflow:unitTest>
</spiffworkflow:unitTests>
</bpmn:extensionElements>
<bpmn:incoming>Flow_1avkxpe</bpmn:incoming>
<bpmn:outgoing>Flow_0mvmd06</bpmn:outgoing>
<bpmn:script>svc_is_num_in_name = False
for c in invoice.contributorName:
if c.isdigit():
svc_is_num_in_name = True
break
del c</bpmn:script>
</bpmn:scriptTask>
<bpmn:scriptTask id="Activity_check_invoice_amount" name="Check Invoice Amount" scriptFormat="python">
<bpmn:incoming>Flow_0mvmd06</bpmn:incoming>
<bpmn:outgoing>Flow_0wp2mcf</bpmn:outgoing>
<bpmn:script># Check if there are more than two decimal places
invoiceAmount_str = str(invoice.invoiceAmount)
d = decimal.Decimal(invoiceAmount_str)
d_cnt = d.as_tuple().exponent
# Get number of decimal places
svc_decimal_cnt = abs(d_cnt)
#Delete unneeded variables
del d
del d_cnt
del decimal</bpmn:script>
</bpmn:scriptTask>
<bpmn:sequenceFlow id="Flow_0tzjowk" sourceRef="Activity_check_validation_rules" targetRef="Activity_1j8k6mb" />
<bpmn:businessRuleTask id="Activity_check_validation_rules" name="Check Validation Rules">
<bpmn:extensionElements>
<spiffworkflow:calledDecisionId>Submit_Involce_Validation</spiffworkflow:calledDecisionId>
</bpmn:extensionElements>
<bpmn:incoming>Flow_1d7sgm2</bpmn:incoming>
<bpmn:outgoing>Flow_0tzjowk</bpmn:outgoing>
</bpmn:businessRuleTask>
<bpmn:callActivity id="Activity_call_local_date_and_time" name="Call Local Date &#38; Time" calledElement="Shared_Local_Date_Time">
<bpmn:incoming>Flow_0wp2mcf</bpmn:incoming>
<bpmn:outgoing>Flow_18i6dlo</bpmn:outgoing>
</bpmn:callActivity>
<bpmn:sequenceFlow id="Flow_18i6dlo" sourceRef="Activity_call_local_date_and_time" targetRef="Activity_Check_Due_Date" />
<bpmn:sequenceFlow id="Flow_1d7sgm2" sourceRef="Activity_Check_Due_Date" targetRef="Activity_check_validation_rules" />
<bpmn:sequenceFlow id="Flow_0mvmd06" sourceRef="Activity_check_contributor_name" targetRef="Activity_check_invoice_amount" />
<bpmn:sequenceFlow id="Flow_0wp2mcf" sourceRef="Activity_check_invoice_amount" targetRef="Activity_call_local_date_and_time" />
<bpmn:scriptTask id="Activity_1j8k6mb" name="Set Invoice Status">
<bpmn:incoming>Flow_0tzjowk</bpmn:incoming>
<bpmn:outgoing>Flow_04odmtl</bpmn:outgoing>
<bpmn:script># Set Invoice Status
if svc_is_invoice_submit_pass:
invoice["invoiceStatus"] = "Awaiting approval"
else:
invoice["invoiceStatus"] = "Invoice validation failed"</bpmn:script>
</bpmn:scriptTask>
<bpmn:sequenceFlow id="Flow_04odmtl" sourceRef="Activity_1j8k6mb" targetRef="Event_015l7j8" />
</bpmn:subProcess>
<bpmn:intermediateThrowEvent id="Event_invoice_validation_failed" name="Invoice validation failed">
<bpmn:documentation>Process milestone should update the process metadata field “milestone reached”</bpmn:documentation>
<bpmn:incoming>Flow_05ffq52</bpmn:incoming>
<bpmn:outgoing>Flow_13ng1f4</bpmn:outgoing>
</bpmn:intermediateThrowEvent>
<bpmn:dataObjectReference id="DataObjectReference_0bymrvr" name="enumerations_list" dataObjectRef="enumerations_list" />
<bpmn:dataObject id="enumerations_list" />
<bpmn:exclusiveGateway id="Gateway_0wk5se9">
<bpmn:incoming>Flow_1pefcgv</bpmn:incoming>
<bpmn:incoming>Flow_061sv6t</bpmn:incoming>
<bpmn:outgoing>Flow_17vkjgc</bpmn:outgoing>
</bpmn:exclusiveGateway>
<bpmn:manualTask id="Activity_show_errors" name="Show Error(s)">
<bpmn:extensionElements>
<spiffworkflow:instructionsForEndUser>{{ submitInvoiceValidationMessage }}
**Please fix when resubmitting.** </spiffworkflow:instructionsForEndUser>
</bpmn:extensionElements>
<bpmn:incoming>Flow_13ng1f4</bpmn:incoming>
<bpmn:outgoing>Flow_18cic3h</bpmn:outgoing>
</bpmn:manualTask>
<bpmn:callActivity id="Activity_1colhao" name="Call Shared: Build Enum List from AWS" calledElement="Shared_Build_Enum_List_from_AWS">
<bpmn:extensionElements>
<spiffworkflow:preScript>whichSubject = "Currency"
addNew = False</spiffworkflow:preScript>
</bpmn:extensionElements>
<bpmn:incoming>Flow_0bipj9q</bpmn:incoming>
<bpmn:outgoing>Flow_061sv6t</bpmn:outgoing>
</bpmn:callActivity>
<bpmn:callActivity id="Activity_1u89kok" name="Call Shared: Start Process" calledElement="Shared_Start_Process">
<bpmn:extensionElements>
<spiffworkflow:preScript>find_user = current_user["username"]
isCurrentUser = True</spiffworkflow:preScript>
</bpmn:extensionElements>
<bpmn:incoming>Flow_1vxagrf</bpmn:incoming>
<bpmn:outgoing>Flow_0bipj9q</bpmn:outgoing>
<bpmn:dataOutputAssociation id="DataOutputAssociation_0buh48w">
<bpmn:targetRef>DataObjectReference_05liqvr</bpmn:targetRef>
</bpmn:dataOutputAssociation>
</bpmn:callActivity>
<bpmn:startEvent id="Event_1r3yh2kx">
<bpmn:outgoing>Flow_1vxagrf</bpmn:outgoing>
</bpmn:startEvent>
<bpmn:sequenceFlow id="Flow_0dhpy0v" sourceRef="Event_1vi3um1" targetRef="Event_176ch98" />
<bpmn:sequenceFlow id="Flow_1x00zm0" sourceRef="Event_0rwxlca" targetRef="Activity_0faln91" />
<bpmn:sequenceFlow id="Flow_09r1s5r" sourceRef="Activity_06b32ar" targetRef="Gateway_06i3we9" />
<bpmn:sequenceFlow id="Flow_1whkgq0" sourceRef="Activity_0cdgqi0" targetRef="Activity_11stdua" />
<bpmn:sequenceFlow id="Flow_1l74eab" sourceRef="Event_1lh7308" targetRef="Gateway_1ytq6m7" />
<bpmn:sequenceFlow id="Flow_0z51hpb" sourceRef="Activity_07oyzdx" targetRef="Gateway_0dqj39f" />
<bpmn:sequenceFlow id="Flow_1xvt99y" sourceRef="Gateway_0dqj39f" targetRef="Event_1vi3um1" />
<bpmn:sequenceFlow id="Flow_06mfxze" sourceRef="Event_169on0z" targetRef="Gateway_0dqj39f" />
<bpmn:sequenceFlow id="Flow_0cj1m0h" sourceRef="Delete_File" targetRef="Activity_0gkpa9s" />
<bpmn:intermediateThrowEvent id="Event_15y55nw" name="Invoice is submitted">
<bpmn:documentation>Process milestone should update the process metadata field “milestone reached”</bpmn:documentation>
<bpmn:incoming>Flow_04fl87d</bpmn:incoming>
<bpmn:outgoing>Flow_1ex5hfx</bpmn:outgoing>
</bpmn:intermediateThrowEvent>
<bpmn:exclusiveGateway id="Gateway_1lbghql" name="Match?" default="Flow_1gohkts">
<bpmn:incoming>Flow_1c5u447</bpmn:incoming>
<bpmn:outgoing>Flow_1gohkts</bpmn:outgoing>
<bpmn:outgoing>Flow_16bw9hx</bpmn:outgoing>
</bpmn:exclusiveGateway>
<bpmn:intermediateThrowEvent id="Event_0x83ruk" name="Invoice Approval is required">
<bpmn:incoming>Flow_16bw9hx</bpmn:incoming>
<bpmn:outgoing>Flow_0kngdw4</bpmn:outgoing>
</bpmn:intermediateThrowEvent>
<bpmn:intermediateThrowEvent id="Event_0m3ri6v" name="Invoice is verified and approved">
<bpmn:incoming>Flow_1gohkts</bpmn:incoming>
<bpmn:outgoing>Flow_04ccp12</bpmn:outgoing>
</bpmn:intermediateThrowEvent>
<bpmn:dataObjectReference id="DataObjectReference_1ykzuco" name="wr_InvoiceSubmitted" dataObjectRef="wr_InvoiceSubmitted" />
<bpmn:dataObject id="wr_InvoiceSubmitted" />
<bpmn:exclusiveGateway id="Gateway_1l4tz4i" name="Approved?" default="Flow_18xvx8w">
<bpmn:incoming>Flow_00kky3k</bpmn:incoming>
<bpmn:incoming>Flow_15pzvrr</bpmn:incoming>
<bpmn:outgoing>Flow_18xvx8w</bpmn:outgoing>
<bpmn:outgoing>Flow_0bfs2xe</bpmn:outgoing>
</bpmn:exclusiveGateway>
<bpmn:userTask id="Activity_06b32ar" name="Approve Invoice - Project Lead">
<bpmn:extensionElements>
<spiffworkflow:properties>
<spiffworkflow:property name="formJsonSchemaFilename" value="invoice-approval_JSONSchema.json" />
<spiffworkflow:property name="formUiSchemaFilename" value="invoice-approval_UISchema.json" />
</spiffworkflow:properties>
<spiffworkflow:postScript />
<spiffworkflow:preScript># Set Timer Check
isApprovalTimer = False</spiffworkflow:preScript>
<spiffworkflow:instructionsForEndUser>__________________________________________________________________________
_**Submitted by:**_ {{ invoice.contributorName }}
_**Submiiter Id:**_ {{ invoice.contributorId }}
_**Invoice Id:**_ {{ invoice.invoiceId }}
_**Amount:**_ {{ invoice.invoiceAmount_str }}
_**Submitted on:**_ {{ invoiceDate }}
_**Due Date:**_ {{ invoice.dueDate}}
__________________________________________________________________________
</spiffworkflow:instructionsForEndUser>
</bpmn:extensionElements>
<bpmn:incoming>Flow_0lfqk0y</bpmn:incoming>
<bpmn:outgoing>Flow_09r1s5r</bpmn:outgoing>
</bpmn:userTask>
<bpmn:userTask id="Activity_0cdgqi0" name="Approve Invoice - Finance">
<bpmn:extensionElements>
<spiffworkflow:properties>
<spiffworkflow:property name="formJsonSchemaFilename" value="invoice-approval_JSONSchema.json" />
<spiffworkflow:property name="formUiSchemaFilename" value="invoice-approval_UISchema.json" />
</spiffworkflow:properties>
<spiffworkflow:postScript />
<spiffworkflow:instructionsForEndUser>__________________________________________________________________________
_**Submitted by:**_ {{ invoice.contributorName }}
_**Submiiter Id:**_ {{ invoice.contributorId }}
_**Invoice Id:**_ {{ invoice.invoiceId }}
_**Amount:**_ {{ invoice.invoiceAmount_str }}
_**Due Date:**_ {{ invoice.dueDate}}
__________________________________________________________________________ </spiffworkflow:instructionsForEndUser>
</bpmn:extensionElements>
<bpmn:incoming>Flow_1ds4s8o</bpmn:incoming>
<bpmn:outgoing>Flow_1whkgq0</bpmn:outgoing>
</bpmn:userTask>
<bpmn:scriptTask id="Activity_1t8wi0r" name="Waku Message: No Project Lead Response" scriptFormat="python">
<bpmn:incoming>Flow_1v8dszb</bpmn:incoming>
<bpmn:outgoing>Flow_1w4cqkv</bpmn:outgoing>
<bpmn:script># Set Timer Check
isApprovalTimer = True</bpmn:script>
</bpmn:scriptTask>
<bpmn:exclusiveGateway id="Gateway_06i3we9">
<bpmn:incoming>Flow_1w4cqkv</bpmn:incoming>
<bpmn:incoming>Flow_09r1s5r</bpmn:incoming>
<bpmn:outgoing>Flow_1qf14hx</bpmn:outgoing>
</bpmn:exclusiveGateway>
<bpmn:dataObjectReference id="DataObjectReference_1wclgyx" name="wr_invoiceRejected" dataObjectRef="wr_invoiceRejected" />
<bpmn:dataObject id="wr_invoiceRejected" />
<bpmn:serviceTask id="Activity_0fq1nb4" name="5. Create Invoice in Xero">
<bpmn:extensionElements>
<spiffworkflow:serviceTaskOperator id="xero/CreateInvoice" resultVariable="resp_xeroCreateInvoice">
<spiffworkflow:parameters>
<spiffworkflow:parameter id="access_token" type="any" value="&#34;secret:xero/OAuth&#34;" />
<spiffworkflow:parameter id="amount" type="str" value="str(invoice_amount)" />
<spiffworkflow:parameter id="contact_email" type="str" value="current_user_extras[&#34;email&#34;]" />
<spiffworkflow:parameter id="contact_name" type="str" value="current_user_extras[&#34;full_name&#34;]" />
<spiffworkflow:parameter id="description" type="str" value="&#34;Test for now&#34;" />
</spiffworkflow:parameters>
</spiffworkflow:serviceTaskOperator>
<spiffworkflow:preScript />
</bpmn:extensionElements>
<bpmn:incoming>Flow_0h96w9j</bpmn:incoming>
<bpmn:outgoing>Flow_053ca95</bpmn:outgoing>
<bpmn:dataOutputAssociation id="DataOutputAssociation_076hmxy">
<bpmn:targetRef>DataObjectReference_1g4gzsx</bpmn:targetRef>
</bpmn:dataOutputAssociation>
</bpmn:serviceTask>
<bpmn:exclusiveGateway id="Gateway_1ytq6m7" name="Approved?" default="Flow_0h96w9j">
<bpmn:incoming>Flow_1l74eab</bpmn:incoming>
<bpmn:outgoing>Flow_00kky3k</bpmn:outgoing>
<bpmn:outgoing>Flow_0h96w9j</bpmn:outgoing>
</bpmn:exclusiveGateway>
<bpmn:endEvent id="Event_1usbnt0">
<bpmn:incoming>Flow_1jfb24q</bpmn:incoming>
</bpmn:endEvent>
<bpmn:dataObjectReference id="DataObjectReference_0br9o6c" name="wr_invoicePayPend" dataObjectRef="wr_invoicePayPend" />
<bpmn:dataObject id="wr_invoicePayPend" />
<bpmn:dataObjectReference id="DataObjectReference_1g4gzsx" name="resp_xeroCreateInvoice" dataObjectRef="resp_xeroCreateInvoice" />
<bpmn:dataObject id="resp_xeroCreateInvoice" />
<bpmn:intermediateThrowEvent id="Event_0lhkxwc" name="Approved and Awaiting Payment">
<bpmn:incoming>Flow_053ca95</bpmn:incoming>
<bpmn:outgoing>Flow_1fvtcqt</bpmn:outgoing>
</bpmn:intermediateThrowEvent>
<bpmn:dataObjectReference id="DataObjectReference_0x2dn5o" name="wr_notifyFinance" dataObjectRef="wr_notifyFinance" />
<bpmn:dataObject id="wr_notifyFinance" />
<bpmn:endEvent id="Event_1b58a3z" name="Invoice is rejected by Approver">
<bpmn:incoming>Flow_0c0c9mw</bpmn:incoming>
</bpmn:endEvent>
<bpmn:scriptTask id="Activity_0faln91" name="Set Message Info" scriptFormat="python">
<bpmn:incoming>Flow_1x00zm0</bpmn:incoming>
<bpmn:outgoing>Flow_15pzvrr</bpmn:outgoing>
<bpmn:script># Store Team Lead comments elsewhere and clear form comments
if isApprovalTimer:
invoice["commentsProjectLead"] = "No action taken within allotted time"
approvalComment = ""
invoice["isProjectLeadApprove"] = False
isInvoiceApproved = False
# Set Invoice Status
invoice["invoiceStatus"] = "Rejected"
else:
invoice["commentsProjectLead"] = approvalComment
approvalComment = ""
invoice["isProjectLeadApprove"] = isInvoiceApproved
# Set Invoice Status
invoice["invoiceStatus"] = "Approved"</bpmn:script>
</bpmn:scriptTask>
<bpmn:intermediateCatchEvent id="Event_0rwxlca" name="Jon&#39;s Test 2">
<bpmn:incoming>Flow_1qf14hx</bpmn:incoming>
<bpmn:outgoing>Flow_1x00zm0</bpmn:outgoing>
<bpmn:timerEventDefinition id="TimerEventDefinition_1jblyi5">
<bpmn:timeDuration xsi:type="bpmn:tFormalExpression">timedelta(seconds=1)</bpmn:timeDuration>
</bpmn:timerEventDefinition>
</bpmn:intermediateCatchEvent>
<bpmn:scriptTask id="Activity_11stdua" name="Temp Post Script" scriptFormat="python">
<bpmn:incoming>Flow_1whkgq0</bpmn:incoming>
<bpmn:outgoing>Flow_02v6lr2</bpmn:outgoing>
<bpmn:script>invoice.commentsFinance = approvalComment
approvalComment = ""
# Set Invoice Status
if isInvoiceApproved:
invoice["invoiceStatus"] = "Approved by Finance Team"
else:
invoice["invoiceStatus"] = "Rejected by Finance Team"</bpmn:script>
</bpmn:scriptTask>
<bpmn:intermediateCatchEvent id="Event_1lh7308" name="Jon&#39;s Test 3">
<bpmn:incoming>Flow_02v6lr2</bpmn:incoming>
<bpmn:outgoing>Flow_1l74eab</bpmn:outgoing>
<bpmn:timerEventDefinition id="TimerEventDefinition_12fxlgt">
<bpmn:timeDuration xsi:type="bpmn:tFormalExpression">timedelta(seconds=1)</bpmn:timeDuration>
</bpmn:timerEventDefinition>
</bpmn:intermediateCatchEvent>
<bpmn:manualTask id="Activity_07oyzdx" name="Show What&#39;s Next">
<bpmn:extensionElements>
<spiffworkflow:instructionsForEndUser>__________________________________________________________________________
_**Submitted by:**_ {{ invoice.contributorName }}
_**Submitter Id:**_ {{ invoice.contributorId }}
_**Invoice Id:**_ {{ invoice.invoiceId }}
_**Amount:**_ {{ invoice.invoiceAmount_str }}
_**Submitted on:**_ {{ invoice.invoiceDate }}
_**Due Date:**_ {{ invoice.dueDate}}
__________________________________________________________________________
Thank you for your invoice submission.
Updates on the progress of your submission will.be sent to your Status app.
Please click Submit below to return to your Home page.
__________________________________________________________________________
</spiffworkflow:instructionsForEndUser>
</bpmn:extensionElements>
<bpmn:incoming>Flow_06amgv2</bpmn:incoming>
<bpmn:outgoing>Flow_0z51hpb</bpmn:outgoing>
</bpmn:manualTask>
<bpmn:parallelGateway id="Gateway_05ov5p5">
<bpmn:incoming>Flow_14glsqd</bpmn:incoming>
<bpmn:outgoing>Flow_0hev3yn</bpmn:outgoing>
<bpmn:outgoing>Flow_1s2as7o</bpmn:outgoing>
</bpmn:parallelGateway>
<bpmn:serviceTask id="Activity_0p88elm" name="2d. Upload Invoice PDF document" scriptFormat="python" script="invoice_name = invoice.contributorName + &#34;_&#34; + invoice.invoiceId">
<bpmn:extensionElements>
<spiffworkflow:preScript />
<spiffworkflow:postScript />
<spiffworkflow:serviceTaskOperator id="aws/UploadFileData" resultVariable="resp_awsUploadFileData">
<spiffworkflow:parameters>
<spiffworkflow:parameter id="bucket" type="str" value="&#39;sartography-status-pdfs&#39;" />
<spiffworkflow:parameter id="file_data" type="str" value="filesAccept" />
<spiffworkflow:parameter id="object_name" type="str" value="invoice_file_name" />
</spiffworkflow:parameters>
</spiffworkflow:serviceTaskOperator>
</bpmn:extensionElements>
<bpmn:incoming>Flow_0hyvwku</bpmn:incoming>
<bpmn:outgoing>Flow_0o94g4u</bpmn:outgoing>
</bpmn:serviceTask>
<bpmn:parallelGateway id="Gateway_1717c0p">
<bpmn:incoming>Flow_02o270g</bpmn:incoming>
<bpmn:incoming>Flow_0o94g4u</bpmn:incoming>
<bpmn:outgoing>Flow_0a9w301</bpmn:outgoing>
</bpmn:parallelGateway>
<bpmn:scriptTask id="Activity_104xpp8" name="Set Invoice PDF Name" scriptFormat="python">
<bpmn:incoming>Flow_1s2as7o</bpmn:incoming>
<bpmn:outgoing>Flow_0hyvwku</bpmn:outgoing>
<bpmn:script>invoice_file_name = invoice.contributorName + "_" + str(invoice.invoiceId) + ".pdf"</bpmn:script>
</bpmn:scriptTask>
<bpmn:serviceTask id="Activity_175j3o7" name="2c. Save Invoice Data">
<bpmn:extensionElements>
<spiffworkflow:serviceTaskOperator id="aws/AddDynamoItem" resultVariable="resp_awsAddDynamoItem">
<spiffworkflow:parameters>
<spiffworkflow:parameter id="item_data" type="str" value="{ &#34;ContributorName&#34;: invoice.contributorName, &#34;ContributorId&#34;: invoice.contributorId, &#34;InvoiceId&#34;: invoice.invoiceId, &#34;InvoiceAmount&#34;: invoice.invoiceAmount, &#34;InvoiceCurrency&#34;: invoice.invoiceCurrency, &#34;DueDate&#34;: invoice.dueDate }" />
<spiffworkflow:parameter id="table_name" type="str" value="&#39;Invoice&#39;" />
</spiffworkflow:parameters>
</spiffworkflow:serviceTaskOperator>
</bpmn:extensionElements>
<bpmn:incoming>Flow_0hev3yn</bpmn:incoming>
<bpmn:outgoing>Flow_02o270g</bpmn:outgoing>
</bpmn:serviceTask>
<bpmn:intermediateThrowEvent id="Event_176ch98" name="Invoice awaiting approval">
<bpmn:incoming>Flow_0dhpy0v</bpmn:incoming>
<bpmn:outgoing>Flow_14glsqd</bpmn:outgoing>
</bpmn:intermediateThrowEvent>
<bpmn:scriptTask id="Delete_File" name="Delete File">
<bpmn:incoming>Flow_0a9w301</bpmn:incoming>
<bpmn:outgoing>Flow_0cj1m0h</bpmn:outgoing>
<bpmn:script>del(filesAccept)</bpmn:script>
</bpmn:scriptTask>
<bpmn:exclusiveGateway id="Gateway_0dqj39f">
<bpmn:incoming>Flow_0z51hpb</bpmn:incoming>
<bpmn:incoming>Flow_06mfxze</bpmn:incoming>
<bpmn:outgoing>Flow_1xvt99y</bpmn:outgoing>
</bpmn:exclusiveGateway>
<bpmn:intermediateCatchEvent id="Event_1vi3um1" name="Jon&#39;s Test">
<bpmn:incoming>Flow_1xvt99y</bpmn:incoming>
<bpmn:outgoing>Flow_0dhpy0v</bpmn:outgoing>
<bpmn:timerEventDefinition id="TimerEventDefinition_1wiimzf">
<bpmn:timeDuration xsi:type="bpmn:tFormalExpression">timedelta(seconds=1)</bpmn:timeDuration>
</bpmn:timerEventDefinition>
</bpmn:intermediateCatchEvent>
<bpmn:subProcess id="Activity_0rae8g6" name="Waku Message: Invoice Rejected">
<bpmn:extensionElements>
<spiffworkflow:preScript># Check if there are Project Lead and/or Finance comments
is isMatch:
len_finance_comments = len(invoice["commentsFinance"].strip())
len_project_lead_comments = 0
else:
len_finance_comments = len(invoice["commentsFinance"].strip())
len_project_lead_comments = len(invoice["commentsProjectLead"].strip())
# Set which message
if isApprovalTimer:
task_id = "waku_no_team_lead_response"
else:
task_id = "waku_invoice_rejected"</spiffworkflow:preScript>
</bpmn:extensionElements>
<bpmn:incoming>Flow_0bfs2xe</bpmn:incoming>
<bpmn:outgoing>Flow_0c0c9mw</bpmn:outgoing>
<bpmn:dataOutputAssociation id="DataOutputAssociation_0b96bb7">
<bpmn:targetRef>DataObjectReference_1wclgyx</bpmn:targetRef>
</bpmn:dataOutputAssociation>
<bpmn:startEvent id="Event_0ialhor">
<bpmn:outgoing>Flow_14x1v12</bpmn:outgoing>
</bpmn:startEvent>
<bpmn:callActivity id="Activity_0eh4so1" name="Call Waku Messages: Message" calledElement="Waku_Messages_Message">
<bpmn:extensionElements>
<spiffworkflow:preScript># Set Message should not be set
isSetMessage = True
# Set Time Zone
time_zone = current_user_extras["time_zone"]
# Set Time Format
time_format = current_user_extras["time_format"]
# Set Date Format
time_format = current_user_extras["date_format"]</spiffworkflow:preScript>
</bpmn:extensionElements>
<bpmn:incoming>Flow_14x1v12</bpmn:incoming>
<bpmn:outgoing>Flow_1bnxkd6</bpmn:outgoing>
</bpmn:callActivity>
<bpmn:endEvent id="Event_0ihhn4w">
<bpmn:incoming>Flow_01i59kw</bpmn:incoming>
</bpmn:endEvent>
<bpmn:serviceTask id="waku_invoice_rejected" name="3. Notify CC via Waku &#34;invoice rejected&#34;">
<bpmn:extensionElements>
<spiffworkflow:serviceTaskOperator id="waku/SendMessage" resultVariable="wr_invoiceRejected">
<spiffworkflow:parameters>
<spiffworkflow:parameter id="message" type="str" value="waku_message" />
<spiffworkflow:parameter id="message_type" type="str" value="&#34;wakuext_sendOneToOneMessage&#34;" />
<spiffworkflow:parameter id="recipient" type="str" value="current_user_extras[&#34;status_key&#34;]" />
</spiffworkflow:parameters>
</spiffworkflow:serviceTaskOperator>
</bpmn:extensionElements>
<bpmn:incoming>Flow_1bnxkd6</bpmn:incoming>
<bpmn:outgoing>Flow_01i59kw</bpmn:outgoing>
</bpmn:serviceTask>
<bpmn:sequenceFlow id="Flow_14x1v12" sourceRef="Event_0ialhor" targetRef="Activity_0eh4so1" />
<bpmn:sequenceFlow id="Flow_01i59kw" sourceRef="waku_invoice_rejected" targetRef="Event_0ihhn4w" />
<bpmn:sequenceFlow id="Flow_1bnxkd6" sourceRef="Activity_0eh4so1" targetRef="waku_invoice_rejected" />
</bpmn:subProcess>
<bpmn:subProcess id="Activity_1ucvkk4" name="Waku Message: Notify Project Lead">
<bpmn:incoming>Flow_0kngdw4</bpmn:incoming>
<bpmn:outgoing>Flow_0lfqk0y</bpmn:outgoing>
<bpmn:dataObjectReference id="DataObjectReference_0frvqwx" />
<bpmn:startEvent id="Event_00px1yx">
<bpmn:outgoing>Flow_0dvboik</bpmn:outgoing>
</bpmn:startEvent>
<bpmn:endEvent id="Event_1nkaxn4">
<bpmn:incoming>Flow_0y37dgj</bpmn:incoming>
</bpmn:endEvent>
<bpmn:callActivity id="Activity_00b66gy" name="Call Shared: User Info" calledElement="Shared_User_Info">
<bpmn:extensionElements>
<spiffworkflow:preScript># Set who for find
find_user = userKeycloak
isCurrentUser = False</spiffworkflow:preScript>
<spiffworkflow:postScript />
</bpmn:extensionElements>
<bpmn:incoming>Flow_0bv17h4</bpmn:incoming>
<bpmn:outgoing>Flow_1jor3kc</bpmn:outgoing>
</bpmn:callActivity>
<bpmn:serviceTask id="Activity_1ve0iqu" name="Waku Message: Notify Proejct Lead">
<bpmn:extensionElements>
<spiffworkflow:serviceTaskOperator id="waku/SendMessage" resultVariable="respNotifyTeamLead">
<spiffworkflow:parameters>
<spiffworkflow:parameter id="message" type="str" value="waku_message" />
<spiffworkflow:parameter id="message_type" type="str" value="&#34;wakuext_sendOneToOneMessage&#34;" />
<spiffworkflow:parameter id="recipient" type="str" value="project_lead_info[&#34;status_key&#34;]" />
</spiffworkflow:parameters>
</spiffworkflow:serviceTaskOperator>
</bpmn:extensionElements>
<bpmn:incoming>Flow_0re50gq</bpmn:incoming>
<bpmn:outgoing>Flow_0y37dgj</bpmn:outgoing>
</bpmn:serviceTask>
<bpmn:callActivity id="Call_Waku_Messages_Message-Notify_Proejct_Lead" name="Call Waku Messages: Message" calledElement="Waku_Messages_Message">
<bpmn:extensionElements>
<spiffworkflow:preScript># Set Waku message variables
task_id = "waku_notify_project_lead"
isSetMessage = True</spiffworkflow:preScript>
</bpmn:extensionElements>
<bpmn:incoming>Flow_0cl4jmz</bpmn:incoming>
<bpmn:outgoing>Flow_0re50gq</bpmn:outgoing>
</bpmn:callActivity>
<bpmn:scriptTask id="Activity_1jtcvfx" name="Temp Post Script" scriptFormat="python">
<bpmn:incoming>Flow_1jor3kc</bpmn:incoming>
<bpmn:outgoing>Flow_0cl4jmz</bpmn:outgoing>
<bpmn:script># Set Project Lead Info
project_lead_info = {}
project_lead_info["full_name"] = userFullName
project_lead_info["first_name"] = userFirstName
project_lead_info["email"] = userEmail
project_lead_info["time_zone"] = userTimeZone
project_lead_info["time_format"] = userTimeFormat
project_lead_info["date_format"] = userDateFormat
project_lead_info["status_key"] = userStatusKey
# Move to pre-script of Waku Message
# Set Time Zone
time_zone = project_lead_info["time_zone"]
# Set Time Format
time_format = project_lead_info["time_format"]
# Set Date Format
time_format = project_lead_info["date_format"]
del(userFullName)
del(userFirstName)
del(userEmail)
del(userTimeZone)
del(userTimeFormat)
del(userDateFormat)
del(userStatusKey)</bpmn:script>
</bpmn:scriptTask>
<bpmn:sequenceFlow id="Flow_0re50gq" sourceRef="Call_Waku_Messages_Message-Notify_Proejct_Lead" targetRef="Activity_1ve0iqu" />
<bpmn:sequenceFlow id="Flow_0y37dgj" sourceRef="Activity_1ve0iqu" targetRef="Event_1nkaxn4" />
<bpmn:scriptTask id="Activity_1982sk7" name="Get Project Lead" scriptFormat="python">
<bpmn:incoming>Flow_0dvboik</bpmn:incoming>
<bpmn:outgoing>Flow_01ki4jt</bpmn:outgoing>
<bpmn:script>userBambooId_str = current_user_extras["bamboo_supervisor_api_id"]</bpmn:script>
</bpmn:scriptTask>
<bpmn:sequenceFlow id="Flow_0dvboik" sourceRef="Event_00px1yx" targetRef="Activity_1982sk7" />
<bpmn:scriptTask id="Activity_1nyfxna" name="Temp Pre Script" scriptFormat="python">
<bpmn:script># Set who for find
find_user = userKeycloak
isCurrentUser = False</bpmn:script>
</bpmn:scriptTask>
<bpmn:callActivity id="Activity_1r3o0bm" name="Get Keycloak Username" calledElement="Bamboo_Conversion">
<bpmn:incoming>Flow_01ki4jt</bpmn:incoming>
<bpmn:outgoing>Flow_0bv17h4</bpmn:outgoing>
</bpmn:callActivity>
<bpmn:sequenceFlow id="Flow_01ki4jt" sourceRef="Activity_1982sk7" targetRef="Activity_1r3o0bm" />
<bpmn:sequenceFlow id="Flow_0bv17h4" sourceRef="Activity_1r3o0bm" targetRef="Activity_00b66gy" />
<bpmn:sequenceFlow id="Flow_1jor3kc" sourceRef="Activity_00b66gy" targetRef="Activity_1jtcvfx" />
<bpmn:sequenceFlow id="Flow_0cl4jmz" sourceRef="Activity_1jtcvfx" targetRef="Call_Waku_Messages_Message-Notify_Proejct_Lead" />
</bpmn:subProcess>
<bpmn:subProcess id="Activity_1kgaqpf" name="Waku Message: Notify Finance">
<bpmn:incoming>Flow_18xvx8w</bpmn:incoming>
<bpmn:incoming>Flow_04ccp12</bpmn:incoming>
<bpmn:outgoing>Flow_1ds4s8o</bpmn:outgoing>
<bpmn:dataOutputAssociation id="DataOutputAssociation_02537rk">
<bpmn:targetRef>DataObjectReference_0x2dn5o</bpmn:targetRef>
</bpmn:dataOutputAssociation>
<bpmn:startEvent id="Event_0k7eiau">
<bpmn:outgoing>Flow_11zkgke</bpmn:outgoing>
</bpmn:startEvent>
<bpmn:callActivity id="Activity_1wqf9dm" name="Call Waku Messages: Message" calledElement="Waku_Messages_Message">
<bpmn:extensionElements>
<spiffworkflow:preScript># Set Task Id
task_id = "waku_notify_finance"
# Set Message should not be set
isSetMessage = True
isInvoiceApproved = ""</spiffworkflow:preScript>
</bpmn:extensionElements>
<bpmn:incoming>Flow_0u8sn4c</bpmn:incoming>
<bpmn:outgoing>Flow_0n3djvs</bpmn:outgoing>
</bpmn:callActivity>
<bpmn:endEvent id="Event_0czwuqb">
<bpmn:incoming>Flow_0lr2fpj</bpmn:incoming>
</bpmn:endEvent>
<bpmn:serviceTask id="Activity_0ez288q" name="Send Waku Message: Notify Finance">
<bpmn:extensionElements>
<spiffworkflow:serviceTaskOperator id="waku/SendMessage" resultVariable="wr_notifyFinance">
<spiffworkflow:parameters>
<spiffworkflow:parameter id="message" type="str" value="waku_message" />
<spiffworkflow:parameter id="message_type" type="str" value="&#34;wakuext_sendOneToOneMessage&#34;" />
<spiffworkflow:parameter id="recipient" type="str" value="finance_info[&#34;status_key&#34;]" />
</spiffworkflow:parameters>
</spiffworkflow:serviceTaskOperator>
</bpmn:extensionElements>
<bpmn:incoming>Flow_0n3djvs</bpmn:incoming>
<bpmn:outgoing>Flow_0lr2fpj</bpmn:outgoing>
</bpmn:serviceTask>
<bpmn:scriptTask id="Activity_01g159b" name="Get Finance Team" scriptFormat="python">
<bpmn:incoming>Flow_11zkgke</bpmn:incoming>
<bpmn:outgoing>Flow_1ale8a2</bpmn:outgoing>
<bpmn:script># Get Finance Group Members
finance_members_start = get_group_members("Finance Team")
finance_members = finance_members_start
# Removed all but Sasha for demo
for member in finance_members:
if member != "alex":
finance_members.remove(member)
# Set who for find
find_user = 'alex'
isCurrentUser = False
# Set Project Lead Timer Check to False to determine which message to send later
isApprovalTimer = False</bpmn:script>
</bpmn:scriptTask>
<bpmn:sequenceFlow id="Flow_0n3djvs" sourceRef="Activity_1wqf9dm" targetRef="Activity_0ez288q" />
<bpmn:sequenceFlow id="Flow_0lr2fpj" sourceRef="Activity_0ez288q" targetRef="Event_0czwuqb" />
<bpmn:sequenceFlow id="Flow_11zkgke" sourceRef="Event_0k7eiau" targetRef="Activity_01g159b" />
<bpmn:sequenceFlow id="Flow_1ale8a2" sourceRef="Activity_01g159b" targetRef="Activity_1i7fkx2" />
<bpmn:callActivity id="Activity_1i7fkx2" name="Call Shared: User Info" calledElement="Shared_User_Info">
<bpmn:extensionElements>
<spiffworkflow:preScript />
<spiffworkflow:postScript />
</bpmn:extensionElements>
<bpmn:incoming>Flow_1ale8a2</bpmn:incoming>
<bpmn:outgoing>Flow_1gfeknb</bpmn:outgoing>
</bpmn:callActivity>
<bpmn:sequenceFlow id="Flow_1gfeknb" sourceRef="Activity_1i7fkx2" targetRef="Activity_1ayopxr" />
<bpmn:sequenceFlow id="Flow_0u8sn4c" sourceRef="Activity_1ayopxr" targetRef="Activity_1wqf9dm" />
<bpmn:scriptTask id="Activity_1ayopxr" name="Set Finance User Info" scriptFormat="python">
<bpmn:incoming>Flow_1gfeknb</bpmn:incoming>
<bpmn:outgoing>Flow_0u8sn4c</bpmn:outgoing>
<bpmn:script># Set Project Lead Info
finance_info = {}
finance_info["full_name"] = userFullName
finance_info["first_name"] = userFirstName
finance_info["email"] = userEmail
finance_info["time_zone"] = userTimeZone
finance_info["time_format"] = userTimeFormat
finance_info["date_format"] = userDateFormat
finance_info["status_key"] = userStatusKey
# Move to pre-script of Waku Message
# Set Time Zone
time_zone = finance_info["time_zone"]
# Set Time Format
time_format = finance_info["time_format"]
# Set Date Format
time_format = finance_info["date_format"]
del(userFullName)
del(userFirstName)
del(userEmail)
del(userTimeZone)
del(userTimeFormat)
del(userDateFormat)
del(userStatusKey)</bpmn:script>
</bpmn:scriptTask>
</bpmn:subProcess>
<bpmn:subProcess id="Waku_Message_Pending_Payment" name="Waku Message: Pending Payment">
<bpmn:extensionElements>
<spiffworkflow:preScript># Set Invoice Status to Approved and Pending Payment
invoice["invoiceStatus"] = "Approved and Pending Payment"</spiffworkflow:preScript>
</bpmn:extensionElements>
<bpmn:incoming>Flow_1fvtcqt</bpmn:incoming>
<bpmn:outgoing>Flow_1jfb24q</bpmn:outgoing>
<bpmn:dataOutputAssociation id="DataOutputAssociation_0lf2wuo">
<bpmn:targetRef>DataObjectReference_0br9o6c</bpmn:targetRef>
</bpmn:dataOutputAssociation>
<bpmn:startEvent id="Event_13cibxi">
<bpmn:outgoing>Flow_1j5eznh</bpmn:outgoing>
</bpmn:startEvent>
<bpmn:callActivity id="Get_Waku_Messages_Message" name="Get Waku Messages: Message" calledElement="Waku_Messages_Message">
<bpmn:extensionElements>
<spiffworkflow:preScript># Check for Finance comments
len_finance_comments = len(invoice["commentsFinance"].strip())
# Set Task Id and Project Lead comments length
if isMatch:
task_id = "waku_payment_pending_ismatch"
len_project_lead_comments = 0
else:
task_id = "waku_payment_pending_not_ismatch"
len_project_lead_comments = len(invoice["commentsProjectLead"].strip())
# Set Message in Call Activity
isSetMessage = True
# Set Time Zone
timezone = current_user_extras["time_zone"]</spiffworkflow:preScript>
</bpmn:extensionElements>
<bpmn:incoming>Flow_1j5eznh</bpmn:incoming>
<bpmn:outgoing>Flow_1w7kqay</bpmn:outgoing>
</bpmn:callActivity>
<bpmn:sequenceFlow id="Flow_1w7kqay" sourceRef="Get_Waku_Messages_Message" targetRef="waku_payment_pending" />
<bpmn:endEvent id="Event_0fbz176">
<bpmn:incoming>Flow_1buk0a2</bpmn:incoming>
</bpmn:endEvent>
<bpmn:serviceTask id="waku_payment_pending" name="Waku Message: Notify CC Payment Pending">
<bpmn:extensionElements>
<spiffworkflow:serviceTaskOperator id="waku/SendMessage" resultVariable="wr_invoicePayPend">
<spiffworkflow:parameters>
<spiffworkflow:parameter id="message" type="str" value="waku_message" />
<spiffworkflow:parameter id="message_type" type="str" value="&#34;wakuext_sendOneToOneMessage&#34;" />
<spiffworkflow:parameter id="recipient" type="str" value="current_user_extras[&#34;status_key&#34;]" />
</spiffworkflow:parameters>
</spiffworkflow:serviceTaskOperator>
<spiffworkflow:preScript />
</bpmn:extensionElements>
<bpmn:incoming>Flow_1w7kqay</bpmn:incoming>
<bpmn:outgoing>Flow_1buk0a2</bpmn:outgoing>
</bpmn:serviceTask>
<bpmn:sequenceFlow id="Flow_1buk0a2" sourceRef="waku_payment_pending" targetRef="Event_0fbz176" />
<bpmn:sequenceFlow id="Flow_1j5eznh" sourceRef="Event_13cibxi" targetRef="Get_Waku_Messages_Message" />
</bpmn:subProcess>
<bpmn:subProcess id="Activity_0gkpa9s" name="Waku Message: Notify CC Invoice Submitted">
<bpmn:extensionElements>
<spiffworkflow:preScript />
</bpmn:extensionElements>
<bpmn:incoming>Flow_0cj1m0h</bpmn:incoming>
<bpmn:outgoing>Flow_04fl87d</bpmn:outgoing>
<bpmn:dataOutputAssociation id="DataOutputAssociation_04ohdyt">
<bpmn:targetRef>DataObjectReference_1ykzuco</bpmn:targetRef>
</bpmn:dataOutputAssociation>
<bpmn:startEvent id="Event_0a4hscg">
<bpmn:outgoing>Flow_1yktpsd</bpmn:outgoing>
</bpmn:startEvent>
<bpmn:endEvent id="Event_0xohu5m">
<bpmn:incoming>Flow_17xbb2s</bpmn:incoming>
</bpmn:endEvent>
<bpmn:serviceTask id="Activity_1fsffcq" name="Waku Message: Notify CC Invoice Submitted">
<bpmn:extensionElements>
<spiffworkflow:serviceTaskOperator id="waku/SendMessage" resultVariable="wr_InvoiceSubmitted">
<spiffworkflow:parameters>
<spiffworkflow:parameter id="message" type="str" value="waku_message" />
<spiffworkflow:parameter id="message_type" type="str" value="&#34;wakuext_sendOneToOneMessage&#34;" />
<spiffworkflow:parameter id="recipient" type="str" value="current_user_extras[&#34;status_key&#34;]" />
</spiffworkflow:parameters>
</spiffworkflow:serviceTaskOperator>
<spiffworkflow:preScript />
</bpmn:extensionElements>
<bpmn:incoming>Flow_0j4xxzp</bpmn:incoming>
<bpmn:outgoing>Flow_17xbb2s</bpmn:outgoing>
</bpmn:serviceTask>
<bpmn:sequenceFlow id="Flow_17xbb2s" sourceRef="Activity_1fsffcq" targetRef="Event_0xohu5m" />
<bpmn:callActivity id="Call_Waku_Messages_Message" name="Call Waku Messages: Message" calledElement="Waku_Messages_Message">
<bpmn:extensionElements>
<spiffworkflow:preScript># Set Task List
task_id = "waku_invoice_submitted"
# Set Message should be generated
isSetMessage = True
# Set Time Zone
time_zone = current_user_extras["time_zone"]
# Set Time Format
time_format = current_user_extras["time_format"]
# Set Date Format
time_format = current_user_extras["date_format"]</spiffworkflow:preScript>
</bpmn:extensionElements>
<bpmn:incoming>Flow_1yktpsd</bpmn:incoming>
<bpmn:outgoing>Flow_0j4xxzp</bpmn:outgoing>
</bpmn:callActivity>
<bpmn:sequenceFlow id="Flow_0j4xxzp" sourceRef="Call_Waku_Messages_Message" targetRef="Activity_1fsffcq" />
<bpmn:sequenceFlow id="Flow_1yktpsd" sourceRef="Event_0a4hscg" targetRef="Call_Waku_Messages_Message" />
</bpmn:subProcess>
<bpmn:subProcess id="Activity_0gkejaj" name="4. Compare Invoice data vs Enterprise systems data">
<bpmn:incoming>Flow_1ex5hfx</bpmn:incoming>
<bpmn:outgoing>Flow_1c5u447</bpmn:outgoing>
<bpmn:startEvent id="Event_0w5o6hr">
<bpmn:outgoing>Flow_1sc1v4y</bpmn:outgoing>
</bpmn:startEvent>
<bpmn:businessRuleTask id="Activity_1yhwhps" name="Compare the BambooHR.compensation/12 amount with invoice amount">
<bpmn:extensionElements>
<spiffworkflow:calledDecisionId>Invoice_Approval_Check</spiffworkflow:calledDecisionId>
</bpmn:extensionElements>
<bpmn:incoming>Flow_1m8uxeg</bpmn:incoming>
<bpmn:outgoing>Flow_04do8x7</bpmn:outgoing>
</bpmn:businessRuleTask>
<bpmn:scriptTask id="Activity_02go8ec" name="Get Annual Salary" scriptFormat="python">
<bpmn:incoming>Flow_02g4qn2</bpmn:incoming>
<bpmn:outgoing>Flow_0nxzc38</bpmn:outgoing>
<bpmn:script>annual_salary_str = resp_BambooPayRate["amount"]
annual_salary = float(annual_salary_str)</bpmn:script>
</bpmn:scriptTask>
<bpmn:scriptTask id="Activity_0b87ocm" name="Get Invoice Amount" scriptFormat="python">
<bpmn:incoming>Flow_0xtzqkg</bpmn:incoming>
<bpmn:outgoing>Flow_1m8uxeg</bpmn:outgoing>
<bpmn:script>invoice_amount = invoice.invoiceAmount</bpmn:script>
</bpmn:scriptTask>
<bpmn:sequenceFlow id="Flow_1sc1v4y" sourceRef="Event_0w5o6hr" targetRef="Activity_0mcykih" />
<bpmn:sequenceFlow id="Flow_1m8uxeg" sourceRef="Activity_0b87ocm" targetRef="Activity_1yhwhps" />
<bpmn:endEvent id="Event_0cmri19">
<bpmn:incoming>Flow_04do8x7</bpmn:incoming>
</bpmn:endEvent>
<bpmn:sequenceFlow id="Flow_04do8x7" sourceRef="Activity_1yhwhps" targetRef="Event_0cmri19" />
<bpmn:serviceTask id="Activity_1k25w3x" name="Query Invoice Details">
<bpmn:extensionElements>
<spiffworkflow:serviceTaskOperator id="aws/QueryDynamoTable" resultVariable="resp_QuertInvoiceDetails">
<spiffworkflow:parameters>
<spiffworkflow:parameter id="partition_key" type="str" value="invoice.contributorId" />
<spiffworkflow:parameter id="sort_key" type="str" value="invoice.invoiceId" />
<spiffworkflow:parameter id="table_name" type="str" value="&#39;Invoice&#39;" />
</spiffworkflow:parameters>
</spiffworkflow:serviceTaskOperator>
</bpmn:extensionElements>
<bpmn:incoming>Flow_0nxzc38</bpmn:incoming>
<bpmn:outgoing>Flow_0xtzqkg</bpmn:outgoing>
</bpmn:serviceTask>
<bpmn:sequenceFlow id="Flow_0nxzc38" sourceRef="Activity_02go8ec" targetRef="Activity_1k25w3x" />
<bpmn:sequenceFlow id="Flow_0xtzqkg" sourceRef="Activity_1k25w3x" targetRef="Activity_0b87ocm" />
<bpmn:sequenceFlow id="Flow_02g4qn2" sourceRef="Activity_0mcykih" targetRef="Activity_02go8ec" />
<bpmn:serviceTask id="Activity_0mcykih" name="Get Annual Salary from Bamboo">
<bpmn:extensionElements>
<spiffworkflow:serviceTaskOperator id="bamboohr/GetPayRate" resultVariable="resp_BambooPayRate">
<spiffworkflow:parameters>
<spiffworkflow:parameter id="employee_id" type="str" value="current_user_extras[&#34;bamboo_api_id&#34;]" />
</spiffworkflow:parameters>
</spiffworkflow:serviceTaskOperator>
</bpmn:extensionElements>
<bpmn:incoming>Flow_1sc1v4y</bpmn:incoming>
<bpmn:outgoing>Flow_02g4qn2</bpmn:outgoing>
</bpmn:serviceTask>
</bpmn:subProcess>
<bpmn:boundaryEvent id="Event_169on0z" attachedToRef="Activity_07oyzdx">
<bpmn:outgoing>Flow_06mfxze</bpmn:outgoing>
<bpmn:timerEventDefinition id="TimerEventDefinition_1x8m85i">
<bpmn:timeDuration xsi:type="bpmn:tFormalExpression">timedelta(seconds=1000)</bpmn:timeDuration>
</bpmn:timerEventDefinition>
</bpmn:boundaryEvent>
<bpmn:boundaryEvent id="Event_09q0ym0" name="3 days" attachedToRef="Activity_06b32ar">
<bpmn:outgoing>Flow_1v8dszb</bpmn:outgoing>
<bpmn:timerEventDefinition id="TimerEventDefinition_0cpj4z0">
<bpmn:timeDuration xsi:type="bpmn:tFormalExpression">timedelta(minutes=3)</bpmn:timeDuration>
</bpmn:timerEventDefinition>
</bpmn:boundaryEvent>
<bpmn:sequenceFlow id="Flow_06amgv2" sourceRef="Activity_10p5t0r" targetRef="Activity_07oyzdx" />
<bpmn:callActivity id="Activity_10p5t0r" name="Call Shared: Currency Format" calledElement="Shared_Currency_Format">
<bpmn:extensionElements>
<spiffworkflow:preScript>curCode = invoice.invoiceCurrency
curAmount = invoice.invoiceAmount
isCurTest = False</spiffworkflow:preScript>
<spiffworkflow:postScript>invoice.invoiceAmount_str = curAmount_str</spiffworkflow:postScript>
</bpmn:extensionElements>
<bpmn:incoming>Flow_1x4rtop</bpmn:incoming>
<bpmn:outgoing>Flow_06amgv2</bpmn:outgoing>
</bpmn:callActivity>
<bpmn:scriptTask id="Activity_0twki30" name="Clear Field(s) That Failed Validation">
<bpmn:incoming>Flow_18cic3h</bpmn:incoming>
<bpmn:outgoing>Flow_1pefcgv</bpmn:outgoing>
<bpmn:script># CLear Contributor Name if contains number
if svc_is_num_in_name:
invoice["contributorName"] = None
# Clear Invoice Anount if more than 2 decimals
if svc_decimal_cnt &gt; 2:
invoice["invoiceAmount"] = None
# Clear Invocie Due Date if before Today's Date
if not(svc_is_due_date_after):
invoice["dueDate"] = None</bpmn:script>
</bpmn:scriptTask>
<bpmn:dataObjectReference id="DataObjectReference_05liqvr" name="resp_BambooUserInfo" dataObjectRef="resp_BambooUserInfo" />
<bpmn:dataObject id="resp_BambooUserInfo" />
<bpmn:subProcess id="Activity_1864qj2" name="MVP Demo Preload">
<bpmn:startEvent id="Event_1qh3xrh">
<bpmn:outgoing>Flow_0pwvb62</bpmn:outgoing>
</bpmn:startEvent>
<bpmn:sequenceFlow id="Flow_0pwvb62" sourceRef="Event_1qh3xrh" targetRef="Activity_0xrsduh" />
<bpmn:userTask id="Activity_0xrsduh" name="Select Configuration">
<bpmn:extensionElements>
<spiffworkflow:properties>
<spiffworkflow:property name="formUiSchemaFilename" value="demo-preload_UISchema.json" />
<spiffworkflow:property name="formJsonSchemaFilename" value="demo-preload_JSONSchema.json" />
</spiffworkflow:properties>
</bpmn:extensionElements>
<bpmn:incoming>Flow_0pwvb62</bpmn:incoming>
<bpmn:outgoing>Flow_0z8ory2</bpmn:outgoing>
</bpmn:userTask>
<bpmn:sequenceFlow id="Flow_0z8ory2" sourceRef="Activity_0xrsduh" targetRef="Activity_0rww1ya" />
<bpmn:scriptTask id="Activity_0rww1ya" name="Set Form Data">
<bpmn:incoming>Flow_0z8ory2</bpmn:incoming>
<bpmn:outgoing>Flow_1hebd4s</bpmn:outgoing>
<bpmn:script>invoice = {}
# no numbers in contributor name validation
if " Number in contributor name" in ValidationChoices:
invoice["contributorName"] = "Harmee5 Singh"
else:
invoice["contributorName"] = "Harmeet Singh"
# Invoice amount number of decimals validation
if " Too many decimals in invoice amount" in ValidationChoices:
if scenarioChoices == "Correct invoice amount":
invoice["invoiceAmount"] = 10000.001
else:
invoice["invoiceAmount"] = 10001.001
else:
if scenarioChoices == "Correct invoice amount":
invoice["invoiceAmount"] = 10000.00
else:
invoice["invoiceAmount"] = 10001.00
# Due date validation
if " Due date before today's date" in ValidationChoices:
invoice["dueDate"] = "2021-12-12"
else:
invoice["dueDate"] = "2022-12-12"
# Set remainder of form fields
invoice["contributorId"] = 12
invoice["invoiceId"] = 1234
invoice["invoiceCurrency"] = "AUD"</bpmn:script>
</bpmn:scriptTask>
<bpmn:endEvent id="Event_0kmx0m7">
<bpmn:incoming>Flow_1hebd4s</bpmn:incoming>
</bpmn:endEvent>
<bpmn:sequenceFlow id="Flow_1hebd4s" sourceRef="Activity_0rww1ya" targetRef="Event_0kmx0m7" />
</bpmn:subProcess>
<bpmn:sequenceFlow id="Flow_061sv6t" sourceRef="Activity_1colhao" targetRef="Gateway_0wk5se9" />
</bpmn:process>
<bpmn:process id="Process_cc_invoice_approval_process_v2_c" isExecutable="false" />
<bpmn:process id="Process_cc_invoice_approval_process_v2_d" isExecutable="false" />
<bpmn:process id="Process_cc_invoice_approval_process_v2_e" isExecutable="false" />
<bpmn:correlationProperty id="CorrelationProperty_Submit_Invoice" name="Correlation Property: Submit Invoice">
<bpmn:correlationPropertyRetrievalExpression messageRef="Message_Submit_Invoice">
<bpmn:formalExpression>topica_one</bpmn:formalExpression>
</bpmn:correlationPropertyRetrievalExpression>
</bpmn:correlationProperty>
<bpmn:message id="Message_Submit_Invoice" name="Message: Submit Invoice">
<bpmn:extensionElements>
<spiffworkflow:messageVariable>topica_one</spiffworkflow:messageVariable>
<spiffworkflow:messagePayload>{
"topica_one": "Invoice successfully submitted"
}</spiffworkflow:messagePayload>
</bpmn:extensionElements>
</bpmn:message>
<bpmndi:BPMNDiagram id="BPMNDiagram_1">
<bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Collaboration_130jph2">
<bpmndi:BPMNShape id="Participant_1fsb6gv_di" bpmnElement="Participant_1fsb6gv" isHorizontal="true">
<dc:Bounds x="280" y="-70" width="5080" height="220" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Participant_11ab2hx_di" bpmnElement="Participant_11ab2hx" isHorizontal="true">
<dc:Bounds x="280" y="210" width="5080" height="930" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Lane_1so23vf_di" bpmnElement="Lane_1so23vf" isHorizontal="true">
<dc:Bounds x="310" y="1022" width="5050" height="118" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Lane_1b7abal_di" bpmnElement="Lane_1b7abal" isHorizontal="true">
<dc:Bounds x="310" y="810" width="5050" height="212" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Lane_1a0qu8e_di" bpmnElement="Lane_1a0qu8e" isHorizontal="true">
<dc:Bounds x="310" y="210" width="5050" height="600" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_1h7igan_di" bpmnElement="Submit_the_invoice">
<dc:Bounds x="1165" y="492" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Gateway_0wt7ine_di" bpmnElement="Gateway_validation_successful_question_mark" isMarkerVisible="true">
<dc:Bounds x="1525" y="507" width="50" height="50" />
<bpmndi:BPMNLabel>
<dc:Bounds x="1520" y="567" width="60" height="14" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0z13hw3_di" bpmnElement="SubProcess_Data_validation_rules">
<dc:Bounds x="1350" y="492" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_0svbvjn_di" bpmnElement="Event_invoice_validation_failed">
<dc:Bounds x="1532" y="422" width="36" height="36" />
<bpmndi:BPMNLabel>
<dc:Bounds x="1442" y="421" width="85" height="27" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="DataObjectReference_0bymrvr_di" bpmnElement="DataObjectReference_0bymrvr">
<dc:Bounds x="1432" y="655" width="36" height="50" />
<bpmndi:BPMNLabel>
<dc:Bounds x="1407" y="695" width="87" height="14" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Gateway_0wk5se9_di" bpmnElement="Gateway_0wk5se9" isMarkerVisible="true">
<dc:Bounds x="1045" y="507" width="50" height="50" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0qtkhpi_di" bpmnElement="Activity_show_errors">
<dc:Bounds x="1350" y="330" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_13dc2qg_di" bpmnElement="Activity_1colhao">
<dc:Bounds x="690" y="492" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_193pz3d_di" bpmnElement="Activity_1u89kok">
<dc:Bounds x="510" y="490" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_1r3yh2k_di" bpmnElement="Event_1r3yh2kx">
<dc:Bounds x="402" y="512" width="36" height="36" />
<bpmndi:BPMNLabel>
<dc:Bounds x="410" y="555" width="22" height="14" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_15y55nw_di" bpmnElement="Event_15y55nw">
<dc:Bounds x="3192" y="512" width="36" height="36" />
<bpmndi:BPMNLabel>
<dc:Bounds x="3186" y="555" width="48" height="27" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Gateway_1lbghql_di" bpmnElement="Gateway_1lbghql" isMarkerVisible="true">
<dc:Bounds x="3434" y="505" width="50" height="50" />
<bpmndi:BPMNLabel>
<dc:Bounds x="3490" y="521" width="37" height="14" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_0x83ruk_di" bpmnElement="Event_0x83ruk">
<dc:Bounds x="3491" y="404" width="36" height="36" />
<bpmndi:BPMNLabel>
<dc:Bounds x="3469" y="368" width="81" height="27" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_0m3ri6v_di" bpmnElement="Event_0m3ri6v">
<dc:Bounds x="3491" y="592" width="36" height="36" />
<bpmndi:BPMNLabel>
<dc:Bounds x="3482" y="635" width="57" height="40" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="DataObjectReference_1ykzuco_di" bpmnElement="DataObjectReference_1ykzuco">
<dc:Bounds x="3182" y="345" width="36" height="50" />
<bpmndi:BPMNLabel>
<dc:Bounds x="3156" y="398" width="87" height="27" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Gateway_1l4tz4i_di" bpmnElement="Gateway_1l4tz4i" isMarkerVisible="true">
<dc:Bounds x="4115" y="397" width="50" height="50" />
<bpmndi:BPMNLabel>
<dc:Bounds x="4063" y="393" width="54" height="14" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_05nao2p_di" bpmnElement="Activity_06b32ar">
<dc:Bounds x="3630" y="830" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0xwniza_di" bpmnElement="Activity_0cdgqi0">
<dc:Bounds x="4090" y="1040" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_1pu369y_di" bpmnElement="Activity_1t8wi0r">
<dc:Bounds x="3800" y="908" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Gateway_06i3we9_di" bpmnElement="Gateway_06i3we9" isMarkerVisible="true">
<dc:Bounds x="3975" y="845" width="50" height="50" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="DataObjectReference_1wclgyx_di" bpmnElement="DataObjectReference_1wclgyx">
<dc:Bounds x="3972" y="235" width="36" height="50" />
<bpmndi:BPMNLabel>
<dc:Bounds x="3948" y="281" width="84" height="27" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0ejn04g_di" bpmnElement="Activity_0fq1nb4">
<dc:Bounds x="4750" y="570" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Gateway_1ytq6m7_di" bpmnElement="Gateway_1ytq6m7" isMarkerVisible="true">
<dc:Bounds x="4465" y="1055" width="50" height="50" />
<bpmndi:BPMNLabel>
<dc:Bounds x="4463" y="1112" width="54" height="14" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_1usbnt0_di" bpmnElement="Event_1usbnt0">
<dc:Bounds x="5252" y="592" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="DataObjectReference_0br9o6c_di" bpmnElement="DataObjectReference_0br9o6c">
<dc:Bounds x="5042" y="715" width="36" height="50" />
<bpmndi:BPMNLabel>
<dc:Bounds x="5018" y="761" width="85" height="27" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="DataObjectReference_1g4gzsx_di" bpmnElement="DataObjectReference_1g4gzsx">
<dc:Bounds x="4852" y="455" width="36" height="50" />
<bpmndi:BPMNLabel>
<dc:Bounds x="4827" y="501" width="85" height="27" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_0lhkxwc_di" bpmnElement="Event_0lhkxwc">
<dc:Bounds x="4942" y="592" width="36" height="36" />
<bpmndi:BPMNLabel>
<dc:Bounds x="4916" y="635" width="88" height="27" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="DataObjectReference_0x2dn5o_di" bpmnElement="DataObjectReference_0x2dn5o">
<dc:Bounds x="4252" y="535" width="36" height="50" />
<bpmndi:BPMNLabel>
<dc:Bounds x="4228" y="581" width="84" height="14" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_1b58a3z_di" bpmnElement="Event_1b58a3z">
<dc:Bounds x="4282" y="282" width="36" height="36" />
<bpmndi:BPMNLabel>
<dc:Bounds x="4276" y="325" width="54" height="40" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_1vzea12_di" bpmnElement="Activity_0faln91">
<dc:Bounds x="3950" y="492" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_09tmh4n_di" bpmnElement="Event_0rwxlca">
<dc:Bounds x="3982" y="682" width="36" height="36" />
<bpmndi:BPMNLabel>
<dc:Bounds x="3914" y="693" width="58" height="14" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_1j1zo4f_di" bpmnElement="Activity_11stdua">
<dc:Bounds x="4250" y="1040" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_00k7m91_di" bpmnElement="Event_1lh7308">
<dc:Bounds x="4392" y="1062" width="36" height="36" />
<bpmndi:BPMNLabel>
<dc:Bounds x="4382" y="1105" width="58" height="14" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0eo1xsv_di" bpmnElement="Activity_07oyzdx">
<dc:Bounds x="1840" y="492" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Gateway_10gbs8m_di" bpmnElement="Gateway_05ov5p5">
<dc:Bounds x="2355" y="507" width="50" height="50" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0zssftc_di" bpmnElement="Activity_0p88elm">
<dc:Bounds x="2630" y="570" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Gateway_05ztwup_di" bpmnElement="Gateway_1717c0p">
<dc:Bounds x="2754" y="505" width="50" height="50" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0bgyf4i_di" bpmnElement="Activity_104xpp8">
<dc:Bounds x="2440" y="570" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_1hpp8tn_di" bpmnElement="Activity_175j3o7">
<dc:Bounds x="2540" y="382" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_176ch98_di" bpmnElement="Event_176ch98">
<dc:Bounds x="2232" y="514" width="36" height="36" />
<bpmndi:BPMNLabel>
<dc:Bounds x="2220" y="557" width="79" height="27" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0nqyv3k_di" bpmnElement="Delete_File">
<dc:Bounds x="2860" y="490" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Gateway_0dqj39f_di" bpmnElement="Gateway_0dqj39f" isMarkerVisible="true">
<dc:Bounds x="2005" y="507" width="50" height="50" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_0tb3bpb_di" bpmnElement="Event_1vi3um1">
<dc:Bounds x="2122" y="514" width="36" height="36" />
<bpmndi:BPMNLabel>
<dc:Bounds x="2116" y="557" width="49" height="14" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0n0ue58_di" bpmnElement="Activity_0rae8g6">
<dc:Bounds x="4090" y="260" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0j807g0_di" bpmnElement="Activity_1ucvkk4">
<dc:Bounds x="3630" y="382" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_1tb6ao6_di" bpmnElement="Activity_1kgaqpf">
<dc:Bounds x="4090" y="570" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_1tlgf7q_di" bpmnElement="Waku_Message_Pending_Payment">
<dc:Bounds x="5090" y="570" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_1xkyv08_di" bpmnElement="Activity_0gkpa9s">
<dc:Bounds x="3040" y="490" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_1rn2mgi_di" bpmnElement="Activity_0gkejaj">
<dc:Bounds x="3279" y="490" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_1xg4kby_di" bpmnElement="Activity_10p5t0r">
<dc:Bounds x="1660" y="492" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_14mudmu_di" bpmnElement="Activity_0twki30">
<dc:Bounds x="1190" y="330" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="DataObjectReference_05liqvr_di" bpmnElement="DataObjectReference_05liqvr">
<dc:Bounds x="612" y="365" width="36" height="50" />
<bpmndi:BPMNLabel>
<dc:Bounds x="586" y="418" width="89" height="27" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0l6st3d_di" bpmnElement="Activity_1864qj2">
<dc:Bounds x="870" y="620" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_08bsj2m_di" bpmnElement="Event_09q0ym0">
<dc:Bounds x="3692" y="892" width="36" height="36" />
<bpmndi:BPMNLabel>
<dc:Bounds x="3663" y="923" width="33" height="14" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_1c8bu8s_di" bpmnElement="Event_169on0z">
<dc:Bounds x="1892" y="554" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="Flow_1x4rtop_di" bpmnElement="Flow_1x4rtop">
<di:waypoint x="1575" y="532" />
<di:waypoint x="1660" y="532" />
<bpmndi:BPMNLabel>
<dc:Bounds x="1575" y="508" width="18" height="14" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_05ffq52_di" bpmnElement="Flow_05ffq52">
<di:waypoint x="1550" y="507" />
<di:waypoint x="1550" y="458" />
<bpmndi:BPMNLabel>
<dc:Bounds x="1558" y="485" width="15" height="14" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1c5u447_di" bpmnElement="Flow_1c5u447">
<di:waypoint x="3379" y="530" />
<di:waypoint x="3434" y="530" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1gohkts_di" bpmnElement="Flow_1gohkts">
<di:waypoint x="3459" y="555" />
<di:waypoint x="3459" y="610" />
<di:waypoint x="3491" y="610" />
<bpmndi:BPMNLabel>
<dc:Bounds x="3466" y="579" width="18" height="14" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_18xvx8w_di" bpmnElement="Flow_18xvx8w">
<di:waypoint x="4140" y="447" />
<di:waypoint x="4140" y="570" />
<bpmndi:BPMNLabel>
<dc:Bounds x="4147" y="506" width="18" height="14" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1ex5hfx_di" bpmnElement="Flow_1ex5hfx">
<di:waypoint x="3228" y="530" />
<di:waypoint x="3279" y="530" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_16bw9hx_di" bpmnElement="Flow_16bw9hx">
<di:waypoint x="3459" y="505" />
<di:waypoint x="3459" y="422" />
<di:waypoint x="3491" y="422" />
<bpmndi:BPMNLabel>
<dc:Bounds x="3467" y="463" width="15" height="14" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0bfs2xe_di" bpmnElement="Flow_0bfs2xe">
<di:waypoint x="4140" y="397" />
<di:waypoint x="4140" y="340" />
<bpmndi:BPMNLabel>
<dc:Bounds x="4152" y="373" width="15" height="14" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0c0c9mw_di" bpmnElement="Flow_0c0c9mw">
<di:waypoint x="4190" y="300" />
<di:waypoint x="4282" y="300" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_13ng1f4_di" bpmnElement="Flow_13ng1f4">
<di:waypoint x="1550" y="422" />
<di:waypoint x="1550" y="370" />
<di:waypoint x="1450" y="370" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_18cic3h_di" bpmnElement="Flow_18cic3h">
<di:waypoint x="1350" y="370" />
<di:waypoint x="1290" y="370" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_02moyg7_di" bpmnElement="Flow_02moyg7">
<di:waypoint x="1265" y="532" />
<di:waypoint x="1350" y="532" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1ck27i7_di" bpmnElement="Flow_1ck27i7">
<di:waypoint x="1450" y="532" />
<di:waypoint x="1525" y="532" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1v8dszb_di" bpmnElement="Flow_1v8dszb">
<di:waypoint x="3710" y="928" />
<di:waypoint x="3710" y="948" />
<di:waypoint x="3800" y="948" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0hev3yn_di" bpmnElement="Flow_0hev3yn">
<di:waypoint x="2380" y="507" />
<di:waypoint x="2380" y="422" />
<di:waypoint x="2540" y="422" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_02o270g_di" bpmnElement="Flow_02o270g">
<di:waypoint x="2640" y="422" />
<di:waypoint x="2779" y="422" />
<di:waypoint x="2779" y="505" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0o94g4u_di" bpmnElement="Flow_0o94g4u">
<di:waypoint x="2730" y="610" />
<di:waypoint x="2779" y="610" />
<di:waypoint x="2779" y="555" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1vxagrf_di" bpmnElement="Flow_1vxagrf">
<di:waypoint x="438" y="530" />
<di:waypoint x="510" y="530" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0bipj9q_di" bpmnElement="Flow_0bipj9q">
<di:waypoint x="610" y="530" />
<di:waypoint x="690" y="530" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_04ccp12_di" bpmnElement="Flow_04ccp12">
<di:waypoint x="3527" y="610" />
<di:waypoint x="4090" y="610" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0kngdw4_di" bpmnElement="Flow_0kngdw4">
<di:waypoint x="3527" y="422" />
<di:waypoint x="3630" y="422" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0lfqk0y_di" bpmnElement="Flow_0lfqk0y">
<di:waypoint x="3680" y="462" />
<di:waypoint x="3680" y="830" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1ds4s8o_di" bpmnElement="Flow_1ds4s8o">
<di:waypoint x="4140" y="650" />
<di:waypoint x="4140" y="1040" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_00kky3k_di" bpmnElement="Flow_00kky3k">
<di:waypoint x="4490" y="1055" />
<di:waypoint x="4490" y="422" />
<di:waypoint x="4165" y="422" />
<bpmndi:BPMNLabel>
<dc:Bounds x="4498" y="923" width="15" height="14" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0h96w9j_di" bpmnElement="Flow_0h96w9j">
<di:waypoint x="4515" y="1080" />
<di:waypoint x="4630" y="1080" />
<di:waypoint x="4630" y="610" />
<di:waypoint x="4750" y="610" />
<bpmndi:BPMNLabel>
<dc:Bounds x="4558" y="1063" width="18" height="14" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_053ca95_di" bpmnElement="Flow_053ca95">
<di:waypoint x="4850" y="610" />
<di:waypoint x="4942" y="610" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0a9w301_di" bpmnElement="Flow_0a9w301">
<di:waypoint x="2804" y="530" />
<di:waypoint x="2860" y="530" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_15pzvrr_di" bpmnElement="Flow_15pzvrr">
<di:waypoint x="4000" y="492" />
<di:waypoint x="4000" y="422" />
<di:waypoint x="4115" y="422" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_02v6lr2_di" bpmnElement="Flow_02v6lr2">
<di:waypoint x="4350" y="1080" />
<di:waypoint x="4392" y="1080" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_04fl87d_di" bpmnElement="Flow_04fl87d">
<di:waypoint x="3140" y="530" />
<di:waypoint x="3192" y="530" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1jfb24q_di" bpmnElement="Flow_1jfb24q">
<di:waypoint x="5190" y="610" />
<di:waypoint x="5252" y="610" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1qf14hx_di" bpmnElement="Flow_1qf14hx">
<di:waypoint x="4000" y="845" />
<di:waypoint x="4000" y="718" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1w4cqkv_di" bpmnElement="Flow_1w4cqkv">
<di:waypoint x="3900" y="948" />
<di:waypoint x="4000" y="948" />
<di:waypoint x="4000" y="895" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_17vkjgc_di" bpmnElement="Flow_17vkjgc">
<di:waypoint x="1095" y="532" />
<di:waypoint x="1165" y="532" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1pefcgv_di" bpmnElement="Flow_1pefcgv">
<di:waypoint x="1190" y="370" />
<di:waypoint x="1070" y="370" />
<di:waypoint x="1070" y="507" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1s2as7o_di" bpmnElement="Flow_1s2as7o">
<di:waypoint x="2380" y="557" />
<di:waypoint x="2380" y="610" />
<di:waypoint x="2440" y="610" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0hyvwku_di" bpmnElement="Flow_0hyvwku">
<di:waypoint x="2540" y="610" />
<di:waypoint x="2630" y="610" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1fvtcqt_di" bpmnElement="Flow_1fvtcqt">
<di:waypoint x="4978" y="610" />
<di:waypoint x="5090" y="610" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_14glsqd_di" bpmnElement="Flow_14glsqd">
<di:waypoint x="2268" y="532" />
<di:waypoint x="2355" y="532" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0dhpy0v_di" bpmnElement="Flow_0dhpy0v">
<di:waypoint x="2158" y="532" />
<di:waypoint x="2232" y="532" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1x00zm0_di" bpmnElement="Flow_1x00zm0">
<di:waypoint x="4000" y="682" />
<di:waypoint x="4000" y="572" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_09r1s5r_di" bpmnElement="Flow_09r1s5r">
<di:waypoint x="3730" y="870" />
<di:waypoint x="3975" y="870" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1whkgq0_di" bpmnElement="Flow_1whkgq0">
<di:waypoint x="4190" y="1080" />
<di:waypoint x="4250" y="1080" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1l74eab_di" bpmnElement="Flow_1l74eab">
<di:waypoint x="4428" y="1080" />
<di:waypoint x="4465" y="1080" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0z51hpb_di" bpmnElement="Flow_0z51hpb">
<di:waypoint x="1940" y="532" />
<di:waypoint x="2005" y="532" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1xvt99y_di" bpmnElement="Flow_1xvt99y">
<di:waypoint x="2055" y="532" />
<di:waypoint x="2122" y="532" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_06mfxze_di" bpmnElement="Flow_06mfxze">
<di:waypoint x="1910" y="590" />
<di:waypoint x="1910" y="610" />
<di:waypoint x="2030" y="610" />
<di:waypoint x="2030" y="557" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0cj1m0h_di" bpmnElement="Flow_0cj1m0h">
<di:waypoint x="2960" y="530" />
<di:waypoint x="3040" y="530" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_06amgv2_di" bpmnElement="Flow_06amgv2">
<di:waypoint x="1760" y="532" />
<di:waypoint x="1840" y="532" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_061sv6t_di" bpmnElement="Flow_061sv6t">
<di:waypoint x="790" y="532" />
<di:waypoint x="1045" y="532" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNShape id="Participant_0a8arrz_di" bpmnElement="Participant_0a8arrz" isHorizontal="true">
<dc:Bounds x="2540" y="1290" width="830" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Participant_1qabwrg_di" bpmnElement="Participant_1qabwrg" isHorizontal="true">
<dc:Bounds x="2640" y="1190" width="450" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Participant_0b27sri_di" bpmnElement="Participant_0b27sri" isHorizontal="true">
<dc:Bounds x="4649" y="1170" width="302" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="TextAnnotation_1uaw1w7_di" bpmnElement="TextAnnotation_1uaw1w7">
<dc:Bounds x="640" y="-170" width="760" height="30" />
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="DataOutputAssociation_1topzui_di" bpmnElement="DataOutputAssociation_1topzui">
<di:waypoint x="1413" y="572" />
<di:waypoint x="1441" y="655" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="DataOutputAssociation_0buh48w_di" bpmnElement="DataOutputAssociation_0buh48w">
<di:waypoint x="580" y="490" />
<di:waypoint x="615" y="415" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="DataOutputAssociation_076hmxy_di" bpmnElement="DataOutputAssociation_076hmxy">
<di:waypoint x="4821" y="570" />
<di:waypoint x="4855" y="505" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="DataOutputAssociation_0b96bb7_di" bpmnElement="DataOutputAssociation_0b96bb7">
<di:waypoint x="4090" y="285" />
<di:waypoint x="4008" y="261" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="DataOutputAssociation_02537rk_di" bpmnElement="DataOutputAssociation_02537rk">
<di:waypoint x="4190" y="589" />
<di:waypoint x="4252" y="563" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="DataOutputAssociation_0lf2wuo_di" bpmnElement="DataOutputAssociation_0lf2wuo">
<di:waypoint x="5115" y="650" />
<di:waypoint x="5074" y="715" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="DataOutputAssociation_04ohdyt_di" bpmnElement="DataOutputAssociation_04ohdyt">
<di:waypoint x="3118" y="490" />
<di:waypoint x="3188" y="395" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Association_1eygti7_di" bpmnElement="Association_1eygti7">
<di:waypoint x="1086" y="-70" />
<di:waypoint x="1153" y="-140" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0ppupld_di" bpmnElement="Flow_0ppupld">
<di:waypoint x="2590" y="462" />
<di:waypoint x="2590" y="1290" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0yfnc92_di" bpmnElement="Flow_0yfnc92">
<di:waypoint x="2680" y="650" />
<di:waypoint x="2680" y="1190" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0jciftq_di" bpmnElement="Flow_0jciftq">
<di:waypoint x="3090" y="490" />
<di:waypoint x="3090" y="150" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0p0bc5u_di" bpmnElement="Flow_0p0bc5u">
<di:waypoint x="4800" y="650" />
<di:waypoint x="4800" y="1170" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1getkzr_di" bpmnElement="Flow_1getkzr">
<di:waypoint x="4140" y="260" />
<di:waypoint x="4140" y="150" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1dgkwzr_di" bpmnElement="Flow_1dgkwzr">
<di:waypoint x="5140" y="570" />
<di:waypoint x="5140" y="150" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_14gw1v6_di" bpmnElement="Flow_14gw1v6">
<di:waypoint x="3329" y="1290" />
<di:waypoint x="3329" y="570" />
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
<bpmndi:BPMNDiagram>
<bpmndi:BPMNPlane bpmnElement="Activity_0gkejaj">
<bpmndi:BPMNShape id="Event_0w5o6hr_di" bpmnElement="Event_0w5o6hr">
<dc:Bounds x="-48" y="372" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_08gpeul_di" bpmnElement="Activity_1yhwhps">
<dc:Bounds x="680" y="350" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0fzlb0w_di" bpmnElement="Activity_02go8ec">
<dc:Bounds x="210" y="350" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_1f5dpwy_di" bpmnElement="Activity_0b87ocm">
<dc:Bounds x="520" y="350" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_0cmri19_di" bpmnElement="Event_0cmri19">
<dc:Bounds x="842" y="372" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0x1ak9n_di" bpmnElement="Activity_1k25w3x">
<dc:Bounds x="360" y="350" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0emlo6d_di" bpmnElement="Activity_0mcykih">
<dc:Bounds x="50" y="350" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="Flow_1sc1v4y_di" bpmnElement="Flow_1sc1v4y">
<di:waypoint x="-12" y="390" />
<di:waypoint x="50" y="390" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1m8uxeg_di" bpmnElement="Flow_1m8uxeg">
<di:waypoint x="620" y="390" />
<di:waypoint x="680" y="390" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_04do8x7_di" bpmnElement="Flow_04do8x7">
<di:waypoint x="780" y="390" />
<di:waypoint x="842" y="390" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0nxzc38_di" bpmnElement="Flow_0nxzc38">
<di:waypoint x="310" y="390" />
<di:waypoint x="360" y="390" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0xtzqkg_di" bpmnElement="Flow_0xtzqkg">
<di:waypoint x="460" y="390" />
<di:waypoint x="520" y="390" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_02g4qn2_di" bpmnElement="Flow_02g4qn2">
<di:waypoint x="150" y="390" />
<di:waypoint x="210" y="390" />
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
<bpmndi:BPMNDiagram>
<bpmndi:BPMNPlane bpmnElement="Activity_1ucvkk4">
<bpmndi:BPMNShape id="Event_00px1yx_di" bpmnElement="Event_00px1yx">
<dc:Bounds x="-278" y="402" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_1nkaxn4_di" bpmnElement="Event_1nkaxn4">
<dc:Bounds x="852" y="402" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_1gex892_di" bpmnElement="Activity_00b66gy">
<dc:Bounds x="160" y="380" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0s32al0_di" bpmnElement="Activity_1ve0iqu">
<dc:Bounds x="680" y="380" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0mxxp3b_di" bpmnElement="Call_Waku_Messages_Message-Notify_Proejct_Lead">
<dc:Bounds x="510" y="380" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_02v8rpk_di" bpmnElement="Activity_1jtcvfx">
<dc:Bounds x="330" y="380" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0iy0fil_di" bpmnElement="Activity_1982sk7">
<dc:Bounds x="-170" y="380" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0plejcc_di" bpmnElement="Activity_1nyfxna">
<dc:Bounds x="160" y="500" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_1lm44ee_di" bpmnElement="Activity_1r3o0bm">
<dc:Bounds x="0" y="380" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="Flow_0re50gq_di" bpmnElement="Flow_0re50gq">
<di:waypoint x="610" y="420" />
<di:waypoint x="680" y="420" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0y37dgj_di" bpmnElement="Flow_0y37dgj">
<di:waypoint x="780" y="420" />
<di:waypoint x="852" y="420" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0dvboik_di" bpmnElement="Flow_0dvboik">
<di:waypoint x="-242" y="420" />
<di:waypoint x="-170" y="420" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_01ki4jt_di" bpmnElement="Flow_01ki4jt">
<di:waypoint x="-70" y="420" />
<di:waypoint x="0" y="420" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0bv17h4_di" bpmnElement="Flow_0bv17h4">
<di:waypoint x="100" y="420" />
<di:waypoint x="160" y="420" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1jor3kc_di" bpmnElement="Flow_1jor3kc">
<di:waypoint x="260" y="420" />
<di:waypoint x="330" y="420" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0cl4jmz_di" bpmnElement="Flow_0cl4jmz">
<di:waypoint x="430" y="420" />
<di:waypoint x="510" y="420" />
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
<bpmndi:BPMNDiagram id="BPMNDiagram_0e5tdrz">
<bpmndi:BPMNPlane id="BPMNPlane_04v9fws" bpmnElement="SubProcess_Data_validation_rules">
<bpmndi:BPMNShape id="Event_1qkuk5g_di" bpmnElement="Event_1qkuk5g">
<dc:Bounds x="232" y="192" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_05nw8eq_di" bpmnElement="Activity_Check_Due_Date">
<dc:Bounds x="840" y="170" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_015l7j8_di" bpmnElement="Event_015l7j8">
<dc:Bounds x="1362" y="192" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0ynnab7_di" bpmnElement="Activity_check_contributor_name">
<dc:Bounds x="340" y="170" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_07pdvk2_di" bpmnElement="Activity_check_invoice_amount">
<dc:Bounds x="510" y="170" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_1l7rl3o_di" bpmnElement="Activity_check_validation_rules">
<dc:Bounds x="1020" y="170" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0fc4t79_di" bpmnElement="Activity_call_local_date_and_time">
<dc:Bounds x="670" y="170" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0u1e062_di" bpmnElement="Activity_1j8k6mb">
<dc:Bounds x="1200" y="170" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="Flow_1avkxpe_di" bpmnElement="Flow_1avkxpe">
<di:waypoint x="268" y="210" />
<di:waypoint x="340" y="210" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0tzjowk_di" bpmnElement="Flow_0tzjowk">
<di:waypoint x="1120" y="210" />
<di:waypoint x="1200" y="210" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_18i6dlo_di" bpmnElement="Flow_18i6dlo">
<di:waypoint x="770" y="210" />
<di:waypoint x="840" y="210" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1d7sgm2_di" bpmnElement="Flow_1d7sgm2">
<di:waypoint x="940" y="210" />
<di:waypoint x="1020" y="210" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0mvmd06_di" bpmnElement="Flow_0mvmd06">
<di:waypoint x="440" y="210" />
<di:waypoint x="510" y="210" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0wp2mcf_di" bpmnElement="Flow_0wp2mcf">
<di:waypoint x="610" y="210" />
<di:waypoint x="670" y="210" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_04odmtl_di" bpmnElement="Flow_04odmtl">
<di:waypoint x="1300" y="210" />
<di:waypoint x="1362" y="210" />
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
<bpmndi:BPMNDiagram id="BPMNDiagram_1wh5lkq">
<bpmndi:BPMNPlane id="BPMNPlane_1b2zhk5" bpmnElement="Activity_0gkpa9s">
<bpmndi:BPMNShape id="Event_0a4hscg_di" bpmnElement="Event_0a4hscg">
<dc:Bounds x="402" y="192" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_0xohu5m_di" bpmnElement="Event_0xohu5m">
<dc:Bounds x="832" y="192" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="BPMNShape_0pcr7bl" bpmnElement="Activity_1fsffcq">
<dc:Bounds x="680" y="170" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_17rdv3g_di" bpmnElement="Call_Waku_Messages_Message">
<dc:Bounds x="510" y="170" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="Flow_17xbb2s_di" bpmnElement="Flow_17xbb2s">
<di:waypoint x="780" y="210" />
<di:waypoint x="832" y="210" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0j4xxzp_di" bpmnElement="Flow_0j4xxzp">
<di:waypoint x="610" y="210" />
<di:waypoint x="680" y="210" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1yktpsd_di" bpmnElement="Flow_1yktpsd">
<di:waypoint x="438" y="210" />
<di:waypoint x="510" y="210" />
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
<bpmndi:BPMNDiagram id="BPMNDiagram_03yq39k">
<bpmndi:BPMNPlane id="BPMNPlane_19vekoo" bpmnElement="Waku_Message_Pending_Payment">
<bpmndi:BPMNShape id="Event_13cibxi_di" bpmnElement="Event_13cibxi">
<dc:Bounds x="242" y="162" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0848qfu_di" bpmnElement="Get_Waku_Messages_Message">
<dc:Bounds x="340" y="140" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_0fbz176_di" bpmnElement="Event_0fbz176">
<dc:Bounds x="702" y="162" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="BPMNShape_0h6o7ep" bpmnElement="waku_payment_pending">
<dc:Bounds x="530" y="140" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="Flow_1w7kqay_di" bpmnElement="Flow_1w7kqay">
<di:waypoint x="440" y="180" />
<di:waypoint x="530" y="180" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1buk0a2_di" bpmnElement="Flow_1buk0a2">
<di:waypoint x="630" y="180" />
<di:waypoint x="702" y="180" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1j5eznh_di" bpmnElement="Flow_1j5eznh">
<di:waypoint x="278" y="180" />
<di:waypoint x="340" y="180" />
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
<bpmndi:BPMNDiagram id="BPMNDiagram_0pf7nxs">
<bpmndi:BPMNPlane id="BPMNPlane_0obk4d1" bpmnElement="Activity_0rae8g6">
<bpmndi:BPMNShape id="BPMNShape_0md80al" bpmnElement="Event_0ialhor">
<dc:Bounds x="132" y="202" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="BPMNShape_0u0hy9z" bpmnElement="Activity_0eh4so1">
<dc:Bounds x="250" y="180" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="BPMNShape_06ie9hh" bpmnElement="Event_0ihhn4w">
<dc:Bounds x="602" y="202" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="BPMNShape_1lk7fz8" bpmnElement="waku_invoice_rejected">
<dc:Bounds x="430" y="180" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="BPMNEdge_04mzj46" bpmnElement="Flow_14x1v12">
<di:waypoint x="168" y="220" />
<di:waypoint x="250" y="220" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="BPMNEdge_16ht4ok" bpmnElement="Flow_01i59kw">
<di:waypoint x="530" y="220" />
<di:waypoint x="602" y="220" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1bnxkd6_di" bpmnElement="Flow_1bnxkd6">
<di:waypoint x="350" y="220" />
<di:waypoint x="430" y="220" />
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
<bpmndi:BPMNDiagram id="BPMNDiagram_1vlf9fh">
<bpmndi:BPMNPlane id="BPMNPlane_0pej8du" bpmnElement="Activity_1kgaqpf">
<bpmndi:BPMNShape id="BPMNShape_1r0xe85" bpmnElement="Event_0k7eiau">
<dc:Bounds x="122" y="222" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="BPMNShape_0brjin6" bpmnElement="Activity_1wqf9dm">
<dc:Bounds x="730" y="200" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="BPMNShape_1kkvray" bpmnElement="Event_0czwuqb">
<dc:Bounds x="1062" y="222" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="BPMNShape_0x5xk93" bpmnElement="Activity_0ez288q">
<dc:Bounds x="900" y="200" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="BPMNShape_13jsep6" bpmnElement="Activity_01g159b">
<dc:Bounds x="210" y="200" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="BPMNShape_1hvadbq" bpmnElement="Activity_1i7fkx2">
<dc:Bounds x="380" y="200" width="100" height="80" />
<bpmndi:BPMNLabel />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_0p49tz0_di" bpmnElement="Activity_1ayopxr">
<dc:Bounds x="550" y="200" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="BPMNEdge_1d397qp" bpmnElement="Flow_0n3djvs">
<di:waypoint x="830" y="240" />
<di:waypoint x="900" y="240" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="BPMNEdge_0u6zjo7" bpmnElement="Flow_0lr2fpj">
<di:waypoint x="1000" y="240" />
<di:waypoint x="1062" y="240" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_11zkgke_di" bpmnElement="Flow_11zkgke">
<di:waypoint x="158" y="240" />
<di:waypoint x="210" y="240" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1ale8a2_di" bpmnElement="Flow_1ale8a2">
<di:waypoint x="310" y="240" />
<di:waypoint x="380" y="240" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1gfeknb_di" bpmnElement="Flow_1gfeknb">
<di:waypoint x="480" y="240" />
<di:waypoint x="550" y="240" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0u8sn4c_di" bpmnElement="Flow_0u8sn4c">
<di:waypoint x="650" y="240" />
<di:waypoint x="730" y="240" />
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
<bpmndi:BPMNDiagram id="BPMNDiagram_191w697">
<bpmndi:BPMNPlane id="BPMNPlane_1urlpwk" bpmnElement="Activity_1864qj2">
<bpmndi:BPMNShape id="Event_1qh3xrh_di" bpmnElement="Event_1qh3xrh">
<dc:Bounds x="242" y="182" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_1of3arm_di" bpmnElement="Activity_0xrsduh">
<dc:Bounds x="330" y="160" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Activity_1pc13jq_di" bpmnElement="Activity_0rww1ya">
<dc:Bounds x="490" y="160" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Event_0kmx0m7_di" bpmnElement="Event_0kmx0m7">
<dc:Bounds x="652" y="182" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="Flow_0pwvb62_di" bpmnElement="Flow_0pwvb62">
<di:waypoint x="278" y="200" />
<di:waypoint x="330" y="200" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_0z8ory2_di" bpmnElement="Flow_0z8ory2">
<di:waypoint x="430" y="200" />
<di:waypoint x="490" y="200" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="Flow_1hebd4s_di" bpmnElement="Flow_1hebd4s">
<di:waypoint x="590" y="200" />
<di:waypoint x="652" y="200" />
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
</bpmn:definitions>