> For the complete documentation index, see [llms.txt](https://docs.lumia.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.lumia.org/build-on-lumia/account-abstraction/connect-wallets-with-particle-connect.md).

# Connect wallets with Particle Connect

You want users to connect a smart-account wallet (social login, embedded wallet, or a standard EOA wallet) to your app on Lumia through Particle Connect.

**Who this is for:** developers adding wallet connection to a Lumia app. **Prerequisites:** [Account Abstraction & Intents](https://app.gitbook.com/s/chmhPiVNAafGw48c4oU2/ecosystem/lumia/architecture/account-abstraction-and-intents) (concept: read this first for what a smart account is and why you'd want one; this page doesn't re-explain it); [Networks & Endpoints](https://app.gitbook.com/s/chmhPiVNAafGw48c4oU2/reference/networks-and-endpoints).

### About this integration

Particle Connect is Particle Network's third-party wallet and account-abstraction SDK (see [`/reference/sdks`](https://app.gitbook.com/s/chmhPiVNAafGw48c4oU2/reference/sdks)). It is a distinct product from Lumia's own internal account-abstraction work.

### Steps

{% stepper %}
{% step %}
**Install Particle Network's Connect SDK**

For your framework. Consult Particle Network's own current published docs for the exact package name and version, since that's their product, not Lumia's.
{% endstep %}

{% step %}
**Register a project with Particle Network**

This gives you a project ID and client key. You create this account directly with Particle Network, outside Lumia's own systems.
{% endstep %}

{% step %}
**Initialize the SDK's provider/connect-kit component**

With your project credentials and Lumia's network config:

* **Chain ID**: use the confirmed mainnet or Beam testnet chain ID from [`/reference/networks`](https://app.gitbook.com/s/chmhPiVNAafGw48c4oU2/reference/networks-and-endpoints); never substitute the retired chain ID `1952959480`.
* **RPC URL**: from [`/reference/networks`](https://app.gitbook.com/s/chmhPiVNAafGw48c4oU2/reference/networks-and-endpoints) for the network you're targeting.
  {% endstep %}

{% step %}
**Configure which wallet connectors you want available**

Social login, embedded/smart wallet, injected EOA wallets.
{% endstep %}

{% step %}
**Render the SDK's connect button/modal**

Read the connected address once a user completes the flow.
{% endstep %}
{% endstepper %}

### Verify it worked

After connecting, the SDK should return an address. Confirm that the relevant explorer (`explorer.lumia.org` or `beam-explorer.lumia.org`; see [`/reference/networks`](https://app.gitbook.com/s/chmhPiVNAafGw48c4oU2/reference/networks-and-endpoints)) shows activity matching what you expect, and that a test transaction sent from the connected account lands on the network you configured, not a different chain ID.

### Troubleshooting

<details>

<summary>Connect modal opens but the resulting address is on the wrong chain</summary>

Double-check the chain ID passed at initialization against [`/reference/networks`](https://app.gitbook.com/s/chmhPiVNAafGw48c4oU2/reference/networks-and-endpoints); a copy-pasted example from another chain's Particle Connect integration is the most common cause.

</details>

<details>

<summary>No connectors appear in the modal</summary>

The connector list is a project-level configuration in your Particle Network project dashboard, not something set purely client-side.

</details>
