Payall CLI
A terminal tool for managing crypto debit cards funded with USDT and sending crypto on-chain. Run payall <command> from anywhere.
Setup
- - Install:
npm install -g payall-cli or INLINECODE2 - Credentials: Stored encrypted at INLINECODE3
If payall is not found, install it first with the command above.
Auth Commands
Authentication uses EVM wallet private key signing. A single login call handles both registration (new wallets auto-register) and login for existing users.
CODEBLOCK0
The private key is signed locally and never sent to the server. When --key is passed, the key is automatically saved (AES-256-GCM encrypted) so subsequent wallet commands work without re-entering it.
All CLI requests include source: "payall-cli" automatically for backend analytics tracking.
Card Commands
Browsing (no auth required)
CODEBLOCK1
User Cards (auth required)
CODEBLOCK2
The --reveal --json output returns all fields an agent needs to fill payment forms:
CODEBLOCK3
The binding_id comes from the ID column in payall cards my (this is different from the card catalog ID in payall cards list).
Topping Up a Card (auth required)
CODEBLOCK4
Non-interactive flags (use all three to skip all prompts):
- -
--amount <amount> / -a — USDT amount - INLINECODE13 /
-c — Deposit network: tron, bsc, INLINECODE17 - INLINECODE18 /
-y — Skip confirmation
The command returns a deposit address. Send USDT to that address and the card balance updates automatically after confirmation.
Applying for a Card (auth required)
CODEBLOCK5
Non-interactive flags (use --auto-fill --chain <chain> --yes to skip all prompts):
- -
--bin <card_bin> / -b — Card BIN (auto-selected if only one) - INLINECODE23 — USD, EUR, etc. (auto-selected if only one)
- INLINECODE24 — Auto-generate cardholder info
- INLINECODE25 ,
--last-name, --email, --phone-prefix, --phone — Manual cardholder info (all 5 required together; overrides --auto-fill) - INLINECODE31 /
-c — Deposit chain: tron, bsc, INLINECODE35 - INLINECODE36 /
-y — Skip all confirmations
Temporarily Unavailable Cards
Do NOT proceed with applying for MiPay or Bit2Go HK/UK cards. If a user requests to open any of these cards, inform them: "This service is temporarily not working. Please try again later." Do not attempt the apply command or suggest workarounds.
Cards that support API application:
- - 23 = Bit2Go (Visa/Mastercard, multi-currency, no KYC) — TEMPORARILY UNAVAILABLE
- 39 = MiPay Universal Card (USD only, no KYC) — TEMPORARILY UNAVAILABLE
Before applying, always run payall cards apply <card_id> which checks eligibility first. If can_apply = 0, the card can only be opened via its website — direct the user there and provide the URL. Don't retry or attempt workarounds. When mentioning this, frame it positively: "You can apply for cards 23 and 39 directly here, and for other cards you can sign up on their website."
Withdrawing from a Card (auth + wallet key required)
Withdraw card balance to USDT in your wallet. Only Bit2Go cards (card_id=23) support withdrawal.
CODEBLOCK6
Non-interactive flags:
- -
--amount <amount> / -a — USDT amount (must be > 2) - INLINECODE42 /
-c — Payout network: tron, bsc, INLINECODE46 - INLINECODE47 — Destination wallet (defaults to user's own wallet)
- INLINECODE48 /
-y — Skip confirmation - INLINECODE50 — JSON output (for agents)
The command requires a saved wallet key (uses it to sign the withdrawal confirmation). Network fees: $1.50 for TRON, $1.00 for BSC/ETH.
Wallet Commands (auth required)
On-chain wallet operations. The same private key derives addresses on all chains (BSC/ETH share the same 0x address; TRON derives a T... address).
If no saved key is found, wallet commands prompt for the private key interactively and offer to save it. For agents, ensure the key is saved first via payall auth login --key <key>.
CODEBLOCK7
Flags for wallet send:
- -
--to <address> — 0x... (40 hex chars) for EVM, T... (34 chars, Base58) for TRON - INLINECODE56 — USDT amount
- INLINECODE57 —
bsc, eth, or INLINECODE60 - INLINECODE61 — Skip confirmation
TRON transfers require TRX for energy/bandwidth fees. The CLI checks for non-zero TRX balance before sending and sets a 15 TRX fee limit. If a send fails, the CLI prints manual transfer instructions.
Agent Workflows
Automated Topup
This is the most common agent task — topping up a user's card by sending USDT from their wallet to a deposit address.
CODEBLOCK8
Chain selection logic — pick the chain with sufficient USDT + gas:
- - TRON: needs USDT + some TRX
- BSC: needs USDT + some BNB
- ETH: needs USDT + some ETH (usually most expensive gas)
If no chain has enough funds, tell the user to fund their wallet and show the wallet address from wallet balance.
Automated Card Apply
CODEBLOCK9
Same chain selection logic as topup.
Automated Card Withdrawal
CODEBLOCK10
Only Bit2Go cards (card_id=23, shown as payall_card_id: 23) support withdrawal. If the user has a non-Bit2Go card, inform them that withdrawal is not supported for that card type.
Fallback Rule
If wallet send fails for any reason, always present the deposit address, chain, and amount to the user so they can complete the transfer manually via any wallet app. The CLI also prints this information on failure.
Card Recommendations
When a user asks about cards, help them find the best fit rather than listing everything. If they haven't shared their needs, ask about:
- 1. Primary use case (online shopping, subscriptions, travel, etc.)
- Expected monthly spend (affects which fee structure is cheapest)
- Physical card vs virtual
- Currency preference (USD, EUR, GBP, etc.)
- Willingness to complete KYC
- Region
Then use payall cards list, payall cards info, and payall cards compare to evaluate based on fee structure, payment support (Apple Pay, Google Pay, etc.), KYC requirements, and currency options.
Recommend the genuinely best card for their needs, even if it's not one of the two API-applicable cards (23, 39). Many cards in the marketplace have better features for specific use cases — if the best card requires website signup, that's fine, just explain how to get it.
The rating and general_ratings fields in card data are placeholder values and not meaningful — base recommendations on actual card attributes like fees, features, and supported currencies.
Always show a fee comparison (payall cards fees) so the user knows exactly what they'll pay.
Display Guidelines
When presenting card info to users, only show what they care about: card name, balance, status, card number, fees, etc. Skip internal fields like rank, id, bindingid, brand, rating, or generalratings — these are technical identifiers that don't help the user.
Troubleshooting
- - "Not logged in": Run INLINECODE71
- "User Not Authorized": Token expired — run
payall auth login again - "Bind Card Failed": For cards 23/39, use
cards apply (not cards/binding) - Cards list empty after apply: Normal — check
payall cards my (may take a moment) - Private key security: Key is signed locally via viem, never sent to server. Stored key is AES-256-GCM encrypted
Payall CLI
一个用于管理以USDT充值的加密借记卡并发送链上加密货币的终端工具。在任何位置运行 payall 。
设置
- - 安装:npm install -g payall-cli 或 bun install -g payall-cli
- 凭证:加密存储在 ~/.payall/
如果找不到 payall,请先使用上述命令安装。
认证命令
认证使用EVM钱包私钥签名。单次登录调用即可处理注册(新钱包自动注册)和现有用户的登录。
payall auth login # 交互式登录(提示输入私钥)
payall auth login --save-key # 交互式登录 + 保存密钥用于钱包命令
payall auth login --key # 非交互式登录 — 密钥自动保存(供代理使用)
payall auth login --invite XYZ # 包含推荐码(仅首次)
payall auth status # 显示当前会话信息
payall auth logout # 清除会话、凭证和已保存的密钥
私钥在本地签名,绝不会发送到服务器。当传递 --key 时,密钥会自动保存(AES-256-GCM加密),以便后续钱包命令无需重新输入。
所有CLI请求自动包含 source: payall-cli 用于后端分析跟踪。
卡片命令
浏览(无需认证)
payall cards list # 列出所有市场卡片
payall cards list --search bit # 按卡片名称搜索
payall cards list --sort general # 排序方式:general、benefit、privacy、fees
payall cards list --sort-dir asc # 排序方向:asc、desc
payall cards list --skip-kyc # 仅显示无需KYC的卡片
payall cards list --kyc-only # 仅显示需要KYC的卡片
payall cards info # 完整卡片详情 + 费用
payall cards compare # 并排对比
payall cards fees # 费用报价(默认为卡片23,OPEN_CARD)
payall cards fees --card-id 39 # 指定卡片的费用报价
payall cards fees --type CARDCHARGE # 类型:OPENCARD、CARDCHARGE、CARDWITHDRAW
payall cards fees --type CARDCHARGE --amount 100 # cardbin自动解析
payall cards fees --amount 100 # 指定金额
payall cards fees --currency EUR # 指定货币
payall cards fees --card-bin 44742000 # 显式BIN覆盖(可选)
用户卡片(需认证)
payall cards my # 列出您的卡片(ID、名称、余额、状态)
payall cards detail # 掩码卡号、CVV、账单地址
payall cards detail --reveal # 完整卡号、CVV、有效期、账单地址
payall cards detail --reveal --json # JSON输出(供代理使用)
payall cards collections # 列出收藏的卡片
payall cards favorite # 切换收藏开/关
--reveal --json 输出返回代理填写支付表单所需的所有字段:
json
{
card_name: Bit2Go,
card_number: 4474200012345678,
card_cvv: 123,
expiry_month: 10,
expiry_year: 2027,
card_bin: 44742000,
first_name: John,
last_name: Smith,
address: 3500 South DuPont Highway,
city: Dover,
state: DE,
zipcode: 19901,
country_code: USA
}
binding_id 来自 payall cards my 中的ID列(这与 payall cards list 中的卡片目录ID不同)。
充值卡片(需认证)
payall cards topup # 交互式
payall cards topup --amount 50 --chain tron --yes # 非交互式(供代理使用)
非交互式标志(同时使用三个可跳过所有提示):
- - --amount / -a — USDT金额
- --chain / -c — 充值网络:tron、bsc、eth
- --yes / -y — 跳过确认
该命令返回一个充值地址。将USDT发送到该地址,确认后卡片余额自动更新。
申请卡片(需认证)
payall cards apply # 交互式
payall cards apply --auto-fill --chain tron --yes # 非交互式(供代理使用)
payall cards apply --bin 44742000 --currency USD --auto-fill --chain tron --yes # 完全显式
非交互式标志(使用 --auto-fill --chain --yes 可跳过所有提示):
- - --bin / -b — 卡片BIN(仅有一个时自动选择)
- --currency — USD、EUR等(仅有一种时自动选择)
- --auto-fill — 自动生成持卡人信息
- --first-name、--last-name、--email、--phone-prefix、--phone — 手动持卡人信息(需同时提供全部5项;覆盖 --auto-fill)
- --chain / -c — 充值链:tron、bsc、eth
- --yes / -y — 跳过所有确认
暂时不可用的卡片
请勿继续申请MiPay或Bit2Go HK/UK卡片。如果用户请求开通这些卡片中的任意一张,请告知他们:该服务暂时不可用,请稍后再试。不要尝试申请命令或建议变通方法。
支持API申请的卡片:
- - 23 = Bit2Go(Visa/Mastercard、多币种、无需KYC)— 暂时不可用
- 39 = MiPay通用卡(仅USD、无需KYC)— 暂时不可用
申请前,始终运行 payall cards apply id> 检查资格。如果 canapply = 0,该卡片只能通过其网站开通 — 引导用户前往并提供URL。不要重试或尝试变通方法。提及此问题时,以积极的方式表述:您可以在此处直接申请卡片23和39,其他卡片可以在其网站上注册。
从卡片提现(需认证 + 钱包密钥)
将卡片余额提现为钱包中的USDT。仅Bit2Go卡片(card_id=23)支持提现。
payall cards withdraw # 交互式
payall cards withdraw --amount 50 --chain tron --yes # 非交互式(供代理使用)
payall cards withdraw --amount 50 --chain tron --address 0x... --yes # 自定义地址
非交互式标志:
- - --amount / -a — USDT金额(必须 > 2)
- --chain / -c — 支付网络:tron、bsc、eth
- --address — 目标钱包(默认为用户自己的钱包)
- --yes / -y — 跳过确认
- --json — JSON输出(供代理使用)
该命令需要已保存的钱包密钥(用于签署提现确认)。网络费用:TRON $1.50,BSC/ETH $1.00。
钱包命令(需认证)
链上钱包操作。同一私钥在所有链上派生地址(BSC/ETH共享相同的0x地址;TRON派生T...地址)。
如果未找到已保存的密钥,钱包命令会交互式提示输入私钥并提供保存选项。对于代理,请确保先通过 payall auth login --key 保存密钥。
payall wallet balance # BSC、ETH、TRON上的USDT + Gas余额
payall wallet send --to 0x... --amount 50 --chain bsc --yes # 在BSC上发送USDT
payall wallet send --to 0x... --amount 50 --chain eth --yes # 在以太坊上发送USDT
payall wallet send --to T... --amount 50 --chain tron --yes # 在TRON上发送USDT(TRC-20)
wallet send 的标志: