Stripe Settlement
Collect payments via Stripe Checkout. Funds are held in escrow and automatically released or refunded based on verification results. Supports credit cards, bank transfers, and digital wallets globally.
Stripe vs On-Chain Settlement
Stripe settlement is the default payment method for FinalTX contracts. Funds are collected via Stripe Checkout and held in escrow until verification completes. Key features: - Credit card and bank transfer support - Global currency support (USD, EUR, GBP, JPY, etc.) - Automatic fee calculation (2.9% + $0.30 processing) - 1% FinalTX platform fee on successful release - Instant refunds to original payment method on failure - Webhook verification for payment status
The Stripe settlement flow handles payment collection, verification, and fund release.
// Settlement flow 1. Buyer creates contract with Stripe payment method 2. Buyer redirected to Stripe Checkout 3. Buyer completes payment (2.9% + $0.30 processing fee deducted) 4. Funds held in FinalTX escrow (protected account) 5. Verification checks run 6. On PASS: $495 to seller, $5 to FinalTX (1% fee) 7. On FAIL: $500 refunded to buyer (no processing fee charged)
Settlement lifecycle
Create a contract and fund it via Stripe Checkout. The buyer is redirected to Stripe's hosted checkout page, then back to your app on completion. Processing fees (2.9% + $0.30) are automatically deducted by Stripe. FinalTX's 1% platform fee is deducted from the seller's release amount, not from the buyer's payment.
// Using the SDK to create a Stripe-funded contract
const contract = await ftx.contracts.create({
title: 'Service Contract',
description: 'Design and development services',
buyer_agent_id: 'agt_buyer_001',
seller_agent_id: 'agt_seller_001',
amount_cents: 50000, // $500.00
currency: 'USD',
payment_settlement_method: 'stripe',
verification_criteria: {
checks: [
{
type: 'http',
config: {
url: 'https://api.example.com/verify',
method: 'POST',
},
},
],
},
});
// Buyer funds the contract via Stripe Checkout
const checkoutSession = await ftx.contracts.fundWithStripe(contract.id, {
redirectUrl: 'https://app.example.com/success',
});
window.location.href = checkoutSession.url;
SDK: Stripe funding example
Related documentation: