Comparison

Stripe vs Nano Empire: payment rails for humans vs agents

Stripe is the standard for charging people. nano-empire-tollbooth meters payments between code and autonomous agents. They solve different problems, and they can work together.

Most payment infrastructure assumes a human at checkout: a card number, a billing address, a subscription a person signs up for, and a chargeback window if something goes wrong. That model is mature and well served by Stripe. The machine economy looks different. An agent calls a function thousands of times an hour. There is no checkout page, no card, and no human to click confirm. What you need there is per-call metering, escrow, and an audit trail. That is the gap nano-empire-tollbooth fills.

Side by side

DimensionStripenano-empire-tollbooth
Primary payerHumans at checkoutCode and AI agents
Unit of billingOrder, subscription, invoiceSingle function or message call
Typical amountDollars to thousandsFractions of a cent and up
IntegrationSDK, hosted checkout, webhooksOne Python decorator
Failure handlingRefunds, disputesEscrow refund on call failure
Budget controlAccount levelPer-agent daily caps
AuditDashboard, reportsAppend-only JSONL ledger
Test modeTest keysPaper mode, same code paths
SettlementCard networks, bankx402 hook, or your own backend

This is informational and not financial advice.

They are not mutually exclusive

The tollbooth does not replace a payment processor. It meters and escrows calls, then hands settlement to whatever you choose. You can wire Stripe as the settlement backend behind the tollbooth: the tollbooth counts and locks each call, and Stripe moves the actual money on a schedule. The x402 hook is optional and exists for crypto settlement. Without it, the tollbooth still locks escrow and writes the ledger, and you settle through Stripe, an invoice, or internal bookkeeping.

What the integration looks like

# Meter the call with the tollbooth
from nano_empire_tollbooth import monetize

@monetize(price_usd=0.01)
def enrich(record: dict) -> dict:
    return run_pipeline(record)

# Settle the accrued total elsewhere on your own schedule,
# for example a monthly Stripe invoice built from the ledger.

Which one do you need

If you sell to people, you need Stripe or an equivalent. If your code or your agents call functions that cost money to run and you want to attribute, cap, and recover that cost per call, you need a metering layer like the tollbooth. Many teams end up with both: Stripe at the human edge, the tollbooth at the machine edge.

Meter your first function in five minutes.

Read the quickstart