Skip to main content
POST
/
v3
/
database-validation
/
curl -X POST "https://verification.didit.me/v3/database-validation/" \
  -H "x-api-key: YOUR_API_KEY" \
  -F "issuing_state=PAN" \
  -F "services=pan_cedula_sib_plus" \
  -F "vendor_data=user-1234" \
  -F "personal_number=SAMPLE-PER-12345" \
  -F "selfie=@./selfie.jpg"
{
  "request_id": "req_01H…",
  "status": "Approved",
  "issuing_state": "PAN",
  "match_type": "full_match",
  "validations": [
    {
      "outcome_code": "MATCH",
      "service_id": "pan_cedula_sib_plus",
      "service_name": "Panama - Cédula with biometric face-match (SIB Plus, elevated tier)",
      "source_data": {
        "date_of_birth": "1990-01-01",
        "expiration_date": "1990-01-01",
        "full_name": "John Doe",
        "gender": "M",
        "identification_number": "SAMPLE-ID-12345",
        "issue_date": "1990-01-01",
        "last_name": "Doe",
        "place_of_birth": "sample_value",
        "signature": "sample_value"
      },
      "validation": {
        "identification_number": "full_match"
      }
    }
  ]
}
Verifies Panamanian Cédula with biometric face-match — elevated-tier SIB Plus. Same data source as the standard SIB tier with stronger biometric thresholds and richer match metadata. Didit exposes this service through POST /v3/database-validation/ so you can verify the submitted data against the authoritative source and receive normalized match results.

Coverage

  • Coverage:
  • Country: Panama
  • Service ID: pan_cedula_sib_plus
  • Data domain: Identity
  • Category: NationalIDRegistry

Inputs

FieldRequiredExample
personal_numberYesSAMPLE-PER-12345
selfieYes@./selfie.jpg
vendor_dataNouser-1234
  • Required inputs: personal_number, selfie
  • Optional inputs: vendor_data
  • Consent: Not required
  • Workflow availability: Available in workflow
  • Coverage:
  • Price: $1.50 per successful query

Body parameters

issuing_state
string
default:"PAN"
required
ISO 3166-1 alpha-3 country code for this database service.Example: PAN
services
string
default:"pan_cedula_sib_plus"
required
Array containing this service ID. Pinning the service keeps the request scoped to this exact database.Example: pan_cedula_sib_plus
personal_number
string
default:"SAMPLE-PER-12345"
required
Country-specific personal identity number.Example: SAMPLE-PER-12345
selfie
file
required
Selfie image file to upload for biometric database validation. Accepted formats: JPEG, PNG, or WebP.Example: @./selfie.jpg
vendor_data
string
default:"user-1234"
Your stable user reference for this person, such as your internal user ID. Didit uses it to link standalone checks to the same end user and reduce duplicate-detection noise.Example: user-1234

Input rules & validation notes

  • Panamanian Cédula (min 5 characters)
  • personal_number must be 5-20 characters long.

How to call it

curl -X POST "https://verification.didit.me/v3/database-validation/" \
  -H "x-api-key: YOUR_API_KEY" \
  -F "issuing_state=PAN" \
  -F "services=pan_cedula_sib_plus" \
  -F "vendor_data=user-1234" \
  -F "personal_number=SAMPLE-PER-12345" \
  -F "selfie=@./selfie.jpg"
Every successful call returns HTTP 200. The outcome_code field tells you what actually happened — distinguishing, for example, a real biometric mismatch (BIOMETRIC_NO_MATCH) from a selfie that could not be read (BIOMETRIC_IMAGE_UNUSABLE). The status shown is the default feature status; your configured Partial Match / No Match actions can override it.

Returned data

The exact fields surfaced in source_data depend on what the registry returns. The generated example for pan_cedula_sib_plus currently documents this normalized shape:
  • date_of_birth
  • expiration_date
  • full_name
  • gender
  • identification_number
  • issue_date
  • last_name
  • place_of_birth
  • signature

Pricing & SLAs

Panama - Cédula with biometric face-match (SIB Plus, elevated tier) queries are billed only when Didit receives a conclusive result from the validation source.
  • Per-call price: $1.50 USD.
  • Billing: per successful query. You are not charged when the registry is unreachable, when required fields are missing, or when the request is rejected before reaching the source.
  • Latency: typical p95 < 2 s.
  • Availability: 99.9% per quarter on Didit’s side; downstream source availability varies by country and dataset.

Continue reading