Agentic skill for AI agents to request and receive payments. If you are looking for the agentic skill to make payments for services and products, checkout https://money.flows.network
Copy and paste the following sentence to give your agent the ability to request and receive payments.
For OpenClaw:
Read https://raw.githubusercontent.com/second-state/payment-skill/refs/heads/main/openclaw/skills/payment/install.md and follow the instructions to set up the skill to request and receive payments from agents and humans.
For Claude Code:
Read https://raw.githubusercontent.com/second-state/payment-skill/refs/heads/main/claude/skills/payment/install.md and follow the instructions to set up the skill to request and receive payments from agents and humans.
This project provides four CLI tools for Ethereum wallet management and token payments:
Creates a new Ethereum-compatible wallet with a secure random private key. The wallet is encrypted using the Web3 Secret Storage standard (keystore format) and saved to disk.
create-wallet [OPTIONS]Key features:
- Generates cryptographically secure private keys
- Encrypts wallet using scrypt + AES-128-CTR
- Auto-generates secure password if not provided
- Outputs the wallet address to stdout
Retrieves the Ethereum address and token balance from an existing wallet without requiring the password.
get-address [OPTIONS]Key features:
- Reads address directly from keystore (no decryption needed)
- Queries current token balance from blockchain (if network configured)
- Outputs JSON with address, balance, token info, and network
- Creates a new wallet automatically if none exists
Transfers ERC-20 tokens or native ETH from your wallet to a recipient address.
pay --to <ADDRESS> --amount <AMOUNT> [OPTIONS]Key features:
- Supports ERC-20 token transfers (USDC, etc.)
- Supports native ETH/gas token transfers
- Checks balance before sending
- Waits for transaction confirmation by default
- Uses configuration for network and token defaults
Manages configuration for all x402 tools. Stores settings in config.toml (located in the skill root directory, alongside the binaries).
payment-config <COMMAND>Commands:
show- Display all current configurationget <KEY>- Get a specific config valueset <KEY> <VALUE>- Set config valuesuse-network <PROFILE>- Apply a predefined network profile (base-sepolia, base-mainnet, etc.)list-networks- List available network profileslist-keys- List all valid config keys
All personal data is stored in the skill root directory (the parent of the scripts/ directory where binaries live):
<skill-root>/
├── config.toml # Network, token, and payment settings
├── wallet.json # Encrypted wallet keystore (Web3 Secret Storage format)
└── password.txt # Wallet password (auto-generated, 600 permissions)
The data directory is determined at runtime via std::env::current_exe() — each binary resolves paths relative to its own location (../ from the scripts/ directory).
Platform-specific skill files live under claude/ and openclaw/:
claude/skills/payment/ # For Claude Code
├── bootstrap.sh
├── config-default.toml
├── install.md
├── SKILL.md
└── scripts/
openclaw/skills/payment/ # For OpenClaw
├── bootstrap.sh
├── config-default.toml
├── install.md
├── SKILL.md
└── scripts/
-
Clone skill files: The install script copies the platform-specific directory to the agent's skill path:
- Claude Code:
~/.claude/skills/payment/ - OpenClaw:
~/.openclaw/skills/payment/
- Claude Code:
-
Bootstrap binaries: Running
bootstrap.shdetects your platform (OS + architecture) and downloads the appropriate pre-compiled binaries from GitHub Releases -
Binary installation: Binaries are extracted to the
scripts/subdirectory and made executable
Supported platforms:
- Linux x86_64 / aarch64
- macOS x86_64 / aarch64 (Apple Silicon)
- Windows x86_64
~/.claude/skills/payment/ # (or ~/.openclaw/skills/payment/)
├── bootstrap.sh
├── config.toml # Created from config-default.toml
├── wallet.json # Created by create-wallet
├── password.txt # Auto-generated wallet password
├── SKILL.md
└── scripts/
├── create-wallet
├── get-address
├── pay
└── payment-config
This is a Rust workspace with the following crates:
| Crate | Description |
|---|---|
payment-common |
Shared library for configuration, errors, and utilities |
create-wallet |
Wallet creation CLI |
get-address |
Address retrieval CLI |
pay |
Token payment CLI |
payment-config |
Configuration management CLI |
cargo build --releasecargo testThe project uses GitHub Actions to build binaries for all supported platforms. See .github/workflows/ci.yml for the CI configuration.
See LICENSE for details.