{ "name": "VendorInvite", "type": "object", "properties": { "invite_code": { "type": "string", "description": "Unique invite code (e.g., INV-XXXX)" }, "company_name": { "type": "string", "description": "Vendor company name" }, "primary_contact_name": { "type": "string", "description": "Point of contact name" }, "primary_contact_email": { "type": "string", "format": "email", "description": "Point of contact email" }, "vendor_admin_fee": { "type": "number", "minimum": 0, "maximum": 100, "description": "Vendor admin fee percentage set by procurement" }, "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 } } } }, "invited_by": { "type": "string", "description": "Email of procurement admin who sent invite" }, "invite_status": { "type": "string", "enum": [ "pending", "accepted", "completed", "expired" ], "default": "pending", "description": "Status of the invite" }, "invite_sent_date": { "type": "string", "format": "date-time", "description": "When the invite was sent" }, "invite_accepted_date": { "type": "string", "format": "date-time", "description": "When vendor accepted/started onboarding" }, "vendor_id": { "type": "string", "description": "Vendor ID once they complete onboarding" }, "notes": { "type": "string", "description": "Internal notes about this invite" } }, "required": [ "company_name", "primary_contact_email", "vendor_admin_fee", "invited_by" ] }