Node parameters and environment

payment_node parameters

Parameter

Default

Description

backend

self_custody

Where keys live and how transactions are sent. self_custody keeps an encrypted key on the robot.

chain

base-sepolia

base-sepolia for testnet, base for mainnet

signature_exchange

off

Publish and consume escrow signatures on /escrow/signatures

max_per_transaction

"10"

Largest single payment, in USDC

max_per_window

"50"

Total spend allowed per rolling window, in USDC

window_seconds

3600

Rolling window length

Caps are strings, so pass them quoted: -p max_per_transaction:="'0.10'".

The passphrase is deliberately not a parameter. Parameters can be listed by any node on the graph.

Environment variables

Variable

Purpose

ROBOPAY_PASSPHRASE_FILE

Path to a file holding the wallet passphrase. Must be mode 0600 or the node refuses it.

ROBOPAY_PASSPHRASE

Passphrase in the environment. Convenient for development, weaker than a file.

BASE_SEPOLIA_RPC_URL

Your own Base Sepolia RPC endpoint. Public endpoint used if unset.

BASE_MAINNET_RPC_URL

Your own Base mainnet RPC endpoint. Public endpoint used if unset.

ROBOPAY_LIVE_TESTS

Enables tests that talk to a real network

If neither passphrase variable is set, the node prompts on the terminal with input hidden.

Files on disk

Everything robopay stores lives under ~/.robopay/:

Path

Contents

wallets/<address>.json

Encrypted private key (scrypt + Fernet), mode 0600

idempotency.db

Payment lifecycle records

escrows.db

Escrows opened by this robot, for automatic refunds

Back up the wallet files together with their passphrases. Without both, funds in that wallet are unrecoverable.