Skip to main content
Sandbox payloads for the Stateless NDRP endpoint.
When your account is in sandbox mode, these payloads return the outcomes shown below. Any other valid payload is answered as NDRP finding no records — HTTP 200 with verificationStatus set to VERIFIED. Values are case-sensitive. transactionId and createdAt are generated per request, and metadata is echoed back from your request. See Sandbox introduction for the full matching rules.

Verified

NDRP returned no records for the name.
Request
Response — HTTP 200
Request
Response — HTTP 200
With no records returned, dateOfBirth has nothing to compare against and does not change the outcome.
Request
Response — HTTP 200
This name matches no documented scenario, so it is answered as NDRP finding no records. Fire it once to confirm that an unknown name never reaches the live NDRP source.

Review needed

NDRP returned at least one record for the name, but no record’s birth date matches dateOfBirth. A person with the same name may not be the same person, so the result is sent for manual review. This is the default when restrictedMatchAction is omitted or set to manual.
Request
Response — HTTP 200
NDRP returns Unavailable when it has no photo or birth date. The response shows these as null.
Request
Response — HTTP 200

Rejected

A rejection is a completed verification, not an error: success is true and HTTP status is 200. In live mode a rejection is billed.
Request
Response — HTTP 200
dateOfBirth exactly matches the returned record’s birth date, so the record is taken to be this person.
Request
Response — HTTP 200
One matching record is enough to reject.
Request
Response — HTTP 200
The birth date does not match, which would normally return REVIEW_NEEDED. restrictedMatchAction set to rejected rejects any name match instead.

Validation failures

All validation failures return HTTP 400 with code set to VALIDATION_FAILED and the same message; only errors differs. Validation runs before any fixture matching, so these behave identically in sandbox and live. transactionId is null and no transaction row is written.
Request
Response — HTTP 400
fullName must be between 2 and 255 characters.
Request
Response — HTTP 400
Request
Response — HTTP 400
restrictedMatchAction accepts manual or rejected.
Request
Response — HTTP 400
trustFlowId and trustValidationId are prohibited on stateless endpoints. Sending either is a validation failure, not a silently ignored field.

Source unavailable

Request
Response — HTTP 500
There is no data key at all. The envelope treats code and data as mutually exclusive, so a coded failure drops data rather than emitting an empty object. Branch on code, not on the presence of data.
Request
Response — HTTP 500

Account-level responses

Two further responses are not specific to this endpoint. A missing or invalid Authorization header returns HTTP 401, and an account without the philippines_ndrp plan returns HTTP 403 — both enforced in sandbox exactly as in live. See Sandbox introduction for their envelopes.