Validation
The validation API runs the complete pipeline: extracts structured data from the document, evaluates it against the rule set configured for your (document_type, country_code, agreement_code), optionally calls external validators (CRM lookup, CID validation, eligibility), and returns an APPROVED / REJECTED / ERROR verdict.
Always async. Typical processing time: 15-60 seconds. Result delivered via signed webhook.
When to use
| Scenario | Recommended approach |
|---|---|
| Your HIS already tags the document type | Call POST /v1/provider-validation-requests with the known document_type. Skips the classifier (cheaper, faster). |
| You don't know the document type | Call POST /v1/classification-requests with auto_validate: true. DVS classifies first, then validates. |
| You want classification only (no validation) | Call POST /v1/classification-requests without auto_validate. |
Access control
DVS enforces a default-deny matrix: you can only validate combinations of (document_type, country_code, agreement_code) that OSIGU has explicitly granted you. Use GET /v1/document-types to discover what your tenant is authorized to validate. See Document Types.
final_status values
| Status | Meaning | Your action |
|---|---|---|
APPROVED | All ERROR-severity rules passed. The document is valid. | Continue your billing/authorization flow. |
REJECTED | At least one ERROR-severity rule failed. The document does not meet payer requirements. | Inspect errors[] in the webhook payload and resolve with the medic/operator. |
ERROR | Technical failure (OCR couldn't extract, external validator down, etc.). Not a verdict on the document. | Retry through the admin path, or contact OSIGU if persistent. |
Cost breakdown
Validation costs are tracked across three layers — document extraction, external validator calls, and DVS internal overhead. See API Reference > Validation > Create for what's returned in the response.