Fund permanent carbon removal via Stripe Climate with per-call USDC payments.
What it does
Stripe Climate's contribution endpoint lets AI agents programmatically fund permanent carbon removal projects. You send a POST request with a JSON body specifying an amount in USDC cents (1–10000, i.e. $0.01–$100.00), and the endpoint returns a unique contribution ID along with a human-readable impact description (e.g. "This contribution funds ~2.67kg of permanent carbon removal"). Payment is handled via MPP (USDC on Tempo, eip155:42431) or x402 (USDC on Base, eip155:8453).
The flow follows standard MPP/x402 challenge-response: an initial POST returns 402 Payment Required with a WWW-Authenticate: Payment header containing a JWT challenge. The caller then retries with an Authorization: Payment proof=… header to complete the transaction. Stripe contributes 100% of funds toward carbon removal projects, minus third-party fees. Contributions are not tax deductible as Stripe is not a registered charity.
The endpoint accepts only POST requests (HEAD and GET return 405). The amount field must be an integer between 1 and 10000 cents. The OpenAPI spec documents a pricing range of $0.01–$100.00 per call, corresponding directly to the contribution amount chosen by the caller.
Capabilities
Use cases
- —AI agents autonomously offsetting carbon footprint of compute workloads
- —Embedding carbon removal contributions into automated workflows or pipelines
- —Programmatic micro-donations to permanent carbon removal projects
- —Building climate-positive agent behaviors that contribute on each task completion
- —Integrating carbon removal into e-commerce or SaaS checkout flows via agents
Fit
Best for
- —AI agents that want to programmatically fund carbon removal
- —Developers building climate-aware autonomous systems
- —Small to medium per-call contributions ($0.01–$100.00)
Not for
- —Large bulk carbon credit purchases exceeding $100 per transaction
- —Tax-deductible charitable donation requirements
- —Non-USDC payment methods
Quick start
curl -i -X POST https://climate.stripe.dev/api/contribute \
-H "Content-Type: application/json" \
-d '{"amount": 100}'
# Returns 402 with WWW-Authenticate: Payment challenge
# Retry with MPP proof:
curl -X POST https://climate.stripe.dev/api/contribute \
-H "Content-Type: application/json" \
-H "Authorization: Payment proof=eyJ0eXAiOiJKV1Qi..." \
-d '{"amount": 100}'Example
Request
{
"amount": 100
}Response
{
"amount": 100,
"impact": "This contribution funds ~2.67kg of permanent carbon removal",
"contribution_id": "pi_1A2B3C4D5E6F"
}Endpoint
Quality
Full OpenAPI 3.1 schema with request/response definitions, clear pricing range, and a working example on the landing page. The probe returned 405 on HEAD/GET (expected for a POST-only endpoint), so liveness via the standard MPP probe path wasn't confirmed, but the landing page demonstrates the 402 challenge-response flow. Docs pages return 404, limiting depth.
Warnings
- —Probe returned 405 on HEAD and GET — endpoint is POST-only; the MPP probe marked is_live=false but this is expected behavior for a POST-only route
- —No dedicated documentation page found (/docs returns 404)
- —Contributions are explicitly not tax deductible
- —Liveness not directly confirmed via probe; relying on landing page example and OpenAPI spec
Citations
- —Stripe contributes 100% of funds towards carbon removal projects, minus any fees charged by third partieshttps://climate.stripe.dev
- —Contributions are not tax deductible because Stripe is not a registered charityhttps://climate.stripe.dev
- —Amount field must be an integer between 1 and 10000 (cents)https://climate.stripe.dev
- —Supports MPP (USDC on Tempo eip155:42431) and x402 (USDC on Base eip155:8453) payment protocolshttps://climate.stripe.dev
- —A 100-cent contribution funds approximately 2.67kg of permanent carbon removalhttps://climate.stripe.dev