一键导入
moonpay
MoonPay fiat-to-crypto on-ramp integration. Buy and sell crypto with credit cards, bank transfers, and mobile payments.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
MoonPay fiat-to-crypto on-ramp integration. Buy and sell crypto with credit cards, bank transfers, and mobile payments.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
The philosophical layer for AI agents.
Agents can sign plugins, rotate credentials without losing identity, and publicly attest to behavior.
A relaxing resource-gathering RPG where AI agents collect resources, trade with NPCs, and manage and build their world at their own pace.
The simulated crypto trading arena for AI agents. This document is a mandatory Onboarding Wizard. Agents must follow Steps 1-4 sequentially to achieve activation.
Promote Doppel world builds across social platforms. Use when the agent wants to share builds on Twitter/X, Farcaster, Telegram, or Moltbook to drive observers, grow reputation, and recruit collaborators.
Deploys autonomous sub-agents to perform tasks in the Antigravity IDE. Supports both manual dispatch and dynamic "Auto-Hiring" of agent teams.
| name | moonpay |
| description | MoonPay fiat-to-crypto on-ramp integration. Buy and sell crypto with credit cards, bank transfers, and mobile payments. |
| metadata | {"clawdbot":{"emoji":"🌙","always":true,"requires":{"bins":["curl","jq"]}}} |
Leading fiat-to-crypto on-ramp. Buy crypto with cards, bank transfers, and mobile payments in 160+ countries.
| Variable | Description | Required |
|---|---|---|
MOONPAY_API_KEY | Publishable API Key | Yes |
MOONPAY_SECRET_KEY | Secret Key for signing | Yes |
MOONPAY_ENV | sandbox or production | No |
https://api.moonpay.com (use test API key)https://api.moonpay.comAPI_KEY="${MOONPAY_API_KEY}"
# Get crypto currencies
curl -s "https://api.moonpay.com/v3/currencies" \
-H "Authorization: Api-Key ${API_KEY}" | jq '.[] | select(.type == "crypto") | {code: .code, name: .name, minBuyAmount: .minBuyAmount}'
# Get fiat currencies
curl -s "https://api.moonpay.com/v3/currencies" \
-H "Authorization: Api-Key ${API_KEY}" | jq '.[] | select(.type == "fiat") | {code: .code, name: .name}'
API_KEY="${MOONPAY_API_KEY}"
BASE_CURRENCY="usd"
QUOTE_CURRENCY="eth"
BASE_AMOUNT="100"
curl -s "https://api.moonpay.com/v3/currencies/${QUOTE_CURRENCY}/buy_quote" \
-G \
--data-urlencode "apiKey=${API_KEY}" \
--data-urlencode "baseCurrencyCode=${BASE_CURRENCY}" \
--data-urlencode "baseCurrencyAmount=${BASE_AMOUNT}" | jq '{
quoteCurrencyAmount: .quoteCurrencyAmount,
feeAmount: .feeAmount,
networkFeeAmount: .networkFeeAmount,
totalAmount: .totalAmount,
extraFeeAmount: .extraFeeAmount
}'
API_KEY="${MOONPAY_API_KEY}"
SECRET_KEY="${MOONPAY_SECRET_KEY}"
# Build widget URL
BASE_URL="https://buy.moonpay.com"
PARAMS="?apiKey=${API_KEY}¤cyCode=eth&walletAddress=<WALLET>&baseCurrencyAmount=100"
# Sign URL (required for production)
SIGNATURE=$(echo -n "${PARAMS}" | openssl dgst -sha256 -hmac "${SECRET_KEY}" -binary | base64 | tr '+/' '-_' | tr -d '=')
WIDGET_URL="${BASE_URL}${PARAMS}&signature=${SIGNATURE}"
echo "Widget URL: $WIDGET_URL"
API_KEY="${MOONPAY_API_KEY}"
SECRET_KEY="${MOONPAY_SECRET_KEY}"
curl -s -X POST "https://api.moonpay.com/v3/transactions" \
-H "Authorization: Api-Key ${API_KEY}" \
-H "Content-Type: application/json" \
-d '{
"baseCurrencyCode": "usd",
"baseCurrencyAmount": 100,
"quoteCurrencyCode": "eth",
"walletAddress": "<WALLET_ADDRESS>",
"returnUrl": "https://your-app.com/success",
"externalCustomerId": "customer-123"
}' | jq '.'
API_KEY="${MOONPAY_API_KEY}"
TX_ID="<TRANSACTION_ID>"
curl -s "https://api.moonpay.com/v3/transactions/${TX_ID}" \
-H "Authorization: Api-Key ${API_KEY}" | jq '{
status: .status,
cryptoTransactionId: .cryptoTransactionId,
quoteCurrencyAmount: .quoteCurrencyAmount,
walletAddress: .walletAddress
}'
| Status | Description |
|---|---|
waitingPayment | Awaiting payment |
pending | Payment received, processing |
waitingAuthorization | Awaiting 3DS/bank auth |
completed | Successfully completed |
failed | Transaction failed |
| Method | Regions | Speed |
|---|---|---|
| Credit/Debit Card | Global | Instant |
| Apple Pay | Global | Instant |
| Google Pay | Global | Instant |
| SEPA | Europe | 1-2 days |
| ACH | USA | 3-5 days |
| Faster Payments | UK | Instant |
| PIX | Brazil | Instant |
| iDEAL | Netherlands | Instant |
| Category | Tokens |
|---|---|
| Major | BTC, ETH, SOL, MATIC, AVAX |
| Stablecoins | USDT, USDC, DAI |
| L2 | ARB, OP, BASE tokens |
| Meme | DOGE, SHIB |
# Webhook payload structure
{
"type": "transaction_updated",
"data": {
"id": "tx-123",
"status": "completed",
"cryptoTransactionId": "0x...",
"quoteCurrencyAmount": 0.05,
"walletAddress": "0x..."
}
}
verify_webhook() {
local payload="$1"
local signature="$2"
local expected=$(echo -n "$payload" | openssl dgst -sha256 -hmac "$MOONPAY_SECRET_KEY" -binary | base64)
[[ "$signature" == "$expected" ]]
}
# Widget parameters
PARAMS="?apiKey=${API_KEY}"
PARAMS+="¤cyCode=eth"
PARAMS+="&walletAddress=<WALLET>"
PARAMS+="&baseCurrencyAmount=100"
PARAMS+="&baseCurrencyCode=usd"
PARAMS+="&lockAmount=true" # Lock amount
PARAMS+="&colorCode=%23FF6B00" # Custom color
PARAMS+="&language=en" # Language
PARAMS+="&showWalletAddressForm=false" # Hide wallet input
| Code | Description |
|---|---|
invalid_api_key | Invalid API key |
invalid_signature | URL signature mismatch |
currency_not_supported | Currency unavailable |
amount_too_low | Below minimum |
amount_too_high | Above maximum |