217 lines
5.2 KiB
JSON
217 lines
5.2 KiB
JSON
{
|
|
"name": "Vendor",
|
|
"type": "object",
|
|
"properties": {
|
|
"vendor_number": {
|
|
"type": "string",
|
|
"description": "Vendor Number format VN-#### (auto-generated)",
|
|
"pattern": "^VN-[0-9]{4}$"
|
|
},
|
|
"legal_name": {
|
|
"type": "string",
|
|
"description": "Legal business name"
|
|
},
|
|
"doing_business_as": {
|
|
"type": "string",
|
|
"description": "DBA / Trade name"
|
|
},
|
|
"region": {
|
|
"type": "string",
|
|
"enum": [
|
|
"National",
|
|
"Bay Area",
|
|
"Southern California",
|
|
"Northern California",
|
|
"West",
|
|
"East",
|
|
"Midwest",
|
|
"South"
|
|
],
|
|
"description": "Geographic region vendor operates in"
|
|
},
|
|
"state": {
|
|
"type": "string",
|
|
"description": "Primary state (or 'Multiple' for multi-state)"
|
|
},
|
|
"city": {
|
|
"type": "string",
|
|
"description": "Primary city"
|
|
},
|
|
"service_specialty": {
|
|
"type": "string",
|
|
"description": "Service specialty (e.g., Event Staffing, Full Service Events, On-Demand Gig Platform)"
|
|
},
|
|
"workforce_count": {
|
|
"type": "number",
|
|
"description": "Total workforce/staff count available"
|
|
},
|
|
"platform_type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"Full Platform",
|
|
"Building platform (KROW)",
|
|
"Partial Tech",
|
|
"Traditional"
|
|
],
|
|
"description": "Technology/platform integration level"
|
|
},
|
|
"tax_id": {
|
|
"type": "string",
|
|
"description": "Federal Tax ID / EIN"
|
|
},
|
|
"business_type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"Corporation",
|
|
"LLC",
|
|
"Partnership",
|
|
"Sole Proprietorship"
|
|
],
|
|
"description": "Business entity type"
|
|
},
|
|
"primary_contact_name": {
|
|
"type": "string",
|
|
"description": "Primary contact person"
|
|
},
|
|
"primary_contact_email": {
|
|
"type": "string",
|
|
"format": "email",
|
|
"description": "Primary contact email"
|
|
},
|
|
"primary_contact_phone": {
|
|
"type": "string",
|
|
"description": "Primary contact phone"
|
|
},
|
|
"billing_address": {
|
|
"type": "string",
|
|
"description": "Billing address"
|
|
},
|
|
"service_address": {
|
|
"type": "string",
|
|
"description": "Service/office address"
|
|
},
|
|
"coverage_regions": {
|
|
"type": "array",
|
|
"description": "Geographic regions vendor can service",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"eligible_roles": {
|
|
"type": "array",
|
|
"description": "Roles/positions vendor can provide",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"insurance_certificate": {
|
|
"type": "string",
|
|
"description": "URL to insurance certificate"
|
|
},
|
|
"insurance_expiry": {
|
|
"type": "string",
|
|
"format": "date",
|
|
"description": "Insurance expiration date"
|
|
},
|
|
"w9_document": {
|
|
"type": "string",
|
|
"description": "URL to W9 form"
|
|
},
|
|
"coi_document": {
|
|
"type": "string",
|
|
"description": "URL to Certificate of Insurance"
|
|
},
|
|
"compliance_package_id": {
|
|
"type": "string",
|
|
"description": "Reference to compliance package"
|
|
},
|
|
"performance_scorecard_id": {
|
|
"type": "string",
|
|
"description": "Reference to performance scorecard"
|
|
},
|
|
"performance_requirements": {
|
|
"type": "array",
|
|
"description": "Customized KPIs and service standards the vendor must meet",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"metric": {
|
|
"type": "string"
|
|
},
|
|
"target": {
|
|
"type": "string"
|
|
},
|
|
"operator": {
|
|
"type": "string"
|
|
},
|
|
"unit": {
|
|
"type": "string"
|
|
},
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"default": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"compliance_requirements": {
|
|
"type": "array",
|
|
"description": "Customized compliance and attestation requirements the vendor must acknowledge",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"type": "string"
|
|
},
|
|
"required": {
|
|
"type": "boolean",
|
|
"default": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"vendor_fee_percentage": {
|
|
"type": "number",
|
|
"minimum": 0,
|
|
"maximum": 100,
|
|
"description": "Vendor admin fee percentage set by procurement"
|
|
},
|
|
"approval_status": {
|
|
"type": "string",
|
|
"enum": [
|
|
"pending",
|
|
"approved",
|
|
"suspended",
|
|
"terminated"
|
|
],
|
|
"default": "pending",
|
|
"description": "Vendor approval status"
|
|
},
|
|
"approved_date": {
|
|
"type": "string",
|
|
"format": "date",
|
|
"description": "Date vendor was approved"
|
|
},
|
|
"approved_by": {
|
|
"type": "string",
|
|
"description": "User who approved vendor"
|
|
},
|
|
"is_active": {
|
|
"type": "boolean",
|
|
"default": true,
|
|
"description": "Is vendor currently active"
|
|
},
|
|
"notes": {
|
|
"type": "string",
|
|
"description": "Internal notes about vendor"
|
|
}
|
|
},
|
|
"required": [
|
|
"legal_name",
|
|
"vendor_number",
|
|
"primary_contact_email"
|
|
]
|
|
} |