Fund Recovery Guide
Your funds are secured by smart contracts on the blockchain — not by MyPact. This page explains how to access your funds directly, even if MyPact is unavailable.
1. Import your private key into a wallet
If you signed in with Google or email, you have an embedded wallet managed by Privy. To access it independently:
- Go to Settings → Security (this link jumps straight to the right section) and click “Back up your security key” to get your private key.
- Install MetaMask (browser extension or mobile app).
- In MetaMask, click your account icon → “Import account” → paste your private key.
- Your wallet is now accessible from MetaMask with full control.
If you already use an external wallet (MetaMask, Coinbase Wallet), you already have your keys. Skip this step.
2. Connect to the right network
MyPact operates on two networks. Check your agreement email to see which network yours is on.
| Network | Chain ID | RPC URL |
|---|---|---|
| Test mode (Sepolia) | 11155111 | https://ethereum-sepolia-rpc.publicnode.com |
In MetaMask: Settings → Networks → Add a network → enter the Chain ID and RPC URL above.
3. Find your contract on a block explorer
MyPact uses two types of contracts. Use the addresses below to interact with them directly on the block explorer.
| Contract | Network | Address |
|---|---|---|
| Escrow | Sepolia | 0x6D8DcCBBC4bf8a1f2D4c78199f72aA8da3B6915e |
| Terms | Sepolia | 0x584303260669138E80E931EF7C7D0F09980A3562 |
4. Interact with the contract
On the block explorer, go to the “Write Contract” (or “Write as Proxy”) tab and connect your wallet. You can call these functions using your agreement ID (found in your confirmation email):
Escrow contracts
approve(agreementId)— Add your approval. If yours is the last approval needed, this pays the payee in the same transactionapproveMilestone(agreementId, index)— Approve one milestone (the last approval it needs pays it)cancel(agreementId)— Cancel and refund the unpaid funds to the payer (if expired or allowed)refundPayer(agreementId)— Payee only: return the unpaid funds to the payerreleaseAfterTimeout(agreementId)— Invoices: pay the payee once the approval window after delivery has passedgetEscrow(agreementId)— View escrow details (Read tab)
Terms contracts
sign(agreementId)— Sign the agreementfinalize(agreementId)— Finalize after all signatures collectedgetAgreement(agreementId)— View agreement details (Read tab)
5. Download contract ABIs
For advanced users: download the contract ABIs to interact programmatically via ethers.js, viem, or any Ethereum library.
Need help?
If you need assistance recovering funds, email support@mypact.net with your wallet address and agreement ID. We'll guide you through the process.