AI agents are the next wave of buyers. StableFi lets them log in via AgentPassport SSO, pay with multi-stablecoin wallets, and settle through Visa, Stripe, and PayPal rails. We bring verified agent traffic directly to your site — so you capture sales no one else can.
Register your business. Get API keys for both verification and payments.
OAuth #1: Agents present their StableFi ID. Your backend verifies via our API.
OAuth #2: Agents pay via StableFi checkout. USDC settled to your wallet.
USDC credited instantly.* Off-ramp to bank anytime. Trust score grows.
Pick your method. All take under 5 minutes.
<!-- Add to your checkout page — that's it -->
<script src="https://stablefi.ai/js/checkout.js"></script>
<button
data-stablefi-key="sfk_live_your_key_here"
data-amount="49.99"
data-currency="USDC"
data-description="Premium API Access - 1 Month"
data-order-id="order_12345"
>
Pay with Agent Wallet
</button>// Receive payment confirmation via webhook
app.post('/webhooks/stablefi', (req, res) => {
const event = req.body;
if (event.type === 'checkout.completed') {
const { sessionId, amount, txHash, buyerAgentId } = event.data;
// Payment confirmed — fulfill the order
fulfillOrder(event.data.orderId);
// Transaction is already settled in USDC to your wallet
console.log(`Received ${amount} USDC — tx: ${txHash}`);
}
if (event.type === 'checkout.disputed') {
// Handle dispute — you have 7 days to respond
handleDispute(event.data.sessionId);
}
res.status(200).send('ok');
});StableFi gives merchants two OAuth-style verifications. First, verify the agent's identity before granting access to your site. Second, process the payment when they purchase. Think of it like checking someone's ID at the door, then running their card at the register.
Two-step flow:
Agent Your Site StableFi
| | |
|--- 1. Present ID ------->| |
| |--- 2. Verify agent ----->|
| |<-- 3. Verified ✓ --------|
|<-- 4. Access granted ----| |
| | |
| ... agent uses your service ... |
| | |
|--- 5. Purchase item ---->| |
| |--- 6. Create checkout -->|
| |<-- 7. Checkout URL ------|
|--- 8. Pay via wallet --->| |
| |<-- 9. Payment confirmed -|
|<-- 10. Order fulfilled --| |Agent presents StableFi ID → you verify via API → grant access
// STEP 1: Verify the agent's identity before granting access
// When an agent tries to log in via CLI, it presents its StableFi ID.
// Your backend calls StableFi to verify it's legitimate.
app.post('/agent-login', async (req, res) => {
const { stablefiId, sessionToken } = req.body;
// Call StableFi verification API
const verify = await fetch(
`https://stablefi.ai/api/registry/${stablefiId}/verify` +
(sessionToken ? `?token=${sessionToken}` : '')
);
const result = await verify.json();
if (!result.verified) {
return res.status(403).json({ error: 'Agent not verified by StableFi' });
}
// Set your own minimum trust score threshold
if (result.trustScore < 400) { // Require Silver+
return res.status(403).json({
error: 'Trust score too low',
required: 400,
actual: result.trustScore,
});
}
// Agent is verified — create a session on YOUR site
const session = createAgentSession({
stablefiId: result.agentId,
name: result.agentName,
trustScore: result.trustScore,
trustTier: result.trustTier,
});
return res.json({
authenticated: true,
sessionId: session.id,
message: 'Welcome, verified agent.',
});
});Agent purchases → you create checkout → USDC settled to you
This is the checkout integration from above — the agent pays via its StableFi wallet.
curl -X POST https://stablefi.ai/api/checkout \
-H "Authorization: Bearer sfk_live_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"amount": "49.99",
"description": "Premium API Access - 1 Month",
"orderId": "order_12345",
"successUrl": "https://yoursite.com/success",
"cancelUrl": "https://yoursite.com/cancel"
}'# STEP 1: Verify agent identity (Python/Flask)
@app.route('/agent-login', methods=['POST'])
def agent_login():
data = request.json
stablefi_id = data.get('stablefiId')
# Call StableFi verification API
r = requests.get(f'https://stablefi.ai/api/registry/{stablefi_id}/verify')
result = r.json()
if not result.get('verified'):
return jsonify({'error': 'Agent not verified'}), 403
if result['trustScore'] < 400: # Require Silver+
return jsonify({'error': 'Trust score too low'}), 403
# Agent is verified — create session on your site
session = create_agent_session(
stablefi_id=result['agentId'],
trust_score=result['trustScore'],
)
return jsonify({'authenticated': True, 'sessionId': session.id})# How an agent logs into YOUR site using its StableFi ID:
# 1. Agent authenticates with StableFi first
TOKEN=$(curl -s -X POST https://stablefi.ai/api/cli/auth \
-H "Content-Type: application/json" \
-d '{"agentId":"agt_xxx","agentSecret":"sfs_xxx"}' \
| jq -r '.sessionToken')
# 2. Agent presents its StableFi ID + token to YOUR site
curl -X POST https://yoursite.com/agent-login \
-H "Content-Type: application/json" \
-d "{
\"stablefiId\": \"agt_xxx\",
\"sessionToken\": \"$TOKEN\"
}"
# 3. Your site verifies with StableFi, grants access
# 4. Later, agent can pay via StableFi checkout (OAuth #2)The problem
Agents can't log into most websites. No CLI interface, MFA blocks them, and sites have no way to verify an agent is legitimate.
The solution
Add one API call to your login flow. StableFi verifies the agent's identity and returns its trust score. You decide the minimum score to accept.
The result
Your site is now open to AI agents — safely. Only verified agents with sufficient trust scores get in. Spam bots and bad actors are filtered out.
USDC lands in your wallet the moment the agent pays. No 3-day hold. No processing delay.*
Every paying agent has a Trust Score. Set minimum score thresholds for your checkout. Reject risky agents automatically.
We handle wallets, keys, and blockchain. You see USDC in your balance. Off-ramp to your bank account anytime.
Every transaction increases your merchant Trust Score. Higher score = more agent buyers trust you.
For digital goods, funds are held in escrow until the agent confirms delivery. Protects both sides.
Built-in chargeback and refund flow. If an agent disputes, StableFi arbitrates within 7 days.
Powered by Circle's Refund Protocol smart contract on Coinbase Base. StableFi acts as the on-chain arbiter — funds are escrowed in a smart contract, not in our database. Every dispute is resolved on-chain.
Buyer USDC goes into Circle's Refund Protocol contract — not StableFi's database. Funds are locked until delivery is confirmed or lockup expires.
Merchants must submit proof of delivery (content hash, download log, tracking number) before settlement releases. SHA-256 hashed for immutability.
Fraud, unauthorized, duplicate, not received, not as described, cancellation — standard reason codes with clear evidence requirements.
Digital goods: buyer has 72 hours to dispute. Physical goods: 14 days. If no dispute, funds auto-release to merchant.
Weekly settlement with risk-tiered holds. New merchants: 7-14 day hold + 10-20% reserve. Trusted merchants (90+ days): no hold, no reserve.
Each merchant is classified by category code (MCC). Low risk (SaaS, data): 0% reserve. High risk (prediction markets, gaming): 15-20% reserve.
| Merchant Age | Low Risk (SaaS, Data) | Medium Risk (Travel, Gaming) | High Risk (Prediction, Crypto) |
|---|---|---|---|
| New (<30 days) | Weekly, 7-day hold, 10% reserve | Weekly, 7-day hold, 15% reserve | Weekly, 14-day hold, 20% reserve |
| Established (30-90d) | Weekly, 3-day hold, 5% reserve | Weekly, 7-day hold, 10% reserve | Weekly, 7-day hold, 15% reserve |
| Trusted (90+ days) | Weekly, no hold, no reserve | Weekly, 3-day hold, 5% reserve | Weekly, 7-day hold, 10% reserve |
Two repos. One for agent login, one for payments. Plus a brochure to share with your team.
OAuth #1: AgentPassport SSOOAuth #2: Agent PaymentCompare: accepting AI agent payments via StableFi vs traditional payment methods.
| Metric | Credit Card | PayPal | StableFi |
|---|---|---|---|
| Transaction fee | 2.9% + 30¢ | 3.49% + 49¢ | 1.0 – 2.0% |
| Settlement time | 2-3 business days | 1-2 business days | Instant (USDC) |
| Chargeback risk | High | High | On-chain escrow |
| Monthly fee | $0 – $25 | $0 – $30 | $0 |
| International | +1-3% cross-border | +1.5% FX fee | Same rate globally |
| Agent identity verification | None | None | AgentPassport + TrustScore |
| Dispute resolution | 60-90 days | 30-45 days | On-chain, 7-14 days |
On a $100 transaction: Credit card costs $3.20, PayPal costs $3.98, StableFi costs $1.00 – $2.00
High-volume merchants earn reduced fees and priority settlement.
No monthly fees. No setup fees. Just a percentage per transaction.
During registration, you'll provide a Coinbase wallet address where StableFi settles your earnings in USDC weekly. You can use an existing Coinbase account or we'll guide you through creating one. Off-ramp to your bank account anytime via Coinbase.
For US merchants earning over $600/year, StableFi will issue a 1099-K for tax reporting purposes. Settlement records are available in your merchant dashboard for your accountant.
StableFi does not calculate, collect, or remit sales tax. Merchants are solely responsible for adding applicable sales tax to their listed prices before checkout. The amount charged to the buyer's wallet is the final amount — no additional tax will be added or collected after the transaction. Merchants must integrate their own sales tax calculator (e.g., Avalara, TaxJar) into their pricing. Failure to collect required sales tax is the merchant's liability.
Get API keys instantly. Start accepting agent payments in minutes.
For payment processors and sales organizations
Already have merchant relationships? Become a StableFi ISO (Independent Sales Organization) and bring your existing merchants onto the agent payment rails. Earn residual income on every transaction your merchants process through StableFi.