Accounts
How Segundo uses Privy
Most people Segundo is for have never held a crypto wallet, and some have only an email address. Privy gives each of them a wallet behind an email sign-in, and lets Segundo send money to an email address before its owner has ever opened the app.
What Privy does in Segundo
Passkeys are the main way in (through Mera). Email through Privy is the second, and the only way to reach someone who isn't here yet.
An email code, and a wallet made for you
Type the code Privy emails you and you are in, with no password and nothing to install. Your wallet is created and secured by Privy; Segundo never sees its key.
Signing without pop-ups or gas
Clocking in, opening a tab or cashing out is a signature from that wallet. Segundo's relayer sends it to Monad and pays the gas, so you never need MON.
Money sent to an email address
Pay someone who has never heard of Segundo. Privy makes their wallet ahead of time, the AUSD lands in it, and it is waiting the first time they sign in.
Sending AUSD to an email address
- You type their email instead of a wallet address. Segundo checks it looks like a real address before anything else happens.
- Segundo asks Privy for that email's wallet. If the person already has a Privy account with Segundo, Privy returns its wallet. If not, Privy creates an account for that email now, with a wallet made in advance, and returns its address.
- The AUSD moves on Monad. You sign one transfer; the relayer submits it and pays the gas. It lands in about a second.
- They sign in with that email, and the money is there. Privy emails them a code, opens the account it made for them, and the wallet already holds what you sent. Nobody had to share a wallet address first.
Segundo's server doesn't store the email: it passes it to Privy at the moment you send, and lookups are rate limited so the feature can't be used to test lists of addresses.
Under the hood
- In the app
- Privy's React SDK: email login, the embedded Ethereum wallet (made on first sign-in if the person doesn't have one), and its provider for signing EIP-712 typed data, the forwarded requests and AUSD permits Segundo relays.
- On the server
- Privy's REST API, called from one route with the app secret: POST /v1/users/email/address to find a person, POST /v1/users with a pregenerated Ethereum wallet to create one, and POST /v1/users/{id}/wallets if an existing account has no wallet yet.
- Who holds the key
- Privy. Segundo's servers never receive it, and Segundo can't move money from a Privy wallet without its owner's signature.
- Without Privy
- The passkey-only site at mera.segundo.world doesn't load Privy at all: there, a Mera passkey is the whole account. Same passkey, same account as segundo.world.
Segundo runs on Monad testnet with test AUSD for now.