Skip to main content
Para provides session-based authentication that’s perfect for server-side transaction execution. This guide shows you how to combine Para with Biconomy’s MEE using the AbstractJS SDK for gasless, cross-chain transactions.

What We’re Building

By the end of this tutorial, you’ll have a backend service that can:
  1. Use Para sessions for secure authentication
  2. Execute batched transactions without holding ETH
  3. Handle operations across multiple chains
How it works: Users authenticate with Para on the frontend and receive a session token. Your backend uses this token to sign transactions on the user’s behalf, routing them through Biconomy’s MEE for gas abstraction.

Step 1: Install Dependencies

What these packages do:
  • @getpara/server-sdk — Para’s server SDK for session management
  • @getpara/viem-v2-integration — Adapter to use Para with viem
  • @biconomy/abstractjs — Biconomy’s SDK for smart accounts and MEE
  • viem — Ethereum library for building transactions

Step 2: Set Up Environment Variables

Create a .env file:
Keep your API keys secure. Never commit them to version control.

Step 3: Create the Request Handler

Set up an Express handler that receives the user’s session:

Step 4: Create Para Account

Create a viem-compatible account from the Para session:
What’s happening here? Para already has the user’s key material from their session. The adapter lets viem use Para for signing operations.

Step 5: Set Up Custom Signing

Para requires custom signing methods for EIP-7702:
Here’s a basic implementation of the signing utilities:

Step 6: Create Wallet Client

Create a wallet client for signing transactions:

Step 7: Sign EIP-7702 Authorization

Sign the authorization that upgrades the EOA to a smart account:
What is chainId: 0? Setting chainId to 0 means the authorization works on any chain. This is useful for cross-chain applications where you want one authorization to enable transactions everywhere.

Step 8: Create the Smart Account

Create a Nexus account using the EOA address for EIP-7702 mode:
Important: Setting accountAddress to the EOA address is required for EIP-7702 mode. Without this, the SDK will try to compute a different smart account address.

Step 9: Create MEE Client and Execute

Create the MEE client and execute your transaction:

Step 10: Wait for Confirmation


Complete Example

Here’s a full Express.js handler:

Gas Abstraction Options

Pay with ERC-20 Token

Configure sponsorship in your Biconomy dashboard to cover all gas costs for users.

Cross-Chain Execution

Add multiple chains and execute across them:

Key Takeaways

  1. Para provides sessions — Users authenticate once, then your backend can sign on their behalf
  2. EIP-7702 adds smart features — The user’s address gains smart account capabilities
  3. MEE handles execution — Gas abstraction and cross-chain routing are automatic
  4. Server-side control — Your backend manages transaction flow securely

Next Steps