How it works
- Each wallet can have multiple additional signers (authorization keys or key quorums)
- Each signer can have an override policy that defines what policies that signer is subject to
- When a signer submits a transaction, Privy evaluates only that signer’s override policy — not the policies of other signers
- If the transaction satisfies the signer’s policy, Privy signs it. Otherwise, Privy denies the request
Setup
At a high level:Create policies
Define a policy for each access level (e.g., a restrictive policy and a permissive policy).
Create authorization keys
Create an authorization key (or key quorum) for each signer that needs access to the wallet.
1. Create policies
Define a policy for each signer. In this example, the restricted signer can only send small USDC transfers, while the full-access signer can send transactions to any address. Save theid from each policy response. These are needed when adding signers to the wallet.
2. Create authorization keys
Create a separate authorization key for each signer. Each key corresponds to a different party or service that needs wallet access. Store each private key securely (e.g., in a secrets manager). In the examples below, these are referenced asrestrictedSignerPrivateKey and fullAccessSignerPrivateKey.

