Incentiv uses a proprietary signing flow that lives inside the Incentiv Portal. Trying to reproduce that logic inside your dApp would be brittle, insecure, and would violate the user‑experience guidelines of the network. The Incentiv dApp SDK solves this by:
- Opening a secure pop‑up in the Incentiv Portal when you need the user to sign.
- Submitting the resulting UserOperation on your behalf.
- Returning the UserOperation hash so that you can track it afterwards.
- Providing a drop‑in
ethers.jsSignerso you can keep the rest of your code unchanged.
Features
- Zero private‑key handling in your site – users sign inside the Portal
IncentivSigner→ works anywhere anethers.Signeris expectedIncentivResolver→ low‑level helper if you don’t use ethers- Supports Staging, Testnet & Mainnet (or any custom Portal URL)
- Ships with TypeScript types
Installation
ethers v5.x only for now
Quick start
Browser‑only
IncentivResolver and IncentivSigner rely on window.open and postMessage, therefore they must run in a browser context (NodeJS & SSR are not supported).
API Reference
enum IncentivEnvironment
class IncentivResolver
class IncentivSigner extends ethers.Signer
signMessageandsignTransactionare intentionally unsupported – signing happens inside the Portal UI.