Inventory Configuration

Understanding the Steps Involved in Setting Up a Study to Support Tracking of Investigational Products (IP)

Inventory, or "Trial supply" - (also referred to as IRT or RTSM) is a function of TrialKit built right in for managing investigational product used within the study.

This is very helpful when study subjects are receiving a specific product, device, or drug at any point during a study. Among its various functions, it primarily allows sites to directly assign items on eCRFs from their local inventory, and it can be linked to randomization arms for automated product assignments.

This article details how the inventory is setup. Use the following links to jump to any section:

Inventory User Roles and Permissions

Configuring An Inventory

Defining the Product Workflow and Types

Importing An Inventory List

Setting up a Form for Assigning Products to Participants

Resetting An Inventory

Inventory User Roles and Permissions

At a minimum, for most scenarios, two user roles need access to Inventory:

  • The Inventory Administrator (unblinded if tied to randomization)
  • The site user who accepts items into the site’s inventory and assigns items to participants

Optionally, other user roles can give visibility of the entire inventory without the ability to perform any actions within it.

Here is an example of the role permissions commonly granted to a site level role:


Configuring An Inventory


Study is enabled to use Inventory within the functionality settings

User has access to Inventory Administration

The first step is to fill out a study form within the study documents titled "Inventory Configuration". The form is available by default, but if it's not, it can be imported easily from the public library titled "Standard site/study forms"

Any number of independent inventory lists can be configured. Fill out one form for each of those lists. Commonly it's only one. Below is an example of an inventory titled "Study Kit" for a kit that will be getting distributed to study Participants.

One of the key factors being defined here is the CSV inventory list that will be uploaded. At minimum, it needs to contain:

  1. A column serving as the unique identifier for each row in the file, and
  2. A column titled "Type" to differentiate product types, even if there is only one type

Add a new row in the table for each column that will exist in the uploaded inventory file.

Reserved names that should not be used in the file column headers:

  • Item_id
  • Item_disposition
  • Item_status
  • Item_site
  • Item_subject
  • Item_retired
  • Item_date
  • Barcode

"Type" Column

If the products will be associated with randomization allocation, the type value should correspond with that value referenced on the randomization allocations screen. 

In this example randomization, product with type "3" should be a placebo product in the inventory list:

If randomization is not related to product, or randomization is not being used at all, set each product type as "1".

Floor and Ceiling

The inventory levels that should be adhered to for each site and product type if automated inventory distribution is being used. These can be adjusted over time if needed.

In the example above. If site 'Acme' reaches 1 item of type 'A', the system will refill Acme site up to the ceiling level of 3 for that same product type.

Reasons for Rejection

These will be the possible coded reasons a site can indicate for rejecting an item that has not yet been accepted into the site's inventory.

The choices here must be in the format "X. Reason" - where X is any coded number value, period, single space, reason text. This is how the system will know which choices to display when a site is rejecting an item they received.


Defining the Product Workflow, Contact Information, and Product Types

The inventory workflow is necessary to tell the system how each item will flow from a starting point to a final destination and dictate which user role is responsible for each of the levels an item passes through. This is needed before uploading an inventory file. It can be accessed from the Inventory Configuration screen:


Select which inventory configuration to define the workflow for, and then use the form to populate the table by order of workflow. Following is a common example where each item in inventory will be distributed to a site and stop there.

A Few Points to Consider

  • Items with site-specific visibility need to be Site type roles, which are defined in Role security. 
  • If using automated inventory, the name/email/address will be the contact person who receives the shipment notices from the system. This can be an external contact that never accesses or utilizes TrialKit. The role defined in the first workflow level will also get copied on these notices.
  • The site-level workflow contact information is not needed because each site will have its own contact. The site contact is named in the site "Inventory Contact" form within the Site Manager under the website host menu. If that form does not exist in your Site Manager, it can easily be imported from the Inventory Forms public form library. The key fields in that form must be named "site_contact", "site_email", and "site_address".

Site Contact Information

It's important to complete the appropriate contact information for both the Distributor (discussed above) and each site that will be part of the study. The system will notify those parties regarding inventory activities. Primarily when new items are shipped or items are rejected.

To complete site contact information, use the Site Contact form within the Site Manager.

Define Product Types

It is necessary to give a name to each type of product, if there are multiple types.


Select the inventory to define types for, and then use the form to fill in the text definition of each as shown below.


Importing An Inventory List

To import a CSV file containing an inventory list, open the Inventory Configuration screen.


Here's a sample file to use for practice where there are only three columns - "Item", "Type", and "Sequence1". 

To verify the imported file. Open Inventory Manager.

Updating an Inventory List

As the study progresses, new items can be added to the CSV file and then uploaded to the same location. The system will append those new items onto the existing master inventory list without affecting pre-existing items.

Using the TrialKit mobile app, items can also be individually scanned directly into the inventory if they have a barcode. The system will populate the identifier column with the barcode ID automatically and allow the user to fill out any other details which were defined in the import configuration form. 


Setting up a Form for Assigning Products to Participants

Somewhere within data collection for Participants, a form needs to collect which items a Participant is receiving. This can be done either manually by a user entering the form, or automatically populated based on randomization allocation. This section will cover both methods.

Setting up a Form for a User to Manually Select a Single Item

Add a dropdown field to the form where the site will choose items from their local inventory. Do not add any choices. The system will dynamically populate choices during data entry, based on the site's local available inventory.

Map the field special type to the corresponding inventory list as shown below.



Setting up a Form for a User to Manually Select More Than one Item

Add a multi-select field to the form where the site will choose items from their local inventory. Do not add any choices. The system will dynamically populate choices during data entry, based on the site's local available inventory.

Map the field special type to the corresponding inventory list


Setting up a Form to Automatically Populate Inventory Based on Randomization Allocation

Items can be auto-assigned by randomization allocation (IWRS). In that case, add a TEXT field to the form instead of a choice field.

This should be done on the same form where randomization allocation is getting triggered. Nothing else needs to be done with that text field in form builder. Instead, the inventory configuration will allow for mapping the randomization to the text field:


If more than one product needs to be populated based on randomization allocation, multiple text fields can be placed on the form - each mapped to its own inventory list. If this is done, be sure the 'type' column matches for all inventory lists.


Resetting Inventory

Prerequisite: User has access to Inventory Administration > Reset Inventories

Only used for testing or UAT purposes when an Administrator would like to reset and clear the inventory completely without losing the configuration. This permission should be disabled when the study is live to prevent accidental reset.


Read more about Inventory Administration.