Polygon Mainnet Network
How to use, and guidance

USDC Savings Tool on Polygon Network

A secure, trustless USDC time-lock on the Polygon network — no one can withdraw before the set date, even if you have a Time Machine.

A single-file HTML web app that lets you lock any amount of USDC inside a smart contract on Polygon until a date and time you choose — no server, no middleman. Everything runs directly in your browser and interacts with the smart contract via the ethers.js library.


Why this tool?

  • Real financial discipline — once locked, your funds can't move before the deadline. No "just this once" withdrawals.
  • No middleman, no third party — the smart contract is the only judge; no team or company controls your funds.
  • Works anywhere — a single HTML file that opens in any browser, no install, no account.
  • Clean, responsive UI — light and dark mode support.
  • Full transparency — every transaction is on-chain and verifiable on Polygonscan.

How it works

  • Create a lock — Set the amount, the beneficiary (yourself or another address), and the release date & time. The app deploys a dedicated lock contract on Polygon.
  • Approve, then deposit — Before locking, the contract needs approval to move your USDC (a separate Approve transaction), followed by the Lock transaction itself — each costs a tiny network fee (~$0.001).
  • Wait for the unlock date — The Monitor tab shows the lock's status, amount, beneficiary, and a countdown to the release date & time.
  • Top up anytime — You can add more USDC to the same lock at any point before release, without creating a new one.
  • Withdraw — Once the deadline arrives, the withdraw button unlocks and the beneficiary can claim the full balance straight to their wallet.

The Smart Contract

FieldValue
NameUSDCTimeLock
MainnetPolygon Mainnet
TestnetPolygon Amoy Testnet
Core functionslock() · topUp() · withdraw() · getLock()
EventsLocked · Withdrawn · ToppedUp
Gas tokenPOL
Every lock you create deploys its own unique contract address — always save a copy of it. It's your only key to tracking or withdrawing from that lock later.

Important Security Notes

  • The storage address is a smart contract, not a regular wallet. Never send USDC to it as a plain transfer from a wallet or exchange — any balance sent that way cannot be recovered. Always use the "Top Up" tab inside the app itself.
  • Save the contract address as soon as you create a lock. If you lose it, search your wallet's transaction history for the address that created it, under contract, lock, or call.
  • The address (creator or beneficiary) needs a small amount of POL to cover network fees when creating or withdrawing from a lock.
  • The app supports logging in via a Seed Phrase or a Private Key directly — both are processed entirely in your browser and never sent to any server.

Tech Stack

  • HTML / CSS / JavaScript — a single file, no build step, no installed dependencies.
  • ethers.js — for interacting with the network and the smart contract.
  • Polygon Mainnet / Amoy Testnet — via multiple RPC providers with automatic fallback.

Quick Start

  • Open index.html in any modern browser.
  • Choose a network: Mainnet for real use, or Testnet to try it safely first.
  • From the Deposit tab, create your first lock with a small amount to get comfortable with the flow.
  • Track your lock from the Monitor tab until the release date.

Disclaimer

This tool interacts directly with a smart contract on a public network (Polygon). No party can reverse a transaction or recover funds sent by mistake. Use it at your own risk, and always start with small amounts on the testnet before using mainnet.

USDC Vault

Lock a USDC amount in a smart contract on Polygon Network until a set date. No one can withdraw before the period ends — unless you have a Time Machine.
Fully open source on GitHub.

1
Lock
Details
2
Approve
3
Deposit
Lock
Done
Wallet Details *
POL 0.0000
USDC 0.0000
Private Key and Seed Phrase are both processed entirely in your browser and never sent to any server.
⚙️ Lock Settings

➕ Add to an Existing Lock

Add balance to an existing lock without creating a new one.
The amount is added immediately and withdrawn together with the original balance at release.

🔑 Wallet
POL 0.0000
USDC 0.0000
🔍 Identify the Lock
🔓 Withdraw USDC After the Lock Ends
Withdrawal is only possible after the set period ends.
Only the beneficiary can withdraw the funds.

Monitor Lock Contracts

Check the status of any time-lock without needing a private key — read directly from the blockchain.

🔍 Storage Address Details
X Telegram
Note: you need a small amount of Polygon (POL) to pay network fees when creating a storage address or withdrawing from it.
⚠️ Warning: the storage address is a smart contract — do not send USDC to it directly as a normal transfer from a wallet or exchange. Any balance sent that way cannot be recovered. To add balance, always use the Top Up tab in this tool.
⚠️ Important: once you create a storage address, copy it somewhere safe. If you forget it, search for it in the transaction history of the wallet that created it, under the name: contract call or lock.
* For better security, use a separate wallet to create this storage address, with a different beneficiary.