{ "name": "CompliancePackage", "type": "object", "properties": { "compliance_number": { "type": "string", "description": "Compliance Package Number format CP-#### (auto-generated)", "pattern": "^CP-[0-9]{4}$" }, "entity_type": { "type": "string", "enum": [ "Vendor", "Workforce", "Partner" ], "description": "Type of entity this compliance package belongs to" }, "entity_id": { "type": "string", "description": "ID of the vendor/worker/partner" }, "entity_name": { "type": "string", "description": "Name of entity" }, "package_type": { "type": "string", "enum": [ "Vendor Onboarding", "Worker Onboarding", "Annual Review", "Audit" ], "description": "Type of compliance package" }, "required_documents": { "type": "array", "description": "Required document checklist", "items": { "type": "object", "properties": { "document_name": { "type": "string" }, "document_type": { "type": "string", "enum": [ "W9", "COI", "W2", "I9", "Background Check", "Drug Test", "Certification", "License", "Other" ] }, "is_required": { "type": "boolean" }, "status": { "type": "string", "enum": [ "Not Started", "Pending", "Submitted", "Approved", "Rejected", "Expired" ] }, "document_url": { "type": "string" }, "submitted_date": { "type": "string", "format": "date" }, "approved_date": { "type": "string", "format": "date" }, "expiry_date": { "type": "string", "format": "date" }, "reviewer": { "type": "string" }, "rejection_reason": { "type": "string" } } } }, "overall_status": { "type": "string", "enum": [ "Not Started", "In Progress", "Pending Review", "Approved", "Rejected", "Expired" ], "default": "Not Started", "description": "Overall package status" }, "completion_percentage": { "type": "number", "minimum": 0, "maximum": 100, "description": "Percentage of required documents completed" }, "audit_trail": { "type": "array", "description": "Audit trail of changes", "items": { "type": "object", "properties": { "timestamp": { "type": "string", "format": "date-time" }, "action": { "type": "string" }, "performed_by": { "type": "string" }, "details": { "type": "string" } } } }, "next_review_date": { "type": "string", "format": "date", "description": "Next scheduled review date" }, "compliance_officer": { "type": "string", "description": "Assigned compliance officer" }, "notes": { "type": "string", "description": "Compliance notes" } }, "required": [ "entity_type", "entity_id", "package_type" ] }