GStable AI Payment Skill
An OpenClaw skill that enables AI Agents to discover, negotiate, and execute cryptocurrency payments on behalf of users.
Features
- 🔗 Retrieve payment link details and supported tokens 📝 Create payment sessions (EIP-712 signatures) 🔍 Query payment session status 💰 Check native and ERC20 balances 💳 Prepare payments and generate on-chain transaction calldata ✅ Check and automatically approve tokens ⚡ Execute on-chain payment transactions 🚀 One-command payment (pay) with automatic approval handling 🔐 Secure EIP-712 signing (private key stored in environment variables) ⛓️ Multi-chain support (Polygon, Ethereum, Arbitrum, Base)
Installation
CODEBLOCK0
Configuration
Set environment variables:
CODEBLOCK1
⚠️ Security note : Never commit private keys to version control.
Quick Start
1. Get payment link details
CODEBLOCK2
2. Create payment session
CODEBLOCK3
3. One-command payment (recommended)
CODEBLOCK4
All Commands
CODEBLOCK5
Supported Chains
Chain Chain ID Tokens Polygon 137 USDC, USDT Ethereum
1 | USDC, USDT |
| Arbitrum | 42161 | USDC |
| Base | 8453 | USDC |
Use uv run scripts/gstable-ai-payment.py get_link <link-id> to see exactly which chains and tokens are supported for a specific payment link.
Usage Examples
Complete payment flow
CODEBLOCK6
Agent interaction example
CODEBLOCK7
Payment Flow
CODEBLOCK8
Environment Variables
Variable Required Description INLINECODE2 ✅ Wallet private key used to sign EIP-712 messages and execute transactions (0x prefix) INLINECODE4
❌ | GStable API base URL (default: https://aipay.gstable.io/api/v1) |
|
DEFAULT_PAYER_EMAIL | ❌ | Default payer email |
|
RPC_URL_POLYGON | ❌ | Polygon RPC URL (default: https://polygon-rpc.com) |
|
RPC_URL_ETHEREUM | ❌ | Ethereum RPC URL (default: https://eth.llamarpc.com) |
|
RPC_URL_ARBITRUM | ❌ | Arbitrum RPC URL (default: https://arb1.arbitrum.io/rpc) |
|
RPC_URL_BASE | ❌ | Base RPC URL (default: https://mainnet.base.org) |
Troubleshooting
"WALLETPRIVATE KEY not set"
CODEBLOCK9
"Token not supported"
CODEBLOCK10
"Session expired"
CODEBLOCK11
"No RPC URL configured for chain"
CODEBLOCK12
"Gas estimation failed" or "Transaction failed"
- Ensure the wallet has enough native token (e.g., MATIC) to pay gas fees Ensure the wallet has enough token balance to complete the payment Check whether the token has been approved for the payment contract
Resources
- GStable AI Payment Protocol: https://docs.gstable.io/zh-Hans/docs/category/ai-payment-protocol GStable AI Agent Integration: https://docs.gstable.io/zh-Hans/docs/category/ai-agent-integration GitHub: https://github.com/gstable/gstable-ai-payment-skill
License
MIT
GStable AI 支付技能
一个OpenClaw技能,使AI代理能够代表用户发现、协商和执行加密货币支付。
功能特性
- 🔗 获取支付链接详情及支持的代币 📝 创建支付会话(EIP-712签名) 🔍 查询支付会话状态 💰 检查原生代币和ERC20代币余额 💳 准备支付并生成链上交易调用数据 ✅ 检查并自动授权代币 ⚡ 执行链上支付交易 🚀 一键支付(pay)并自动处理授权 🔐 安全的EIP-712签名(私钥存储在环境变量中) ⛓️ 多链支持(Polygon、Ethereum、Arbitrum、Base)
安装
bash
clawhub install gstable-ai-payment
cd ~/.openclaw/workspace/skills/gstable-ai-payment
uv sync
配置
设置环境变量:
bash
必需:用于签署EIP-712消息和发送交易的钱包私钥
export WALLET
PRIVATE KEY=0x...你的私钥...
可选:GStable API基础URL(默认:https://aipay.gstable.io/api/v1)
export GSTABLE
API BASE_URL=https://aipay.gstable.io/api/v1
可选:默认付款人邮箱
export DEFAULT
PAYER EMAIL=user@example.com
⚠️ 安全提示 :切勿将私钥提交到版本控制系统。
快速开始
1. 获取支付链接详情
bash
支付链接格式:
- https://pay.gstable.io/link/
- https://aipay.gstable.io/api/v1/payment/link/
示例1
uv run scripts/gstable-ai-payment.py get
link lnk BUDBgiGTWejFs8v0FbdpR3iJ83CG1tua
示例2
uv run scripts/gstable-ai-payment.py get
link lnk QTAfGfyqAZHGSm9NKLhtjNYu8dNHRpGh
2. 创建支付会话
bash
uv run scripts/gstable-ai-payment.py createsession lnk BUDBgiGTWejFs8v0FbdpR3iJ83CG1tua 137 USDC
3. 一键支付(推荐)
bash
uv run scripts/gstable-ai-payment.py pay lnk_BUDBgiGTWejFs8v0FbdpR3iJ83CG1tua 137 USDC user@example.com
所有命令
bash
获取支付链接详情
uv run scripts/gstable-ai-payment.py get
link id>
创建支付会话
uv run scripts/gstable-ai-payment.py createsession id> [payer]
uv run scripts/gstable-ai-payment.py createsession lnk xxx 137 USDC
uv run scripts/gstable-ai-payment.py createsession lnk xxx 137 0x3c499c542cef5e3811e1192ce70d8cc03d5c3359
获取会话状态
uv run scripts/gstable-ai-payment.py getsession id>
检查原生代币/ERC20余额
uv run scripts/gstable-ai-payment.py balance id> [token address] [wallet]
准备支付(生成调用数据)
uv run scripts/gstable-ai-payment.py prepare id> id> [email]
执行链上交易
uv run scripts/gstable-ai-payment.py execute id> address>
检查代币授权额度
uv run scripts/gstable-ai-payment.py allowance id> address>
为支付合约授权代币
uv run scripts/gstable-ai-payment.py approve id> address> [amount]
一键支付(完整流程,自动授权)
uv run scripts/gstable-ai-payment.py pay id> id> [email]
显示钱包地址
uv run scripts/gstable-ai-payment.py wallet
支持的链
链 链ID 代币 Polygon 137 USDC, USDT Ethereum
1 | USDC, USDT |
| Arbitrum | 42161 | USDC |
| Base | 8453 | USDC |
使用 uv run scripts/gstable-ai-payment.py get_link 查看特定支付链接支持哪些链和代币。
使用示例
完整支付流程
bash
支付链接:https://pay.gstable.io/link/lnk_BUDBgiGTWejFs8v0FbdpR3iJ83CG1tua
选项1:一键支付(推荐)
uv run scripts/gstable-ai-payment.py pay lnk_BUDBgiGTWejFs8v0FbdpR3iJ83CG1tua 137 USDC user@example.com
输出:
第1/5步:获取支付链接详情...
第2/5步:创建支付会话...
第3/5步:准备支付...
第4/5步:检查代币授权额度...
第5/5步:执行链上支付交易...
✅ 支付完成!
{ linkId: lnkBUDBgiGTWejFs8v0FbdpR3iJ83CG1tua, sessionId: sess xxx, txHash: 0x... }
选项2:逐步执行
1) 获取支付链接详情
uv run scripts/gstable-ai-payment.py getlink lnk BUDBgiGTWejFs8v0FbdpR3iJ83CG1tua
以JSON格式返回支付链接详情
2) 创建支付会话
uv run scripts/gstable-ai-payment.py createsession lnk BUDBgiGTWejFs8v0FbdpR3iJ83CG1tua 137 USDC
输出:{ sessionId: sess_abc123, ... }
3) 准备支付
uv run scripts/gstable-ai-payment.py prepare sess_abc123 137 0x3c499c542cef5e3811e1192ce70d8cc03d5c3359 user@example.com
输出:{ executionChainId: 137, executorContract: 0x..., calldata: 0x... }
4) 检查并授权额度(如需要)
uv run scripts/gstable-ai-payment.py allowance 137 0x3c499c542cef5e3811e1192ce70d8cc03d5c3359 0x...
uv run scripts/gstable-ai-payment.py approve 137 0x3c499c542cef5e3811e1192ce70d8cc03d5c3359 0x...
5) 执行链上交易
uv run scripts/gstable-ai-payment.py execute 137 0x... 0x...
输出:{ status: submitted, txHash: 0x... }
代理交互示例
用户:我想支付这个:https://pay.gstable.io/link/lnk_BUDBgiGTWejFs8v0FbdpR3iJ83CG1tua
代理:[uv run scripts/gstable-ai-payment.py getlink lnk BUDBgiGTWejFs8v0FbdpR3iJ83CG1tua]
这是一个支付链接。您可以在Polygon上使用USDC支付。您想使用哪个网络?
用户:使用Polygon
代理:[uv run scripts/gstable-ai-payment.py pay lnk_BUDBgiGTWejFs8v0FbdpR3iJ83CG1tua 137 USDC]
✅ 支付完成!交易哈希:0x...
支付流程
┌─────────────────┐
│ 用户分享链接 │
└────────┬────────┘
│
▼
┌─────────────────┐
│ get_link │ ──► 获取产品和支付选项
└────────┬────────┘
│
▼
┌─────────────────┐
│ 用户选择代币 │
└────────┬────────┘
│
▼
┌─────────────────┐
│ create_session │ ──► 创建会话(EIP-712签名)
└────────┬────────┘
│
▼