Stip

seller

Wrap your API so agents pay with HTTP 402. Native USDC goes to your Core address. Stip takes 0.5% as a facilitator fee (floor 0.001 USDC, cap 0.25 USDC). The fee is not taken from principal.

withPayment

Copy this around your route. Set payTo to your Core (or MetaMask) address. Circle native USDC only. /api/dummy is Stip's own demo — this snippet is for your API.

import { withPayment } from "../lib/seller/middleware";

export async function GET(req: Request) {
  return withPayment({
    req,
    resource: {
      url: "https://your-api.example/v1/thing",
      description: "Your paid endpoint",
      mimeType: "application/json",
    },
    payTo: "0xYOUR_CORE_ADDRESS",
    handler: async () => Response.json({ ok: true }),
  });
}
What happens
  1. No PAYMENT-SIGNATURE → HTTP 402 with accepts for Avalanche C-Chain native USDC.
  2. Agent retries with an EIP-3009 authorization. Stip's till checks the operator policy, then settles. Deny codes are 403, not 200.
  3. You receive the full advertised USDC amount. Stip's 0.5% is a facilitator fee.