Awesome-omni-skill payram-agent-onboarding
Deploy and automate PayRam for AI agents and CLI-only environments. No web UI required — pure API-driven payment infrastructure. Install via setup_payram_agents.sh, configure through environment variables, and run non-interactive payment flows. Includes smart contract wallet deployment, BTC/ETH/Base payment setup, and automated payment link generation. Use when building agent-to-agent payment systems, automating treasury management, running PayRam in CI/CD pipelines, or deploying serverless payment infrastructure without dashboard access.
git clone https://github.com/diegosouzapw/awesome-omni-skill
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/devops/payram-agent-onboarding" ~/.claude/skills/diegosouzapw-awesome-omni-skill-payram-agent-onboarding && rm -rf "$T"
skills/devops/payram-agent-onboarding/SKILL.mdPayRam Agent Onboarding
Looking for standard deployment with web UI? See
for the full dashboard installation.payram-setup
PayRam Agent Onboarding enables fully automated, CLI-driven payment infrastructure for AI agents, automation pipelines, and serverless environments. No web dashboard — pure API interactions controlled via environment variables and shell commands.
When to Use Agent Mode
- AI Agent Payments: Claude, Copilot, custom MCP clients processing payments autonomously
- CI/CD Integration: Automated payment testing in deployment pipelines
- Serverless Infrastructure: Lambda/Cloud Functions triggering payment operations
- Treasury Automation: Programmatic fund management without human interaction
- Headless Commerce: Backend-only payment processing for APIs and microservices
Prerequisites
System Requirements:
- Ubuntu 22.04 or compatible Linux
- Docker (for
, default)PAYRAM_NODE_MODE=docker - 4 CPU cores, 4GB RAM minimum
- PostgreSQL database (configured during installation)
Installation Script:
curl -fsSL https://raw.githubusercontent.com/PayRam/payram-scripts/main/setup_payram_agents.sh -o setup_payram_agents.sh chmod +x setup_payram_agents.sh
Quick Start
One-Step Interactive Flow
# Install, configure, and create first payment ./setup_payram_agents.sh
This runs the complete setup flow:
- Network selection (testnet/mainnet)
- Install PayRam backend via
setup_payram.sh - Wait for API readiness
- Create root user account + default project
- Configure local frontend/backend settings
- Blockchain setup prompt (ETH/Base/BTC-only)
- Optional payment link generation
Fully Non-Interactive Flow
# Set environment variables export PAYRAM_EMAIL="admin@example.com" export PAYRAM_PASSWORD="secure-password-123" export PAYRAM_NETWORK="testnet" export PAYRAM_BLOCKCHAIN_SETUP="skip" # BTC-only, no funding needed export PAYRAM_WALLET_CHOICE="1" # Auto-create wallet export PAYRAM_WALLET_QUIET="1" # Suppress prompts # Run automated setup ./setup_payram_agents.sh
Commands Reference
Run from repository root:
./setup_payram_agents.sh [command]
Core Commands
| Command | Purpose |
|---|---|
(none) or | Show interactive step menu |
| Check API reachability and authentication status |
| First-time: register root user + create default project |
| Authenticate; saves token to |
| Configure local frontend/backend URLs (required for payments) |
| Create/link BTC wallet (random HD wallet or existing) |
| Full automated flow: setup → config → wallet → payment link |
Blockchain Setup Commands
| Command | Purpose |
|---|---|
| Setup Ethereum payments (post-install) — deploys SCW wallet |
| Setup Base payments (post-install) — deploys SCW wallet |
| Deploy EVM smart contract wallet; auto-link to project |
| Generate mnemonic → fund deployer → balance check → deploy SCW |
Payment & Utility Commands
| Command | Purpose |
|---|---|
| Generate payment link; outputs URL |
| Wipe local DB/API data; requires re-running setup |
Environment Variables
Authentication & API
| Variable | Default | Description |
|---|---|---|
| | Backend API base URL |
| — | Root user email (setup/signin) |
| — | Root user password |
| from token file | Auto-populated after signin |
| | Used by ensure-config (local) |
Project & Payment Configuration
| Variable | Default | Description |
|---|---|---|
| | Project name during setup |
| — | Customer email for payment links |
| | Payment amount in USD |
| | Network selection: or |
| | Blockchain choice: , , or (BTC-only) |
Wallet & Node Configuration
| Variable | Default | Description |
|---|---|---|
| — | create, link, skip (non-interactive) |
| — | If set, suppress wallet prompt text |
| | JavaScript runtime: or |
| | Docker image for JS scripts |
Smart Contract Wallet (SCW) Deployment
| Variable | Default | Description |
|---|---|---|
| | RPC endpoint (no API key needed) |
| deployer address | Cold wallet address (0x...) for fund sweeps |
| | Name for the SCW wallet |
| | Blockchain: , , |
| — | BIP39 mnemonic (or read from ) |
| (testnet) | Minimum balance before deploying SCW |
| — | Skip balance polling (not recommended) |
Token Storage: Saved to
.payraminfo/headless-tokens.env after signin.
Typical Agent Workflow
1. Initial Setup (BTC-Only, No Funding Required)
export PAYRAM_EMAIL="agent@example.com" export PAYRAM_PASSWORD="agent-secure-pass" export PAYRAM_NETWORK="testnet" export PAYRAM_BLOCKCHAIN_SETUP="skip" export PAYRAM_WALLET_CHOICE="1" export PAYRAM_WALLET_QUIET="1" ./setup_payram_agents.sh
2. Add Ethereum Payments (Requires Funding)
# Generate mnemonic and show deployer address ./setup_payram_agents.sh setup-eth # Script will display deployer address like: # "Send testnet ETH to: 0x742d35Cc6634C0532925a3b844Bc9e7595f0bEeB" # Fund the address using testnet faucet: # - https://sepoliafaucet.com # - https://www.alchemy.com/faucets/ethereum-sepolia # Script automatically polls for balance and deploys when funded
3. Create Payment Link
# Interactive (prompts for project, email, amount) ./setup_payram_agents.sh create-payment-link # Non-interactive export PAYRAM_PAYMENT_EMAIL="customer@example.com" export PAYRAM_PAYMENT_AMOUNT="49.99" ./setup_payram_agents.sh create-payment-link
Payment URL Format:
http://localhost/payment?reference_id=ref_abc123&host=http://localhost:8080
⚠️ Critical: Use the exact URL printed. The
host parameter and & separator are required.
Smart Contract Wallet (SCW) Deployment
Deploy-SCW Flow
deploy-scw-flow executes:
- Generate Mnemonic: Creates BIP39 seed (saved to
).payraminfo/headless-wallet-secret.txt - Derive Deployer: Shows Ethereum address for funding
- Wait for Balance: Polls RPC until balance ≥
PAYRAM_SCW_MIN_BALANCE_ETH - Deploy Contract: Executes
scripts/deploy-scw-eth.js - Register & Link: Adds SCW to backend and associates with project
Funding the Deployer
Testnet (Sepolia):
- Use faucets: Alchemy Sepolia Faucet or SepoliaFaucet.com
- Minimum: 0.01 ETH (configurable via
)PAYRAM_SCW_MIN_BALANCE_ETH
Mainnet:
- Send real ETH to deployer address
- Recommended minimum: 0.05 ETH for reliable deployment
RPC Configuration
Default RPC Endpoints:
- ETH Testnet (Sepolia):
https://eth-sepolia.g.alchemy.com/v2/demo - ETH Mainnet: Requires your own Alchemy/Infura key
- Base Testnet:
https://sepolia.base.org - Base Mainnet:
https://mainnet.base.org
Override with:
export PAYRAM_ETH_RPC_URL="https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY"
Fund Collector (Cold Wallet)
By default, funds sweep to the deployer address. Configure a separate cold wallet:
export PAYRAM_FUND_COLLECTOR="0x1234567890abcdef1234567890abcdef12345678" ./setup_payram_agents.sh deploy-scw
Setting Up Additional Blockchains
After initial setup (which includes BTC), add EVM chains:
Ethereum Payments
./setup_payram_agents.sh setup-eth
- Sets RPC URL based on
(testnet → Sepolia, mainnet → Mainnet)PAYRAM_NETWORK - Runs full
deploy-scw-flow - Blockchain code:
ETH
Base Payments
./setup_payram_agents.sh setup-base
- Sets RPC URL based on
(testnet → Base Sepolia, mainnet → Base)PAYRAM_NETWORK - Runs full
deploy-scw-flow - Blockchain code:
BASE
Note: Both testnet and mainnet ETH use blockchain code
ETH. Network is determined by RPC endpoint.
Docker Node Runtime Behavior
When
PAYRAM_NODE_MODE=docker (default):
- JavaScript scripts run inside Docker containers
inlocalhost
is mapped toPAYRAM_API_URLhost.docker.internal
directory is mounted for access to tokens and mnemonic.payraminfo- Requires Docker daemon running with host network access
Host Mode Alternative:
export PAYRAM_NODE_MODE="host" ./setup_payram_agents.sh deploy-scw
Agent Automation Best Practices
Non-Interactive Configuration
For fully automated agent runs, always set:
export PAYRAM_EMAIL="agent@example.com" export PAYRAM_PASSWORD="secure-password" export PAYRAM_CUSTOMER_ID="from-token-file" export PAYRAM_BLOCKCHAIN_SETUP="skip" # or "eth", "base" export PAYRAM_WALLET_CHOICE="1" export PAYRAM_WALLET_QUIET="1"
SCW Balance Thresholds
If RPC has delayed balance reporting, increase threshold:
export PAYRAM_SCW_MIN_BALANCE_ETH="0.02" ./setup_payram_agents.sh deploy-scw-flow
Docker Networking
Ensure Docker has access to host networking:
- Docker Desktop: Enable "Use kernel networking for UDP" in settings
- Linux: Docker daemon runs with
by default--network=host
Files and Secrets Management
Token Storage:
— Authentication tokens (created by signin).payraminfo/headless-tokens.env
Wallet Secrets:
— BIP39 mnemonic for SCW deployment.payraminfo/headless-wallet-secret.txt
Scripts:
— BTC HD wallet generationscripts/generate-deposit-wallet.js
— Ethereum xpub derivationscripts/generate-deposit-wallet-eth.js
— Smart contract wallet deploymentscripts/deploy-scw-eth.js
⚠️ Security: Never commit
.payraminfo/ to version control. Add to .gitignore.
Troubleshooting
| Issue | Solution |
|---|---|
| API unreachable | Ensure PayRam is running: . Check . |
| 401 Unauthorized | Token expired. Re-authenticate: |
| Payment creation returns 500 | Run and . Check logs: |
| deploy-scw RPC 401 error | Don't use placeholder RPC URLs. Default (PublicNode) is used if env looks invalid. |
| INSUFFICIENT_FUNDS during deploy | Send testnet ETH to deployer address shown in logs. Wait for confirmations. |
| Payment page loads indefinitely | Use exact URL returned. Ensure param and separator are preserved (not ). |
| Docker can't reach localhost API | Use or switch to |
Reset and Reinstall
# Wipe all data and start fresh ./setup_payram_agents.sh reset-local -y # Re-run setup ./setup_payram_agents.sh
Integration with MCP Clients
Connect your AI agent to PayRam:
{ "mcpServers": { "payram": { "url": "http://localhost:8080/mcp", "apiKey": "your-api-key-from-signin" } } }
Agent Workflow:
- Agent calls PayRam MCP tools for payment operations
- PayRam processes API requests without UI interaction
- Webhooks notify agent of payment status changes
- Agent continues workflow based on payment outcomes
Related Skills
| Skill | Purpose |
|---|---|
| Standard deployment with web dashboard |
| Integrate payments into applications |
| Handle payment event callbacks |
| Checkout flow implementation |