name: near-getpay description: Accept crypto payments (NEAR, USDC, USDT) via a beautiful payment page with PingPay or HOT PAY integration.
Accept crypto payments (NEAR, USDC, USDT) via a beautiful payment page with PingPay or HOT PAY integration.
Creates a hosted payment page where people can pay you in crypto with just a few clicks:
cd ~/.openclaw/skills
# Clone or extract the skill
npm install
You need either PingPay or HOT PAY (or both):
Option A: PingPay (recommended for beginners)
- Sign up at https://pingpay.io
- Set your NEAR wallet in Dashboard → Settings
- Get API key from Dashboard → Settings → API Keys
- Add to .env: PINGPAY_API_KEY=your_key_here
Option B: HOT PAY (for advanced users)
- Visit https://pay.hot-labs.org/admin/overview
- Create payment links for each token (NEAR, USDC, USDT)
- Set your NEAR wallet as recipient when creating each link
- Copy each item_id and add to .env
Copy .env.example to .env:
cp .env.example .env
Edit .env:
# Display name (actual recipient is set in PingPay/HOT PAY dashboard!)
RECIPIENT_ADDRESS=your-account.near
# Choose provider
PAYMENT_PROVIDER=pingpay # or 'hotpay'
# PingPay config (if using PingPay)
PINGPAY_API_KEY=your_api_key_here
# HOT PAY config (if using HOT PAY)
HOTPAY_NEAR_ITEM_ID=your_near_item_id
HOTPAY_USDC_ITEM_ID=your_usdc_item_id
HOTPAY_USDT_ITEM_ID=your_usdt_item_id
./start.sh
Or manually:
npx ts-node start-tunnel.ts
This will: - Start Express server on port 3000 - Create public URL via localhost.run - Display the shareable payment link
Share the generated https://xxxxx.lhr.life URL to accept payments!
The recipient address (where payments go) is configured at the provider level, NOT in the .env file:
The RECIPIENT_ADDRESS in .env is only for display on the payment page. To change where payments actually go, update your provider's dashboard settings.
localhost.run generates random URLs that change each restart. For a permanent domain:
start-tunnel.tsOr use your own reverse proxy (Cloudflare Tunnel, ngrok paid, etc.)
When a user asks to accept payments:
User: "Create a payment page to accept USDT donations"
Agent:
1. Check if near-getpay skill is installed
2. Ask which provider they want (PingPay or HOT PAY)
3. Guide them through setup if not configured
4. Run: cd ~/.openclaw/skills/near-getpay && ./start.sh
5. Share the generated public URL
User: I need to accept crypto payments
Agent: I'll set up a payment page for you using the GetPay skill.
First, do you have a PingPay or HOT PAY account?
User: No, what's easier?
Agent: PingPay is simpler. Here's what to do:
1. Sign up at https://pingpay.io
2. Add your NEAR wallet address in settings
3. Get an API key from Dashboard → API Keys
4. Share it with me (or add to .env yourself)
Let me know when you have the API key!
User: Got it: sk_test_abc123...
Agent: Perfect! Starting your payment server...
[runs start.sh]
✅ Your payment page is live:
https://abc123xyz.lhr.life
Share this link to accept NEAR, USDC, or USDT payments!
near-getpay/
├── SKILL.md ← You are here
├── package.json
├── tsconfig.json
├── .env.example ← Config template
├── .env ← Your config (gitignored)
├── start.sh ← Quick start script
├── start-tunnel.ts ← Server + tunnel launcher
├── server-simple.ts ← Main payment server
└── scripts/
├── pingpay-client.ts
└── payment-orchestrator.ts
Edit .env:
PORT=8080
Replace localhost.run in start-tunnel.ts:
// Option 1: ngrok
const tunnel = spawn('ngrok', ['http', PORT.toString()]);
// Option 2: Cloudflare Tunnel
const tunnel = spawn('cloudflared', ['tunnel', '--url', `http://localhost:${PORT}`]);
// Option 3: localtunnel (less reliable)
const tunnel = spawn('npx', ['localtunnel', '--port', PORT.toString()]);
HOT PAY sends webhooks to /webhook/hotpay. To use:
Edit preset amounts in server-simple.ts:
tokens: [
{
symbol: 'NEAR',
chain: 'NEAR',
decimals: 24,
presets: [0.5, 1, 5, 10] // ← Change these
},
// ...
]
Update colors, fonts, text in the HTML template sections of server-simple.ts.
Add to the tokens array (requires provider support):
{
symbol: 'ETH',
chain: 'NEAR',
decimals: 18,
presets: [0.01, 0.05, 0.1, 0.5]
}
Visit http://localhost:3000/setup to see setup instructions.
Run: ssh-keygen -t rsa -b 2048 -f ~/.ssh/id_rsa -N ""
localhost.run tunnels timeout after inactivity. Restart the server.
You need to create a payment link for each token. Missing tokens won't appear on the payment page.
這個技能的最新版本可以在7w4.net小蔥技能站找到。
.env (gitignored)Never commit .env to git!
# From the skill directory
openclaw skill pack
# Share the .skill file
# Users install with: openclaw skill install near-getpay.skill
git init
git add .
git commit -m "Initial commit: NEAR GetPay skill"
git remote add origin https://github.com/yourusername/near-getpay.git
git push -u origin main
Users install with:
cd ~/.openclaw/skills
git clone https://github.com/yourusername/near-getpay.git
cd near-getpay
npm install
.skill packageMIT
Made for OpenClaw 🐾
這個Skill質量不錯,功能齊全,能快速生成漂亮的加密收款頁面。它支援多種代幣(NEAR、USDC、USDT),介面在手機上顯示效果很好,還自帶首次使用引導。文件寫得很詳細,新手也能上手。主要不足是配置說明有點零散,第一次設定時可能需要多試幾次。另外啟動指令碼依賴外部隧道服務,穩定性取決於網路連線。總體來說是值得使用的收款工具。