✨Works out of the box guarantee. If you face any issue at all, hit us up on Telegram and we will write the integration for you.
logoReclaim Protocol Docs

Troubleshooting & Monitoring

Learn how to handle errors, monitor verification status, and debug issues in Reclaim Protocol.

When integrating Reclaim Protocol, you have multiple tools at your disposal to monitor the status of detailed verifications and troubleshoot issues. This guide covers:

  1. Handling Cancellation & Errors: Receive immediate feedback in your application when a verification is cancelled (by actions such as the user choosing to verify in another way).
  2. Server-Side Analytics: Fetch detailed session logs from the Reclaim server for analysis.
  3. Client-Side Logs: Listen to real-time logs emitted by the SDKs on the user's device.
  4. Troubleshooting Mode: Manually enable verbose logging in the verify UI for support tickets.

Handling Cancellation & Errors

The easiest way to handle cancellation is to set up an cancel callback. This allows your application to react immediately when a user's verification session cancellations.

Read more about setting a cancellation callback here.

Other errors (such as network timeouts or internal exceptions) will not trigger this callback but can be found by fetching analytics events for the session.


Server-Side Analytics Events

Reclaim solutions (Web SDK, InApp SDK, etc.) emit analytics events to our servers. These are useful for:

  • Monitoring conversion rates.
  • Debugging issues that happened in the past.
  • Understanding why a specific session failed.

You can fetch these events using the Session ID.

Read the full Analytics Events Guide →


Client-Side Debugging

For real-time debugging, especially when using Mobile SDKs (React Native, Flutter, etc.), you can listen to logs directly on the device. This is not available on WebSDK or Reclaim extension.

InApp SDK Logs

InApp SDKs emit detailed events like PAGE_LOADING_STARTED, REQUEST_MATCHED, or PROOF_GENERATED. Use these to understand exactly what is happening on the user's device.

View Client-Side Log Event Types →

Enable Debug Logs (JS SDK)

When using the JS SDK, you can enable verbose console logging during initialization:

const proofRequest = await ReclaimProofRequest.init(APP_ID, APP_SECRET, PROVIDER_ID, {
  log: true, // Enable troubleshooting mode
});

Troubleshooting Mode

If a user is facing issues in the wild, you can ask them to specificually enable "Troubleshooting Mode" in the Verifier UI. This displays a debug overlay and captures additional diagnostics.

How to Enable Troubleshooting Mode →

This option isn't available when using WebSDK (aka portal.reclaimprotocol.org). In that case, you can use JS SDK to collect verbose logs.


Common Failure Reasons

If you are seeing generic failures, check our guide on common environmental issues like network stability, memory constraints, or outdated OS versions.

View Potential Failure Reasons →


Best Practices

Assume a Timeout

If your application backend does not receive a proof or a cancel callback within 10 minutes of the session start, you should assume the verification has timed out or was abandoned by the user.

On this page