Error Handling

Our APIs use a layered error model to provide clear, actionable feedback while keeping error handling consistent across all endpoints and services.

Errors are exposed at three levels of detail.


1. HTTP Status Codes

At the highest level, the API relies on standard HTTP status codes to describe the outcome of a request.

HTTP StatusMeaningDescription
200 OKSuccessThe request was successfully processed.
400 Bad RequestClient errorThe request is syntactically valid but contains invalid or inconsistent data.
401 UnauthorizedAuthentication errorAuthentication failed or is missing.
404 Not FoundResource errorThe requested resource does not exist or is not accessible.
500 Internal Server ErrorServer errorAn unexpected error occurred on the server side.

Note
Additional error details are only provided for 400 Bad Request responses.


2. Functional Error Codes (Level 2)

When a request fails with 400 Bad Request, the response body contains a functional error object describing the high-level cause of the failure.

Response Structure

{
  "code": "10000101",
  "message": "Validation error occurred",
  "errors": [
    {
      "field": "branch_external_reference",
      "actual_value": "999983",
      "code": "4004",
      "min_length": null,
      "max_length": null
    }
  ]
}

Fields Description

FieldTypeDescription
codestringInternal functional error code identifying the global error type.
messagestringHuman-readable description of the error.
errorsarrayList of detailed validation errors (Level 3).

The top-level code identifies the general failure category (for example validation, consistency, or business rules).


Internal Functional Error Codes

The following table describes the internal functional error codes returned at the top level of a 400 Bad Request response. These codes indicate the general category of the failure, but do not provide field-level validation details.

Internal CodeMessageDescription
10000101Wrong InputOne or more input values are invalid.
10000102Missing InputOne or more required input parameters are missing from the request.
10000103No HTTPSThe request was not sent over HTTPS. Only secure HTTPS requests are allowed.
10000104Invalid OperationThe requested operation is not allowed in the current context or resource state.
10000105Invalid Bank CredentialsThe provided bank credentials are invalid or rejected by the banking provider.
10000106ExpiredThe request references an expired resource, token, or context.
10000601Batch IssueAn error occurred during batch or asynchronous processing.
10001002Missing Email For SignerA signer does not have an email address, which is required to proceed.
10001003Entity Already ExistsThe entity being created already exists and cannot be created again.

⚠️ Important
These internal error codes only describe the global error category.
To identify which input is invalid and why, always rely on the code field inside the errors object, which provides detailed, field-level validation information.


3. Field-Level Validation Errors (Level 3)

The errors array provides fine-grained validation details when the failure is caused by incorrect input data.

Each object in the errors array refers to one specific input field.

Validation Error Object

FieldTypeDescription
fieldstringName of the input field that caused the error.
actual_valuestring / numberValue received by the API.
codestringValidation error code identifying the rule that was violated.
min_lengthnumber | nullMinimum accepted value (when applicable).
max_lengthnumber | nullMaximum accepted value (when applicable).

This structure allows API consumers to:

  • Identify which field is invalid
  • Understand why it is invalid
  • Know which constraints must be respected

Validation Error Codes

Validation error codes are standardized and reused across all APIs.
They describe the exact validation rule that failed.

CodeMeaning
4001Empty
4002Incorrect length
4003Invalid format
4004Incorrect value
4005Wrong email format
4006Greater than
4007Greater than or equal
4008Incorrect date
4009Passwords do not match
4010Incorrect password pattern
4011Smaller than
4012Smaller than or equal
4013Date must be in the future
4014Date must be in the past
4015Invalid credit amount
4016Value must be unique
4017National identification number does not match date of birth
4018Invalid APR rate
4019Missing required elements
4020Obsolete elements
4021Expired code
4022Code already requested
4023Too many codes requested for user