URS-063 · Distributor Onboarding Workflow with Roles
Status: PASS · Duration: 1m 37s · Run Date: April 21, 2026
Test Scenarios
Section titled “Test Scenarios”Step 1: Login as manufacturer admin
Section titled “Step 1: Login as manufacturer admin”
Step 2: Navigate to Distributor Agencies
Section titled “Step 2: Navigate to Distributor Agencies”
Step 3: Existing distributors
Section titled “Step 3: Existing distributors”

Step 4: Create distributor
Section titled “Step 4: Create distributor”



Step 5: New distributor in list
Section titled “Step 5: New distributor in list”
Step 6: Members page
Section titled “Step 6: Members page”
Step 7: Invite member
Section titled “Step 7: Invite member”


Step 8: Member in list
Section titled “Step 8: Member in list”
Step 9: Member details
Section titled “Step 9: Member details”

Step 10: Admin overview
Section titled “Step 10: Admin overview”

Recordings
Section titled “Recordings”step 01 login
Section titled “step 01 login”step 02 navigate distributor agencies
Section titled “step 02 navigate distributor agencies”step 03 existing distributors
Section titled “step 03 existing distributors”step 04 create distributor
Section titled “step 04 create distributor”step 05 verify new distributor
Section titled “step 05 verify new distributor”step 06 members page
Section titled “step 06 members page”step 07 invite member
Section titled “step 07 invite member”step 08 verify member
Section titled “step 08 verify member”step 09 member details
Section titled “step 09 member details”step 10 admin overview
Section titled “step 10 admin overview”Database Validations
Section titled “Database Validations”New distributor organization created
Section titled “New distributor organization created”Organization “New Medical Supplies Inc.” should exist in the organizations table
SELECT id, name, created_at FROM organizations WHERE name = $1| id | name | created_at |
|---|---|---|
| 019daddc-7424-7eee-88c5-1090cf239831 | New Medical Supplies Inc. | 2026-04-21T02:26:39.268Z |
Distributor relationship established
Section titled “Distributor relationship established”A distributor relationship should exist between ZuriMED and New Medical Supplies Inc.
SELECT r.parent_organization_id, r.child_organization_id, r.relationship_type, p.name as parent_name, c.name as child_name FROM organization_relationships r JOIN organizations p ON p.id = r.parent_organization_id JOIN organizations c ON c.id = r.child_organization_id WHERE r.parent_organization_id = $1 AND c.name = $2| parent_organization_id | child_organization_id | relationship_type | parent_name | child_name |
|---|---|---|---|---|
| a1b2c3d4-e5f6-7890-abcd-ef1234567890 | 019daddc-7424-7eee-88c5-1090cf239831 | distributor | ZuriMED | New Medical Supplies Inc. |
Invited distributor user created
Section titled “Invited distributor user created”User with email test-distributor@example.com should exist in the users table
SELECT id, email, name, created_at FROM users WHERE email = $1| id | name | created_at | |
|---|---|---|---|
| 019daddc-7422-7be6-b66a-38a5214846d7 | test-distributor@example.com | John Smith | 2026-04-21T02:26:39.266Z |
Distributor user has role assigned
Section titled “Distributor user has role assigned”User test-distributor@example.com should have at least one role assigned in the new distributor org
SELECT ur.user_id, ur.role_id, ur.organization_id, r.name as role_name, u.email, o.name as org_name FROM user_roles ur JOIN users u ON u.id = ur.user_id JOIN roles r ON r.id = ur.role_id JOIN organizations o ON o.id = ur.organization_id WHERE u.email = $1| user_id | role_id | organization_id | role_name | org_name | |
|---|---|---|---|---|---|
| 019daddc-7422-7be6-b66a-38a5214846d7 | 24ee9b94-92a6-4bd4-89e6-48d4f19cfdbe | 019daddc-7424-7eee-88c5-1090cf239831 | Administrator (preset) | test-distributor@example.com | New Medical Supplies Inc. |
User is member of distributor org
Section titled “User is member of distributor org”User test-distributor@example.com should be a member of New Medical Supplies Inc.
SELECT om.user_id, om.organization_id, om.active, u.email, o.name as org_name FROM organization_members om JOIN users u ON u.id = om.user_id JOIN organizations o ON o.id = om.organization_id WHERE u.email = $1 AND o.name = $2| user_id | organization_id | active | org_name | |
|---|---|---|---|---|
| 019daddc-7422-7be6-b66a-38a5214846d7 | 019daddc-7424-7eee-88c5-1090cf239831 | true | test-distributor@example.com | New Medical Supplies Inc. |
Representation relationship created
Section titled “Representation relationship created”A representation relationship should exist for test-distributor@example.com (created via “Add as representative” checkbox)
SELECT orr.id, orr.user_id, orr.approving_organization_id, orr.requesting_organization_id, orr.status, orr.representative_type, u.email, ao.name as approving_org, ro.name as requesting_org FROM organization_representation_relationships orr JOIN users u ON u.id = orr.user_id JOIN organizations ao ON ao.id = orr.approving_organization_id JOIN organizations ro ON ro.id = orr.requesting_organization_id WHERE u.email = $1| id | user_id | approving_organization_id | requesting_organization_id | status | representative_type | approving_org | requesting_org | |
|---|---|---|---|---|---|---|---|---|
| 019daddc-7446-7ee6-915c-fdec13f41623 | 019daddc-7422-7be6-b66a-38a5214846d7 | a1b2c3d4-e5f6-7890-abcd-ef1234567890 | 019daddc-7424-7eee-88c5-1090cf239831 | active | salesperson | test-distributor@example.com | ZuriMED | New Medical Supplies Inc. |
Invited member exists in ZuriMED org
Section titled “Invited member exists in ZuriMED org”User jane.doe.test@zurimed.com should be a member of ZuriMED
SELECT u.id, u.email, u.name, om.active, o.name as org_name FROM users u JOIN organization_members om ON om.user_id = u.id JOIN organizations o ON o.id = om.organization_id WHERE u.email = $1 AND om.organization_id = $2| id | name | active | org_name | |
|---|---|---|---|---|
| 019daddc-eea7-7890-9882-f87eabef3888 | jane.doe.test@zurimed.com | Jane Doe | true | ZuriMED |
Invited member has role in ZuriMED
Section titled “Invited member has role in ZuriMED”User jane.doe.test@zurimed.com should have at least one role assigned in ZuriMED
SELECT ur.user_id, ur.role_id, r.name as role_name, u.email, o.name as org_name FROM user_roles ur JOIN users u ON u.id = ur.user_id JOIN roles r ON r.id = ur.role_id JOIN organizations o ON o.id = ur.organization_id WHERE u.email = $1 AND ur.organization_id = $2| user_id | role_id | role_name | org_name | |
|---|---|---|---|---|
| 019daddc-eea7-7890-9882-f87eabef3888 | bbbbbbbb-bbbb-8bbb-8bbb-bbbbbbbbbbba | SysAdmin | jane.doe.test@zurimed.com | ZuriMED |
Distributor org has feature flags
Section titled “Distributor org has feature flags”New Medical Supplies Inc. should have feature flags propagated from parent org
SELECT ff.id as flag_id, ff.value, o.name as org_name FROM feature_flags ff JOIN organizations o ON o.id = ff.organization_id WHERE o.name = $1 ORDER BY ff.id| flag_id | value | org_name |
|---|---|---|
| billing | true | New Medical Supplies Inc. |
| home_screen_prototype | true | New Medical Supplies Inc. |
| inbox_checklist_items | true | New Medical Supplies Inc. |
| inbox_tickets | true | New Medical Supplies Inc. |
| inventory_snapshots | true | New Medical Supplies Inc. |
| order_requests | true | New Medical Supplies Inc. |
| org_type:distributor | true | New Medical Supplies Inc. |
| organization_representation | true | New Medical Supplies Inc. |
| sales_accounts | true | New Medical Supplies Inc. |
| workflow_visualization | true | New Medical Supplies Inc. |
manufacturer_can_create_distributors flag enabled
Section titled “manufacturer_can_create_distributors flag enabled”manufacturer_can_create_distributors feature flag should be enabled for ZuriMED
SELECT id, organization_id, value FROM feature_flags WHERE id = 'manufacturer_can_create_distributors' AND organization_id = $1| id | organization_id | value |
|---|---|---|
| manufacturer_can_create_distributors | a1b2c3d4-e5f6-7890-abcd-ef1234567890 | true |