Monero via wallet RPC

Run monero-wallet-rpc, watch incoming transfers, and issue VaderVPN tokens once blocks finalize.

Automation outline

  1. monerod + wallet RPC sync with the network.
  2. Create integrated address / payment ID per order.
  3. Listen for incoming_transfers with confirmations ≥ threshold.
  4. Mint token + respond to customer.

Integration steps

Use the cloned Monero source to run the wallet RPC server service-side.

Daemon

Run monerod

Build from pay/monero or install packages. Start with ./monerod --detach --restricted-rpc on localhost.

Wallet RPC

Expose merchant wallet

Launch monero-wallet-rpc --wallet-file merchant --rpc-bind-port 18083 --rpc-login. Enable HTTPS or reverse proxy for production.

Webhook

Confirm & mint

Poll get_payments using integrated addresses or payment IDs. Once confirmations ≥ 10, call the token generator.

Wallet RPC quick reference

Method Purpose
create_address Create subaddress per customer order.
get_address Retrieve address metadata for receipts.
get_payments Fetch payments by payment ID (integrated addresses).
incoming_transfers List incoming outputs with confirmation counts for reconciliation.

Source for wallet RPC lives at pay/monero/src/wallet/wallet_rpc_server.cpp, and API definitions in src/rpc/core_rpc_server_commands_defs.h.

Manual fallback intake

Use this while automations are staged.

XMR address 4AeJUW7XCKfAJBbkFCw9bQaau7P3CVCigB9q69HFoU1hgwqQuinEzzrebEPgJKwFitfoA5ZKK1po4ExFD4EsJn6XC2F7C55

Estimated total: $1.00 (base $1/month)

We poll your transfer and drop the token here after the required confirmations.