Inventory

This data model is for tracking surgical supplies (e.g., scalpels, bandages) between systems.

Inventory workflows are common for connecting to inpatient EHR systems with robust interfacing capabilities and surgical specialty modules. Supplies are often used in areas that function similarly to surgery (e.g., invasive cardiology, angiography).

You can exchange inventory data with inventory management systems, the EHR system, or other system responsible for consuming supplies.

This data model has event types that allow you to:

  • send administrative updates; or
  • document supply depletions.

Deplete

Send a message to document the usage of supply (e.g., during a surgical procedure) from the EHR system to the Enterprise Resource Planner (ERP).

The optional Patient object provides context for charging based on supply usage. Without the Patient object, the Deplete event type can be used to document normal supply usage and trigger automatic creation of a reorder (requisition).

Request Body Schema

  • Meta
    required, object
    • DataModel
      required, string
      Reliable

      Inventory

    • EventType
      required, string
      Reliable

      Deplete

    • EventDateTime
      string, null
      Reliable

      Displays the UTC date and time that an outgoing request is delivered or an incoming request is received.
      ISO 8601 Format

    • Test
      boolean, null
      Reliable

      Indicates whether the request is a test or not.

    • Source
      object

      Contains the information for the system initiating the message, including the source ID and name.
      Included in messages from Redox

      • ID
        string, null
        Reliable

        Identifies the system initiating the message. If you have multiple OAuth API keys per environment type, this value is required. If you have only one OAuth API key per environment type, or you're using legacy API keys, this value is optional.
        UUID

      • Name
        string, null
        Reliable

        Displays the name of the system initiating the message.

    • Destinations
      Array of object

      Contains the information for the endpoint(s) receiving the request. A request must contain at least one destination, but asynchronous requests can have more than one destination. Synchronous requests like queries can only support one destination.
      Required when sending data to Redox.

      • ID
        string, null
        Reliable

        Identifies the endpoint that the request is directed to.
        UUID

      • Name
        string, null
        Reliable

        Displays the name of the endpoint that the request is directed to.

    • Logs
      Array of object

      Contains the log identifier(s) for the request.

      • ID
        string, null
        Reliable

        Identifies the request log(s) that correspond to this request. You can use this value to locate the relevant log in the Redox dashboard for support and reference.
        UUID

      • AttemptID
        string, null
        Reliable

        Identifies the request log attempt value, which is useful when retries are possible.
        UUID

    • FacilityCode
      string, null
      Possible

      Code for the facility related to the message.
      Only use this field if a health system indicates you should. The code is specific to the health system's EHR and might not be unique across health systems. In general, the facility fields within the data models (e.g. OrderingFacility) are more reliable and informative.

  • Items
    required, Array of object
    • Identifiers
      required, Array of object
      • ID
        required, string
        Reliable

        The identifier list for an item can contain multiple aliases, including the application ID for the item, an external ordering system's ID, or the an ID that the health system uses to identify the item across systems.

      • IDType
        required, string
        Reliable

        The type of identifier in Item.Identifiers[].ID.
        This is usually a string that roughly corresponds to which application assigned the ID. Example: Redox, Lawson, RedoxHealthSystem

    • Description
      string, null
      Probable

      A free text description of the item name.
      *Used to show a human-readable version of the item, or for lookup.. *

    • Quantity
      number, null
      Probable

      The quantity of the item being referred to. For update messages, this usually refers to the quantity on hand, for requisition messages, this is the number used/ordered.

    • Type
      string, null
      Probable

      What kind of item this is (Equipment, Supply, Implant, Medication).
      *This is used primary for filtering. *

    • Units
      string, null
      Probable

      The unit of measure for the item. Examples: Box, Pack, Syringe, etc.
      Different products are ordered/used in different quantities. For example, you may buy a case of gauze, and those are used as packages.

    • Procedure
      object
      • Code
        string, null
        Probable

        A procedure attached to the item. This is usually a HCPCS code that is used to bill for the item.

      • Codeset
        string, null
        Probable

        Codeset of the procedure.

      • Modifier
        string, null
        Probable

        A modifier (if applicable), usually used in conjunction with the HCPCS code.

    • Notes
      string, null
      Probable

      Free text comments about the item.

    • Vendor
      object

      Information about the specific vendor that the item is from.

      • ID
        string, null
        Probable

        The ID for the vendor that would be used in automated purchase system.

      • Name
        string, null
        Probable

        A name/description of the vendor.

      • CatalogNumber
        string, null
        Probable

        The Vendor's ID for the item. This will be used in any kind of automated purchase system.

    • WastedQuantity
      number, null
      Probable

      The number of items wasted. If present the used and wasted quantities should equal the total quantity.

    • UsedQuantity
      number, null
      Probable

      The number of items opened or used.

    • SerialNumber
      string, null
      Probable

      Sometimes items such a implants will have their serial number documented in EHR.

    • LotNumber
      string, null
      Probable

      Typically corresponds to an implant or some other more durable item.

    • Location
      object

      Where the item is physically stored in the healthcare facility.

      • Facility
        string, null
        Probable

        Example: Community Hospital

      • Department
        string, null
        Probable

        Department where the item is physically stored.

      • ID
        string, null
        Probable

        An identifier for the location of the product - this can correspond to one of multiple store rooms in a particular facility, or the facility itself.

      • Bin
        string, null
        Probable

        An further identifier for where the item is located.

    • OrderingProvider
      object
      • ID
        string, null
        Possible

        ID of the depletion ordering provider.
        This ID is often required for Inpatient Visits.

      • IDType
        string, null
        Possible

        ID type of the ID for the depletion ordering provider

      • FirstName
        string, null
        Possible

        First name of the depletion ordering provider

      • LastName
        string, null
        Possible

        Last name of the depletion ordering provider

      • Credentials
        Array of string

        List of credentials for the depletion ordering provider.
        e.g. MD, PhD

      • Address
        object

        Provider's address

        • StreetAddress
          string, null
          Possible

          Street address

        • City
          string, null
          Possible

          City

        • State
          string, null
          Possible

          State

        • ZIP
          string, null
          Possible

          ZIP

        • County
          string, null
          Possible

          County

        • Country
          string, null
          Possible
          Value Set

          Country

      • EmailAddresses
        Array of string

        Provider's email address(es)

      • PhoneNumber
        object
        • Office
          string, null
          Possible

          Provider's office phone number.
          In E. 164 Format. (e.g. +16085551234)

      • Location
        object

        Provider's location

        • Type
          string, null
          Possible

          Type of location.
          Examples: Clinic, Department, Home, Nursing Unit, Provider's Office, Phone

        • Facility
          string, null
          Possible

          Facility.
          Example: Community Hospital

        • FacilityIdentifiers
          Array of object

          List of IDs specific to this facility

          • ID
            string, null
            Possible

            An ID specific to this facility

          • IDType
            string, null
            Possible

            The source or system to which this ID pertains.
            Could be an OID or a human-readable name

        • Department
          string, null
          Possible

          Department

        • DepartmentIdentifiers
          Array of object

          List of IDs specific to this department

          • ID
            string, null
            Possible

            An ID specific to this department

          • IDType
            string, null
            Possible

            The source or system to which this ID pertains.
            Could be an OID or a human-readable name

        • Room
          string, null
          Possible

          Room.
          Example: 136

  • Patient
    object
    • Identifiers
      Array of object

      List of IDs and ID types that identify the patient

      • ID
        string, null
        Reliable

        ID for the patient

      • IDType
        string, null
        Reliable

        Type of ID.
        E.g. MRN, EPI

    • Demographics
      object
      • FirstName
        string, null
        Reliable

        Patient's first name

      • MiddleName
        string, null
        Possible

        Patient's middle name or middle initial. For patients with multiple middle names, all their middle names are included in this field.

      • LastName
        string, null
        Reliable

        Patient's last name

      • DOB
        string, null
        Reliable

        Patient's date of birth.
        In ISO 8601 format

      • SSN
        string, null
        Probable

        Patient's social security number

      • Sex
        string, null
        Reliable
        Value Set

        Patient's sex

      • Race
        string, null
        Possible
        Value Set

        Patient's race

      • IsHispanic
        boolean, null
        Possible
        Value Set

        Indicates if the patient is of hispanic origin.

      • Religion
        string, null
        Possible
        Value Set

        Patient's religious affiliation

      • MaritalStatus
        string, null
        Possible
        Value Set

        Patient's marital status

      • IsDeceased
        boolean, null
        Possible

        Indicates if the patient is deceased

      • DeathDateTime
        string, null
        Possible

        Date and Time the patient was proclaimed deceased.
        ISO 8601 Format

      • PhoneNumber
        object
        • Home
          string, null
          Probable

          Patient's home phone number.
          In E. 164 Format. (e.g. +16085551234)

        • Office
          string, null
          Probable

          Patient's office phone number.
          In E. 164 Format. (e.g. +16085551234)

        • Mobile
          string, null
          Probable

          Patient's mobile phone number.
          In E. 164 Format. (e.g. +16085551234)

      • EmailAddresses
        Array of string

        Patient's email address(es)

      • Language
        string, null
        Possible
        Value Set

        Patient's primary spoken language.
        In ISO 639-1 alpha values (e.g. 'en'). Supported Values

      • Citizenship
        Array of string

        Patient's nation(s) of citizenship.
        In ISO 3166 alpha 2 format (e.g. 'US').

      • Address
        object

        Patient's home address

        • StreetAddress
          string, null
          Probable

          Street address

        • City
          string, null
          Probable

          City

        • State
          string, null
          Probable

          State

        • ZIP
          string, null
          Probable

          ZIP

        • County
          string, null
          Possible

          County

        • Country
          string, null
          Possible
          Value Set

          Country

    • Notes
      Array of string

      Patient-level notes

  • Visit
    object
    • VisitNumber
      string, null
      Possible

      Visit Number.
      Unique ID of a single visit

Example
json
1
{
2
"Meta": {
3
"DataModel": "Inventory",
4
"EventType": "Deplete",
5
"EventDateTime": "2024-12-20T18:11:36.537Z",
6
"Test": true,
7
"Source": {
8
"ID": "7ce6f387-c33c-417d-8682-81e83628cbd9",
9
"Name": "Redox Dev Tools"
10
},
11
"Destinations": [
12
{
13
"ID": "af394f14-b34a-464f-8d24-895f370af4c9",
14
"Name": "Redox EMR"
15
}
16
],
17
"Logs": [
18
{
19
"ID": "d9f5d293-7110-461e-a875-3beb089e79f3",
20
"AttemptID": "925d1617-2fe0-468c-a14c-f8c04b572c54"
21
}
22
],
23
"FacilityCode": null
24
},
25
"Patient": {
26
"Identifiers": [
27
{
28
"ID": "0000000001",
29
"IDType": "MR"
30
},
31
{
32
"ID": "e167267c-16c9-4fe3-96ae-9cff5703e90a",
33
"IDType": "EHRID"
34
},
35
{
36
"ID": "a1d4ee8aba494ca",
37
"IDType": "NIST"
38
}
39
],
40
"Demographics": {
41
"FirstName": "Timothy",
42
"MiddleName": "Paul",
43
"LastName": "Bixby",
44
"DOB": "2008-01-06",
45
"SSN": "101-01-0001",
46
"Sex": "Male",
47
"Race": "White",
48
"IsHispanic": null,
49
"Religion": null,
50
"MaritalStatus": "Single",
51
"IsDeceased": null,
52
"DeathDateTime": null,
53
"PhoneNumber": {
54
"Home": "+18088675301",
55
"Office": null,
56
"Mobile": null
57
},
58
"EmailAddresses": [],
59
"Language": "en",
60
"Citizenship": [],
61
"Address": {
62
"StreetAddress": "4762 Hickory Street",
63
"City": "Monroe",
64
"State": "WI",
65
"ZIP": "53566",
66
"County": "Green",
67
"Country": "US"
68
}
69
},
70
"Notes": []
71
},
72
"Visit": {
73
"VisitNumber": null
74
},
75
"Items": [
76
{
77
"Identifiers": [
78
{
79
"ID": "22246069",
80
"IDType": "SUPPLY"
81
}
82
],
83
"Description": "Gauze Sponges",
84
"Quantity": 4,
85
"Type": "Supply",
86
"Units": "Bandages",
87
"Procedure": {
88
"Code": null,
89
"Codeset": null,
90
"Modifier": null
91
},
92
"Notes": "Case of 2000",
93
"Vendor": {
94
"ID": "FSH",
95
"Name": "FISHER SCIENTIFIC",
96
"CatalogNumber": "22-246069"
97
},
98
"WastedQuantity": 1,
99
"UsedQuantity": 3,
100
"SerialNumber": null,
101
"LotNumber": null,
102
"Location": {
103
"Facility": null,
104
"Department": null,
105
"ID": "Central",
106
"Bin": "42"
107
},
108
"OrderingProvider": {
109
"ID": "4356789876",
110
"IDType": "NPI",
111
"FirstName": "Pat",
112
"LastName": "Granite",
113
"Credentials": [
114
"MD"
115
],
116
"Address": {
117
"StreetAddress": "123 Main St.",
118
"City": "Madison",
119
"State": "WI",
120
"ZIP": "53703",
121
"County": "Dane",
122
"Country": "USA"
123
},
124
"EmailAddresses": [],
125
"PhoneNumber": {
126
"Office": "+16085551234"
127
},
128
"Location": {
129
"Type": null,
130
"Facility": null,
131
"FacilityIdentifiers": [],
132
"Department": null,
133
"DepartmentIdentifiers": [],
134
"Room": null
135
}
136
}
137
}
138
]
139
}