Skip to main content
Para provides non-custodial MPC wallets. Para signatures can use recovery bytes 0 and 1, while EVM smart account validation expects 27 and 28. Always adapt a Para viem account with wrapParaAccount.

Prerequisites

  • A Para project and API key
  • A React application
  • A backend that issues short-lived Rhinestone JWTs
1

Install the dependencies

2

Configure Para

Choose the Para environment that matches your project. The example uses Para’s beta environment. Configure the application name and branding in the Para developer portal.
3

Configure browser authentication

The Para client credential identifies your Para application. It does not replace Rhinestone authentication. Keep RHINESTONE_API_KEY on your server and give the browser short-lived JWTs:
See security for secure token issuance.
4

Wrap the Para account

Get the authenticated viem account and wallet ID from Para. Pass both to wrapParaAccount, then use the result as the ECDSA owner.
Do not pass the unwrapped Para account to Rhinestone. Its recovery byte can make an otherwise valid signature fail onchain.
For sponsored transactions, follow sponsorship setup. For the transaction lifecycle, continue to send a transaction. See the Para documentation for authentication and wallet recovery settings.