{
  "version": "1.0.0",
  "exportedAt": "2026-07-16T09:55:11.761Z",
  "workflow": {
    "name": "HL7 Inbound & Transformation",
    "description": "Receives an inbound HL7 message, validates and acknowledges it, transforms it into FHIR, and hands it off to the destination system \u2014 with every step logged."
  },
  "flow": {
    "tab": {
      "id": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
      "type": "tab",
      "label": "Sample HL7 Inbound flow",
      "disabled": false,
      "info": "This flow demonstrates the usage of HL7 nodes to receive an inbound connection and process it.",
      "created": "2026-07-07T13:50:56.819Z"
    },
    "nodes": [
      {
        "id": "2c9e13cc93c23cd6",
        "type": "group",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "name": "HL7 Processing & Mapping ",
        "style": {
          "label": true,
          "stroke": "#ffcf3f",
          "fill": "#ffcf3f",
          "fill-opacity": "0.37",
          "color": "#ffC000"
        },
        "nodes": [
          "4d7cfd929d8851fb",
          "6eb9cf4a96556c47",
          "9541c02c19fc0a04",
          "ed3a3f81e48a0c33"
        ],
        "x": 574,
        "y": 599,
        "w": 792,
        "h": 202
      },
      {
        "id": "10867abef1085c69",
        "type": "group",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "name": "HL7 ACK AA/AR",
        "style": {
          "label": true,
          "stroke": "#0070c0",
          "fill": "#3f93cf",
          "fill-opacity": "0.34",
          "color": "#0070c0"
        },
        "nodes": [
          "9ced06af05646b1c",
          "e1a8853553a28e40",
          "ed1dedb7588e39c0",
          "bddf6f526d9e591c"
        ],
        "x": 1314,
        "y": 99,
        "w": 432,
        "h": 222
      },
      {
        "id": "cb8e701af80b2210",
        "type": "group",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "name": "HL7 Validation and Parsing",
        "style": {
          "label": true,
          "stroke": "#addb7b",
          "fill": "#c8e7a7",
          "fill-opacity": "0.5",
          "color": "#92d04f"
        },
        "nodes": [
          "ef3e07e2ec5293f0",
          "526d2f3424ef9f04",
          "1848657c3bc93c9a",
          "363a5fe64596bc64",
          "f856f5a093f54db1",
          "1f6ed4d096b1645e",
          "e0cdf95269f25cf4",
          "9a1804fedd763280"
        ],
        "x": 594,
        "y": 99,
        "w": 637.0000495910645,
        "h": 213.00003051757812
      },
      {
        "id": "8bc48a96f4e10a28",
        "type": "group",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "name": "HL7 Input Handler",
        "style": {
          "label": true,
          "stroke": "#9363b7",
          "fill": "#9363b7",
          "fill-opacity": "0.21",
          "color": "#6f2fa0"
        },
        "nodes": [
          "e25b1cd022751815",
          "8721b2bab7948bd0",
          "a0154aa41e12efe1"
        ],
        "x": 94,
        "y": 99,
        "w": 382,
        "h": 142
      },
      {
        "id": "9c251af69e15c6da",
        "type": "group",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "name": "Receive SQS Message",
        "style": {
          "stroke": "#9363b7",
          "fill": "#b797cf",
          "fill-opacity": "0.27",
          "label": true,
          "color": "#6f2fa0"
        },
        "nodes": [
          "3001b18db5c86209",
          "a1106f3c0839e7ac",
          "1be7bd007801435f"
        ],
        "x": 134,
        "y": 599,
        "w": 322,
        "h": 162
      },
      {
        "id": "293886f6620e6241",
        "type": "junction",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "x": 560,
        "y": 640,
        "wires": [
          [
            "4d7cfd929d8851fb"
          ]
        ]
      },
      {
        "id": "9a1804fedd763280",
        "type": "junction",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "g": "cb8e701af80b2210",
        "x": 1060,
        "y": 280,
        "wires": [
          [
            "bddf6f526d9e591c"
          ]
        ]
      },
      {
        "id": "e25b1cd022751815",
        "type": "debug",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "g": "8bc48a96f4e10a28",
        "name": "HL7 Message",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": false,
        "complete": "payload",
        "targetType": "msg",
        "statusVal": "",
        "statusType": "auto",
        "x": 200,
        "y": 200,
        "wires": []
      },
      {
        "id": "9ced06af05646b1c",
        "type": "ec-hl7-acknowledgement",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "g": "10867abef1085c69",
        "name": "",
        "ackCode": "AA",
        "errorMessage": "Message processed successfully",
        "x": 1620,
        "y": 220,
        "wires": []
      },
      {
        "id": "8721b2bab7948bd0",
        "type": "ec-hl7-in",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "g": "8bc48a96f4e10a28",
        "name": "",
        "integrationId": "",
        "messageTypes": "",
        "x": 190,
        "y": 140,
        "wires": [
          [
            "e25b1cd022751815",
            "a0154aa41e12efe1"
          ]
        ]
      },
      {
        "id": "363a5fe64596bc64",
        "type": "ec-hl7-parser",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "g": "cb8e701af80b2210",
        "name": "",
        "outputField": "",
        "outputFieldType": "msg",
        "x": 704.0001220703125,
        "y": 211.00003051757812,
        "wires": [
          [
            "f856f5a093f54db1",
            "e0cdf95269f25cf4"
          ]
        ]
      },
      {
        "id": "f856f5a093f54db1",
        "type": "debug",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "g": "cb8e701af80b2210",
        "name": "Parsed HL7 Output",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": false,
        "complete": "payload",
        "targetType": "msg",
        "statusVal": "",
        "statusType": "auto",
        "x": 724.0001220703125,
        "y": 271.0000305175781,
        "wires": []
      },
      {
        "id": "a0154aa41e12efe1",
        "type": "change",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "g": "8bc48a96f4e10a28",
        "name": "Set HL7 MSG",
        "rules": [
          {
            "t": "set",
            "p": "payload",
            "pt": "msg",
            "to": "payload.raw",
            "tot": "msg"
          }
        ],
        "action": "",
        "property": "",
        "from": "",
        "to": "",
        "reg": false,
        "x": 370,
        "y": 140,
        "wires": [
          [
            "363a5fe64596bc64"
          ]
        ]
      },
      {
        "id": "ef3e07e2ec5293f0",
        "type": "switch",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "g": "cb8e701af80b2210",
        "name": "Check for error ",
        "property": "error",
        "propertyType": "msg",
        "rules": [
          {
            "t": "nempty"
          },
          {
            "t": "else"
          }
        ],
        "checkall": "true",
        "repair": false,
        "outputs": 2,
        "x": 1122.0002365112305,
        "y": 212.0000352859497,
        "wires": [
          [
            "ed1dedb7588e39c0"
          ],
          [
            "9ced06af05646b1c"
          ]
        ]
      },
      {
        "id": "e1a8853553a28e40",
        "type": "ec-hl7-acknowledgement",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "g": "10867abef1085c69",
        "name": "",
        "ackCode": "AR",
        "errorMessage": "",
        "x": 1620,
        "y": 140,
        "wires": []
      },
      {
        "id": "1848657c3bc93c9a",
        "type": "catch",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "g": "cb8e701af80b2210",
        "name": "Catch On Valdiation",
        "scope": [
          "363a5fe64596bc64"
        ],
        "uncaught": false,
        "x": 710,
        "y": 140,
        "wires": [
          [
            "ef3e07e2ec5293f0",
            "1f6ed4d096b1645e"
          ]
        ]
      },
      {
        "id": "526d2f3424ef9f04",
        "type": "debug",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "g": "cb8e701af80b2210",
        "name": "Error Output",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": false,
        "complete": "true",
        "targetType": "full",
        "statusVal": "",
        "statusType": "auto",
        "x": 1115.0000495910645,
        "y": 140.0000114440918,
        "wires": []
      },
      {
        "id": "ed1dedb7588e39c0",
        "type": "change",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "g": "10867abef1085c69",
        "name": "Set ErrMsg",
        "rules": [
          {
            "t": "set",
            "p": "errorMessage",
            "pt": "msg",
            "to": "error.message",
            "tot": "msg"
          }
        ],
        "action": "",
        "property": "",
        "from": "",
        "to": "",
        "reg": false,
        "x": 1410,
        "y": 140,
        "wires": [
          [
            "e1a8853553a28e40"
          ]
        ]
      },
      {
        "id": "4d7cfd929d8851fb",
        "type": "ec-hl7-mapper",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "g": "2c9e13cc93c23cd6",
        "name": "HL7  ADT to FHIR Mapping ",
        "templateType": "custom",
        "template": "{% assign firstSegments = hl7v2Data | get_first_segments: 'PID|PD1|PV1|PV2|MSH|UAC|EVN|ACC|PDA' -%}\n{% assign sftSegmentLists = hl7v2Data | get_segment_lists: 'SFT' -%}\n{% assign arvSegmentLists = hl7v2Data | get_segment_lists: 'ARV' -%}\n{% assign nk1SegmentLists = hl7v2Data | get_segment_lists: 'NK1' -%}\n{% assign db1SegmentLists = hl7v2Data | get_segment_lists: 'DB1' -%}\n{% assign obxSegmentLists = hl7v2Data | get_segment_lists: 'OBX' -%}\n{% assign al1SegmentLists = hl7v2Data | get_segment_lists: 'AL1' -%}\n{% assign dg1SegmentLists = hl7v2Data | get_segment_lists: 'DG1' -%}\n{% assign drgSegmentLists = hl7v2Data | get_segment_lists: 'DRG' -%}\n{% assign pr1SegmentLists = hl7v2Data | get_segment_lists: 'PR1' -%}\n{% assign gt1SegmentLists = hl7v2Data | get_segment_lists: 'GT1' -%}\n{% assign in1SegmentLists = hl7v2Data | get_segment_lists: 'IN1' -%}\n{% assign in2SegmentLists = hl7v2Data | get_segment_lists: 'IN2' -%}\n{% assign in3SegmentLists = hl7v2Data | get_segment_lists: 'IN3' -%}\n{% assign autSegmentLists = hl7v2Data | get_segment_lists: 'AUT' -%}\n{% assign rf1SegmentLists = hl7v2Data | get_segment_lists: 'RF1' -%}\n{% assign ub1SegmentLists = hl7v2Data | get_segment_lists: 'UB1' -%}\n{% assign ub2SegmentLists = hl7v2Data | get_segment_lists: 'UB2' -%}\n{% evaluate bundleID using 'ID/Bundle' Data: firstSegments.MSH.10 -%}                                        \n {\n    patientName: \"{{ firstSegements.PID.5 }}\"\n }",
        "outputFormat": "json",
        "inputField": "payload",
        "inputFieldType": "msg",
        "outputField": "",
        "outputFieldType": "msg",
        "x": 720,
        "y": 640,
        "wires": [
          [
            "9541c02c19fc0a04",
            "ed3a3f81e48a0c33"
          ]
        ]
      },
      {
        "id": "6eb9cf4a96556c47",
        "type": "debug",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "g": "2c9e13cc93c23cd6",
        "name": "Mapped output",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": false,
        "complete": "payload",
        "targetType": "msg",
        "statusVal": "",
        "statusType": "auto",
        "x": 1240,
        "y": 640,
        "wires": []
      },
      {
        "id": "9541c02c19fc0a04",
        "type": "http request",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "g": "2c9e13cc93c23cd6",
        "name": "Write Back to Customer Server",
        "method": "POST",
        "ret": "txt",
        "paytoqs": "ignore",
        "url": "https://webhook.site/8153b4f7-5322-4af5-bc16-49abfac0f177",
        "tls": "",
        "persist": false,
        "proxy": "",
        "insecureHTTPParser": false,
        "authType": "",
        "senderr": false,
        "headers": [],
        "x": 1150,
        "y": 760,
        "wires": [
          []
        ]
      },
      {
        "id": "df41e5f3f69430ed",
        "type": "comment",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "name": "Add HL7 Connection here and configure supported message",
        "info": "",
        "x": 310,
        "y": 80,
        "wires": []
      },
      {
        "id": "cca9b83d1dd0ea0a",
        "type": "comment",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "name": "Parser node handles validation and parsing of the hl7 message",
        "info": "",
        "x": 830,
        "y": 80,
        "wires": []
      },
      {
        "id": "72745905a9dc73c1",
        "type": "comment",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "name": "Based on the error form catch - Acknowledgement Accept(AA) or Reject(AR) is sent back",
        "info": "",
        "x": 1560,
        "y": 80,
        "wires": []
      },
      {
        "id": "9ffbcfaed6ff440a",
        "type": "comment",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "name": "After the HL7 is ACKed, further processing can happen",
        "info": "",
        "x": 790,
        "y": 580,
        "wires": []
      },
      {
        "id": "7ae99a8931f5d446",
        "type": "comment",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "name": "In this case were mapping it FHIR and writing it to a dummy server",
        "info": "",
        "x": 1280,
        "y": 580,
        "wires": []
      },
      {
        "id": "1f6ed4d096b1645e",
        "type": "ec-audit-log",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "g": "cb8e701af80b2210",
        "name": "",
        "label": "",
        "maskFields": "[]",
        "autoMask": true,
        "inputField": "payload",
        "inputFieldType": "msg",
        "x": 965.0000495910645,
        "y": 140.0000114440918,
        "wires": [
          [
            "526d2f3424ef9f04"
          ]
        ]
      },
      {
        "id": "ed3a3f81e48a0c33",
        "type": "ec-audit-log",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "g": "2c9e13cc93c23cd6",
        "name": "",
        "label": "HL7 Mapped to Bundle ID",
        "maskFields": "[]",
        "autoMask": true,
        "inputField": "payload.id",
        "inputFieldType": "msg",
        "x": 1020,
        "y": 640,
        "wires": [
          [
            "6eb9cf4a96556c47"
          ]
        ]
      },
      {
        "id": "d9512c228ec5b7fe",
        "type": "comment",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "name": "Audit Nodes are used for more customized logging",
        "info": "",
        "x": 270,
        "y": 340,
        "wires": []
      },
      {
        "id": "bddf6f526d9e591c",
        "type": "ec-hl7-acknowledgement",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "g": "10867abef1085c69",
        "name": "",
        "ackCode": "AE",
        "errorMessage": "Message processed successfully",
        "x": 1620,
        "y": 280,
        "wires": []
      },
      {
        "id": "e0cdf95269f25cf4",
        "type": "ec-sqs-send",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "g": "cb8e701af80b2210",
        "name": "",
        "sqsConfigId": "1b0f6a4b4725f24d",
        "queueUrl": "",
        "messageBody": "",
        "messageGroupId": "",
        "messageDeduplicationId": "",
        "x": 892.0000495910645,
        "y": 212.00002098083496,
        "wires": [
          [
            "ef3e07e2ec5293f0"
          ],
          [
            "9a1804fedd763280"
          ]
        ]
      },
      {
        "id": "3001b18db5c86209",
        "type": "ec-sqs-receive",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "g": "9c251af69e15c6da",
        "name": "",
        "sqsConfigId": "1b0f6a4b4725f24d",
        "queueUrl": "",
        "maxMessages": 1,
        "waitTimeSeconds": 0,
        "visibilityTimeout": "",
        "autoDeleteOnReceipt": false,
        "x": 290,
        "y": 640,
        "wires": [
          [
            "293886f6620e6241"
          ],
          [
            "a1106f3c0839e7ac"
          ]
        ]
      },
      {
        "id": "a1106f3c0839e7ac",
        "type": "ec-audit-log",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "g": "9c251af69e15c6da",
        "name": "",
        "label": "",
        "maskFields": "[]",
        "autoMask": true,
        "inputField": "payload",
        "inputFieldType": "msg",
        "x": 220,
        "y": 720,
        "wires": [
          [
            "1be7bd007801435f"
          ]
        ]
      },
      {
        "id": "1be7bd007801435f",
        "type": "debug",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "g": "9c251af69e15c6da",
        "name": "Log Error",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": false,
        "complete": "payload",
        "targetType": "msg",
        "statusVal": "",
        "statusType": "auto",
        "x": 350,
        "y": 720,
        "wires": []
      },
      {
        "id": "826b0476f0c01c9c",
        "type": "comment",
        "z": "workflow_eef66985-5d97-46ca-b471-85697dfe7cac",
        "name": "Receieve HL7 Messages from SQS",
        "info": "",
        "x": 180,
        "y": 580,
        "wires": []
      }
    ]
  },
  "requirements": []
}