Skip to main content
These are the errors the OTPless Headless SDK reports on the client via its callbacks during the SNA-only flow. They are surfaced in the SDK response — on FAILED (initialization), on a non-200 INITIATE, or on AUTH_TERMINATED.
These are client/SDK errors. For the server-side verification outcome (SP* codes in auths[].error) and gateway request errors, see API Error Codes. The SDK callback is not the source of truth — always confirm the final result with the Status Check API.

Error response structure

  • responseType — the callback the error arrived on. Errors are carried only on FAILED, INITIATE, and AUTH_TERMINATED. (SDK_READY and ONETAP are success callbacks and never carry an error.)
  • statusCode — the HTTP status or an OTPless-curated status code.
  • errorCode — the OTPless error code (see tables below).
  • errorMessage — a human-readable description of the error.

AUTH_TERMINATED errors

In the SNA-only flow, a terminal failure is delivered on the AUTH_TERMINATED callback. Common to Android and iOS.
7160 first surfaces on an INITIATE callback (with the error code) and is then followed by AUTH_TERMINATED; 7161 is delivered directly on AUTH_TERMINATED. In an SNA-only configuration there is no fallback channel — treat both as terminal and rely on the Status Check API result.

SNA verification errors

Outcomes from carrier verification (the silent-auth status). In an SNA-only flow these surface on the INITIATE (with error code) and AUTH_TERMINATED callbacks. Common to both platforms unless noted.
A timeout or exhausted poll ends the flow on AUTH_TERMINATED (7161).

Initialization errors

Reported on the FAILED callback when the SDK cannot initialize. Common to both platforms.

Request & configuration errors

Surfaced on the INITIATE callback when statusCode != 200. Common to both platforms unless noted.

Transaction state errors

Surfaced on the INITIATE callback when the request or token has expired. Call start() again with a fresh requestId.

Rate-limit errors

Surfaced on the INITIATE callback with statusCode 429. Common to both platforms.

Network connectivity errors (iOS)

iOS surfaces granular network errors via the INITIATE response. On Android, a network failure during silent auth is not reported with a distinct code in an SNA-only flow — it ends the flow on AUTH_TERMINATED (7160 / 7161).