payslipPayslip
Payslip from any country: employer, employee, period, gross pay, deductions and net pay.
- Category
- Employment
- Country
- International
- Extracted fields
- 12 fields
- Cost
- 1 credit
payslipspecimen- Employer name
- Employer tax id
- Employee name
- Employee id
- Social security number
- Period start
- Period end
- Pay date
- Gross pay
What it checks
- Holder. Name, number or date of birth match what you expect.
- Recency. Issued less than N days ago.
Extracted fields
- Employer name
employer_name - Employer tax id
employer_tax_id - Employee name
employee_name - Employee id
employee_id - Social security number
social_security_number - Period start
period_start - Period end
period_end - Pay date
pay_date - Gross pay
gross_pay - Total deductions
total_deductions - Net pay
net_pay - Currency
currency
Sample request
curl https://api.constaia.com/v1/analyze \
-H "Authorization: Bearer $CONSTAIA_API_KEY" \
-F "file=@document.pdf" \
-F 'options={
"expect": "payslip",
"checks": {
"max_age_days": 90,
"holder": {
"full_name": "Carmen Especimen Ruiz"
}
},
"storage": "none"
}'Sample response
Fictitious data. Shortened response.
200 OK · application/json
{
"id": "an_01J9Z3K8QW4T6Y2B7N5M1R0PXC",
"object": "analysis",
"status": "completed",
"livemode": false,
"document": {
"type": "payslip",
"label": "Payslip",
"confidence": 0.97
},
"verdict": {
"expected": [
"payslip"
],
"match": true,
"status": "valid",
"reasons": [
{
"code": "type_match",
"severity": "info",
"message": "The document is: Payslip."
}
]
},
"fields": {
"employer_name": {
"value": "ESPECIMEN",
"confidence": 0.99,
"validated": true
},
"employer_tax_id": {
"value": "ESPECIMEN",
"confidence": 0.98,
"validated": null
},
"employee_name": {
"value": "ESPECIMEN",
"confidence": 0.97,
"validated": null
},
"employee_id": {
"value": "ESPECIMEN",
"confidence": 0.96,
"validated": null
},
"social_security_number": {
"value": "ESPECIMEN",
"confidence": 0.99,
"validated": null
},
"period_start": {
"value": "2026-09-01",
"confidence": 0.98,
"validated": null
},
"period_end": {
"value": "2026-09-01",
"confidence": 0.97,
"validated": null
},
"pay_date": {
"value": "2026-09-01",
"confidence": 0.96,
"validated": null
},
"gross_pay": {
"value": 100,
"confidence": 0.99,
"validated": null
},
"total_deductions": {
"value": 100,
"confidence": 0.98,
"validated": null
},
"net_pay": {
"value": 100,
"confidence": 0.97,
"validated": null
},
"currency": {
"value": "ESPECIMEN",
"confidence": 0.96,
"validated": null
}
},
"checks": [],
"warnings": [],
"storage": {
"mode": "none",
"file_deleted_at": "2026-09-29T10:00:02Z",
"expires_at": null
},
"usage": {
"credits": 1,
"pages": 1
}
}FAQ
Does Constaia prove the document is authentic?
No. It checks the type, data consistency and your rules, and flags signals such as a possible edit or a screen photo. That does not prove authenticity.
Is a copy of the document kept?
No, unless you ask for it. With storage "none" (the default) the file is deleted when the analysis ends.
Other documents
And for the record…
Create your account, copy the test key and validate your first document in five minutes.