> For the complete documentation index, see [llms.txt](https://docs.toolkit.equs.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.toolkit.equs.ai/standards/wallets/equs-wallet.md).

# EQUS Wallet (mobile)

The EQUS Wallet app for iOS and Android, where the Holder's keys and credentials never leave their phone.

The **EQUS Wallet** (also called the **Mobile Wallet**) is our app for iOS and Android. It is **non-custodial**: the Holder's keys and credentials stay on their own phone, and the platform never holds a copy. It's the default wallet for your Holders. The custodial [Web Wallet](/standards/wallets/web-wallet.md) is available on request.

### Get the app 📲

The app is currently distributed through **TestFlight** on iOS and **Google Play closed testing** on Android. You'll find both links in the Operator Portal, on the **Instructions** page. See [Registration](/standards/onboarding/registration.md) for getting access to the portal.

<figure><img src="https://701364325-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FFaucIkpW1i4WOAQC06fj%2Fuploads%2FV5HpKv4QlresmdnyQYLP%2Fimage.png?alt=media&amp;token=e5486c7f-235e-4bce-8d43-1974932d9cf9" alt=""><figcaption></figcaption></figure>

### Keys stay on the device 🔐

* **Keys are generated on the phone and never leave it.** Where the phone supports it, they're hardware-bound: Secure Enclave on iOS, StrongBox on Android.
* **The wallet is unlocked with a PIN or biometrics**, which the Holder sets up when they first open the app.
* **The platform never holds a copy of a credential.** If a Holder loses their phone, their credentials are gone and have to be reissued.

For the full picture of what stays on the device and what the platform stores, see [Personal Data and Encryption](/standards/security-and-privacy/personal-data-and-encryption.md).

### Signing in with your IdP 🔑

Once you've connected your identity provider, Holders sign in to the app with the account they already have with you. Signing in is what makes a Holder one of your users: it lets [auto-issued](/standards/issuance/flow-1/auto-issuance.md) Offers reach their wallet, and lets the wallet fetch the `tx_code` itself on [`pull` delivery](/standards/issuance/flow-1/trigger-by-user-for-equs-wallet-pull-tx_code-delivery.md). See [Bring Your Own IdP](/standards/onboarding/bring-your-own-idp.md).

### What Holders can do 🙌

#### Receive credentials

* **Scan a QR code or open a link** to pick up an Offer.
* **Come back to it later.** Offers for a signed-in Holder wait in **Pending Offers** until they're accepted, for up to 5 days.
* **Receive Offers without asking.** Auto-issued Offers arrive in the wallet by themselves, and the Holder also gets an email with a link and a QR code to open them.
* **Accept with or without a code.** On `pull` delivery the wallet fetches the `tx_code` itself, so there is nothing to type. Otherwise the Holder types the code they received, which lasts 3 minutes and can be regenerated if it lapses.

#### Share credentials

* **Scan a presentation request**, or answer it on the same phone when the browser passes the request straight to the wallet (the Digital Credentials API). When the request was scanned from another screen, the phone may show a one-time code for the Holder to type back into your page.
* **See what's being asked for, and share only that.** The wallet discloses just the claims the request asks for, and nothing is sent until the Holder approves.

See [Choose a Flow](/standards/presentation/choose-a-flow.md) for how Presentation reaches the wallet.

#### Approve delegations and AP2 mandates

When the Holder is asked to let another party act on a credential, such as an AI agent making a purchase within limits, the wallet shows what's being authorized in its usual consent screen and signs it when they approve. See [Delegation](/standards/agentic/delegation.md) and [Agentic Payments (AP2)](/standards/agentic/ap2.md).

### Next steps 🚀

<table data-view="cards"><thead><tr><th></th><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><h3><i class="fa-user-lock" style="color:$primary;">:user-lock:</i></h3></td><td><strong>Bring Your Own IdP</strong></td><td>Let Holders sign in with the account they already have with you.</td><td><a href="/standards/onboarding/bring-your-own-idp.md">Bring Your Own IdP</a></td></tr><tr><td><h3><i class="fa-globe" style="color:$primary;">:globe:</i></h3></td><td><strong>Web Wallet</strong></td><td>The custodial alternative, in the browser.</td><td><a href="/standards/wallets/web-wallet.md">Web Wallet</a></td></tr><tr><td><h3><i class="fa-signs-post" style="color:$primary;">:signs-post:</i></h3></td><td><strong>Choose an Issuance flow</strong></td><td>Pick how credentials reach the Holder's wallet.</td><td><a href="/standards/issuance/choose-a-flow.md">Choose a Flow</a></td></tr></tbody></table>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.toolkit.equs.ai/standards/wallets/equs-wallet.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
