Loading...
Loading...
Interact with QR Coin auctions on Base. Use when the user wants to participate in qrcoin.fun QR code auctions — check auction status, view current bids, create new bids, or contribute to existing bids. QR Coin lets you bid to display URLs on QR codes; the highest bidder's URL gets encoded.
npx skill4agent add bankrbot/openclaw-skills qrcoin| Contract | Address |
|---|---|
| QR Auction | |
| USDC | |
Note: The examples below use(public RPC). You can substitute your own RPC endpoint if preferred.https://mainnet.base.org
curl -s -X POST https://mainnet.base.org \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_call","params":[{"to":"0x7309779122069EFa06ef71a45AE0DB55A259A176","data":"0x7d9f6db5"},"latest"],"id":1}' \
| jq -r '.result' | xargs printf "%d\n"# First get the current token ID, then use it here
TOKEN_ID=329 # Replace with result from currentTokenId()
TOKEN_ID_HEX=$(printf '%064x' $TOKEN_ID)
curl -s -X POST https://mainnet.base.org \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_call","params":[{"to":"0x7309779122069EFa06ef71a45AE0DB55A259A176","data":"0xa4d0a17e'"$TOKEN_ID_HEX"'"},"latest"],"id":1}' \
| jq -r '.result' | xargs printf "%d\n"# Create bid reserve (~11.11 USDC)
curl -s -X POST https://mainnet.base.org \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_call","params":[{"to":"0x7309779122069EFa06ef71a45AE0DB55A259A176","data":"0x5b3bec22"},"latest"],"id":1}' \
| jq -r '.result' | xargs printf "%d\n" | awk '{print $1/1000000 " USDC"}'
# Contribute reserve (~1.00 USDC)
curl -s -X POST https://mainnet.base.org \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_call","params":[{"to":"0x7309779122069EFa06ef71a45AE0DB55A259A176","data":"0xda5a5cf3"},"latest"],"id":1}' \
| jq -r '.result' | xargs printf "%d\n" | awk '{print $1/1000000 " USDC"}'Approve 50 USDC to 0x7309779122069EFa06ef71a45AE0DB55A259A176 on BasecreateBid(uint256 tokenId, string url, string name)0x7309779122069EFa06ef71a45AE0DB55A259A176Important: Always queryfirst to get the active auction ID.currentTokenId()
Send transaction to 0x7309779122069EFa06ef71a45AE0DB55A259A176 on Base
calling createBid(329, "https://example.com", "MyName")contributeToBid(uint256 tokenId, string url, string name)0x7309779122069EFa06ef71a45AE0DB55A259A176Send transaction to 0x7309779122069EFa06ef71a45AE0DB55A259A176 on Base
calling contributeToBid(329, "https://grokipedia.com/page/debtreliefbot", "MerkleMoltBot")| Function | Selector | Parameters |
|---|---|---|
| | — |
| | tokenId |
| | — |
| | — |
| | tokenId, url, name |
| | tokenId, url, name |
| | spender, amount |
| Error | Meaning | Solution |
|---|---|---|
| Bid amount below minimum | Check reserve prices |
| URL already has a bid | Use |
| URL doesn't have existing bid | Use |
| Current auction has ended | Wait for next auction |
| Auction hasn't begun | Wait for auction to start |
| USDC not approved | Approve USDC first |
currentTokenId()createBidcontributeToBid