Tài liệu Payna

Build, nạp tiền và chuyển USDC từ một chatbox

Payna kết hợp Circle wallet rails, MetaMask bridge bằng CCTP v2, AskSurf research và contract proof trên Arc Testnet vào một dapp chat-first.

1
Kết nối ví

Đăng nhập bằng MetaMask, rồi link ví ngoài vào Payna.

2
Nạp USDC

Dùng Circle Faucet và /fund để chuyển testnet USDC vào Circle wallet.

3
Chạy lệnh

Bảo Payna pay, transfer, bridge, swap hoặc research, sau đó confirm preview.

Payna làm gì

Payna là stablecoin copilot. Màn hình chính trong app không phải dashboard truyền thống mà là chatbox hiểu ý định thanh toán.

Payna hỗ trợ các thao tác Circle wallet như tạo ví, xem balance, pay contact, tạo payment request và transfer cross-chain.

Với MetaMask, Payna hỗ trợ bridge bằng CCTP v2 và lưu lịch sử bridge/swap trong app.

Với câu hỏi research, mode AskSurf bỏ qua router thanh toán và trả bài nghiên cứu crypto có nguồn, sections và câu hỏi liên quan.

Bản đồ công nghệ

Next.js App Router

Frontend app, API routes, auth pages, docs và chat UI.

Supabase

Auth, profile, contacts, transaction history, payment requests, notifications.

Circle Wallets

SCA wallet, Gateway signer, balances, deposit, withdraw, pay, transfer.

Circle Gateway

Đường thanh khoản USDC unified cho cross-chain transfer.

CCTP v2 / Bridge Kit

Luồng bridge bằng MetaMask cho các testnet route được hỗ trợ.

Payna Swap Adapter

Swap adapter trên Arc Testnet cho USDC, EURC và cirBTC, ký bằng MetaMask.

Arc Testnet contract

Contract proof của Payna phát event receipt công khai trên blockchain.

AskSurf

Mode research crypto có sources, markdown sections, tables và related questions.

Cách nạp tiền và chuẩn bị ví

1

Đăng nhập bằng MetaMask để Payna kết nối ví ngoài của bạn.

2

Dùng Circle Faucet để lấy testnet USDC trên các mạng được hỗ trợ như Base Sepolia hoặc Arc Testnet.

3

Nếu MetaMask chưa có testnet, Payna sẽ hiện popup để add network trước khi fund/bridge.

4

Chạy /link metamask để gắn ví MetaMask vào tài khoản hiện tại.

5

Chạy /wallet create để tạo Circle wallet nếu chưa có.

6

Chạy /fund 10 from metamask on base để chuyển testnet USDC từ MetaMask vào Circle SCA wallet.

Các lệnh hay dùng

/wallet create

Tạo Circle wallet và Gateway signer nếu cần.

/wallet balance arc

Xem USDC trong Circle SCA wallet trên Arc Testnet.

/balance

Xem unified USDC balance trên các rails được hỗ trợ.

/fund 10 from metamask on base

Chuyển USDC từ MetaMask vào Circle wallet trên Base Sepolia.

/pay 5 to Minh on arc

Pay cho contact hoặc địa chỉ ví, luôn có preview và confirm.

/transfer 5 from base to arc

Chuyển USDC của Circle wallet/Gateway giữa các chain.

/bridge 5 usdc from base to arc on my metamask

Bridge USDC bằng MetaMask qua CCTP v2.

/swap 1 USDC to EURC

Swap trên Arc Testnet qua Payna adapter bằng MetaMask.

/swap 0.001 cirBTC to USDC

Swap cirBTC về USDC trên Arc và lưu vào history.

Monad la gi?

Chuyển sang AskSurf mode để hỏi research crypto có nguồn.

Swap trên Arc

Payna hỗ trợ swap bằng MetaMask trên Arc Testnet với ba tài sản: USDC, EURC và cirBTC. Transaction do ví đang connect ký, sau đó Payna lưu swap vào transaction history.

TokenNameAddressDecimals
USDCUSD Coin0x36000000000000000000000000000000000000006 decimals
EURCEuro Coin0x89B50855Aa3bE2F677cD6303Cec089B5F319D72a6 decimals
cirBTCCircle BTC0xf0C4a4CE82A5746AbAAd9425360Ab04fbBA432BF8 decimals
1

Connect MetaMask và đảm bảo network đang là Arc Testnet.

2

Ví MetaMask cần có một trong ba token được hỗ trợ: USDC, EURC hoặc cirBTC.

3

Chạy command ví dụ /swap 1 USDC to EURC.

4

Payna estimate route, output amount và minimum output với slippage guard mặc định.

5

Confirm trong MetaMask. Sau khi có tx hash, Payna lưu swap và cố ghi proof receipt.

Route trực tiếp được dùng khi một trong hai token là USDC. Nếu cả hai token không phải USDC thì route đi qua USDC, ví dụ EURC -> USDC -> cirBTC.

Slippage guard mặc định là 1%. AMM math đang dùng giả định fee 0.3%.

Swap là luồng MetaMask trên Arc Testnet, không phải Circle Gateway transfer. Ví cần có Arc gas và token balance.

Contract onchain proof

Các contract của Circle đã ghi burn/mint hoặc Gateway transaction lên source và destination chain.

Payna thêm một lớp proof riêng: một Solidity contract nhỏ deploy trên Arc Testnet. Contract này không giữ tiền và không chuyển tiền. Nó chỉ emit receipt event để liên kết command type, amount, người gửi/nhận, source tx và mint tx.

Relayer wallet ký recordReceipt sau khi pay, transfer hoặc bridge thành công. Event này public trên ArcScan và được lưu lại vào transaction history của Payna.

Mô hình an toàn

Ngôn ngữ tự nhiên chỉ dùng để hiểu ý định, không tự động chuyển tiền.

Mọi lệnh liên quan payment đều thành preview trước. User phải confirm thì backend hoặc MetaMask mới chạy.

Bridge/fund qua MetaMask yêu cầu ví đang connect ký trên đúng chain.

AskSurf research mode tách khỏi Payna command mode để câu hỏi research không bị route nhầm thành giao dịch.

Đây là testnet dapp, không phải lời khuyên tài chính.

FAQ

Docs có cần đăng nhập không?
Không. Landing page và docs là public. Chỉ các khu vực app có đọc/ghi dữ liệu user như chat history, contacts, wallet actions, notifications và payment requests mới cần sign in.
Contract proof có chuyển tiền không?
Không. Contract Payna trên Arc Testnet chỉ emit receipt event. Việc chuyển USDC thật trong testnet do Circle contracts hoặc transaction ký bằng MetaMask xử lý.
Vì sao có source tx và mint tx?
Luồng CCTP thường có transaction ở source chain để burn/gửi message và transaction ở destination chain để mint/receive. Payna hiển thị cả hai để bạn inspect trên explorer.
Khi nào dùng Payna mode, khi nào dùng AskSurf?
Dùng Payna cho action như pay, transfer, bridge, swap, balance và wallet. Dùng AskSurf cho câu hỏi research crypto cần nguồn, sections và câu hỏi liên quan.
Swap trên Arc hỗ trợ token nào?
Hiện tại Payna hỗ trợ USDC, EURC và cirBTC trên Arc Testnet. Pair có USDC đi route trực tiếp, pair EURC/cirBTC route qua USDC.
Đây có phải tiền production không?
Không. UI và docs hiện đang viết cho testnet. Balance, faucet và proof link nên được hiểu là dữ liệu demo/testnet.