Skip to main content

Veltro API

Veltro is non-custodial USDC payment infrastructure for Web3 organizations, on Base. This is the reference for the public REST API (/api/v1/*) — the same API the Veltro AI agent itself uses under the hood.

Non-custodial by design: Veltro never holds your funds and never signs a transaction on your behalf. Every POST endpoint that moves money returns unsigned calldata ({ to, data, value }) or a hosted checkout URL — you (or your own wallet-holding system) sign and broadcast it. Veltro cannot touch your funds even if it wanted to.

Base URL

https://veltro.online/api/v1

Quickstart

  1. Create an API key from your dashboard → API keys. Keys look like vltro_live_... and carry read, write, or admin scopes.
  2. Call any endpoint with Authorization: Bearer <key>.
curl https://veltro.online/api/v1/payment-links \
-H "Authorization: Bearer vltro_live_xxxxxxxxxxxx"
curl -X POST https://veltro.online/api/v1/payment-links \
-H "Authorization: Bearer vltro_live_xxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"amount_usd": 100,
"description": "Invoice #42",
"destination_address": "0xYourWalletAddress"
}'

Every response is JSON, wrapped as { "data": ... } on success or { "error": ... } on failure.

What you can do

ResourceWhat it does
Payment linksCreate/list hosted USDC payment pages
InvoicesLine-item invoices with an auto-generated payment link
SubscriptionsRecurring USDC billing plans
DonationsPublic donation jars
PayoutsBatch or equal-split USDC payouts to multiple recipients
TreasuryRead your linked wallet addresses
InsightsAggregate counts across your account
Collect checkoutHeadless checkout for embedding in your own app (public-safe key)
ChatTalk to the Veltro AI agent programmatically — it can call every tool above for you

Next: Authentication · Errors & rate limits