Skip to main content

Checkout

The Torque checkout system provides a comprehensive, multi-payment solution for businesses to accept payments from customers through various methods including cryptocurrency, traditional payment apps, and card payments.

Overview

Key Features

Multi-Payment Support

  • Cryptocurrency Payments: Direct crypto transfers (USDC, USDT, AAVE, etc.)
  • Traditional Payment Apps: Venmo, Revolut, Cash App, Wise
  • Card Payments: Credit/Debit card processing (Visa, Mastercard, Amex)
  • ZKP2P Integration: Fiat-to-crypto conversion through zero-knowledge proof technology

Business Benefits

  • Global Reach: Accept payments from customers worldwide
  • Low Fees: Competitive transaction fees across all payment methods
  • Real-time Processing: Instant payment confirmation and settlement
  • Multi-Currency: Support for multiple cryptocurrencies and fiat currencies
  • Subscription Support: Recurring payment management for subscription products

Payment Methods

Cryptocurrency Payments

Supported Currencies

  • USDC: USD Coin (most popular)
  • USDT: Tether
  • AAVE: Aave Protocol Token
  • cbBTC: Coinbase Bitcoin
  • stETH: Lido Staked ETH
  • PYUSD: PayPal USD
  • USDS: Sky USD
  • sUSDS: Savings USDS
  • USD0: Usual USD
  • GHO: Aave GHO
  • cbETH: Coinbase Ether
  • wstETH: Wrapped Staked ETH
  • weETH: Wrapped eETH
  • mETH: Mantle ETH
  • tBTC: Threshold BTC
  • MORPHO: Morpho Protocol
  • COMP: Compound
  • LINK: Chainlink

Crypto Payment Flow

  1. Customer Selection: Customer selects preferred cryptocurrency
  2. Wallet Connection: Customer connects their crypto wallet
  3. Transaction Creation: System creates token transfer transaction
  4. Confirmation: Customer confirms transaction in wallet
  5. Settlement: Funds transferred directly to business wallet

Traditional Payment Apps

Supported Platforms

  • Venmo: Popular US payment app
  • Revolut: European fintech platform
  • Cash App: Square's payment solution
  • Wise: International money transfer service

ZKP2P Integration

  • Fiat to Crypto: Convert fiat payments to cryptocurrency
  • Zero-Knowledge Proofs: Privacy-preserving payment processing
  • Real-time Conversion: Instant fiat-to-crypto conversion
  • Global Accessibility: Support for international customers

Card Payments

Supported Cards

  • Visa: Most widely accepted
  • Mastercard: Global payment network
  • American Express: Premium card network

Card Processing Flow

  1. Card Collection: Secure card details collection
  2. Payment Intent: Create payment intent with processor
  3. Token Conversion: Convert fiat to cryptocurrency
  4. Settlement: Transfer tokens to business wallet

Checkout Implementation

Basic Integration

Checkout Session Creation

// Create checkout session
const { sessionId, checkoutSessionId } = await createCheckoutSession({
businessId: business._id,
productId: product._id,
customerEmail,
customerName: `${shippingAddress.firstName} ${shippingAddress.lastName}`.trim(),
quantity,
variantId: selectedVariant?._id,
totalAmount: finalTotal,
currency: product.currency,
shippingAddress: product.requiresShipping ? shippingAddress : undefined,
})

Payment Processing

// Handle different payment methods
if (selectedPaymentMethod === 'crypto') {
await handleCryptoPayment(sessionId, checkoutSessionId)
} else if (selectedPaymentMethod === 'card') {
await handleCardPayment(sessionId, checkoutSessionId)
} else {
await handleZKP2PPayment(sessionId, checkoutSessionId)
}

Advanced Features

Subscription Management

// Subscription product configuration
const subscriptionProduct = {
isSubscription: true,
paymentPlans: [
{
id: 'monthly',
name: 'Monthly Plan',
price: 29.99,
interval: 'month',
intervalCount: 1,
trialDays: 7,
description: 'Monthly subscription with 7-day free trial'
},
{
id: 'yearly',
name: 'Yearly Plan',
price: 299.99,
interval: 'year',
intervalCount: 1,
trialDays: 14,
description: 'Annual subscription with 14-day free trial'
}
]
}

Discount Codes

// Apply discount code
const discountResult = await applyDiscountCode({
code: discountCode,
businessId: business._id
})

if (discountResult.valid) {
setDiscountAmount(discountResult.discountAmount)
toast.success('Discount code applied successfully!')
}

Multi-Product Cart

// Cart mode checkout
const cartData = {
items: [
{
productId: 'prod_123',
quantity: 2,
variant: 'large'
},
{
productId: 'prod_456',
quantity: 1,
variant: 'blue'
}
]
}

International Support

Shipping Address Management

Country-Specific Fields

const countries = {
US: {
name: 'United States',
fields: ['address', 'city', 'state', 'zipCode'],
stateType: 'state',
zipType: 'ZIP',
hasState: true,
hasZip: true
},
CA: {
name: 'Canada',
fields: ['address', 'city', 'province', 'postalCode'],
stateType: 'province',
zipType: 'Postal Code',
hasState: true,
hasZip: true
},
// ... more countries
}

Dynamic Form Fields

  • State/Province: Required for countries with states
  • Postal Codes: Country-specific postal code formats
  • Address Validation: Real-time address validation
  • Country Flags: Visual country selection with flags

Currency Support

Multi-Currency Pricing

// Product pricing in multiple currencies
const product = {
price: 99.99,
currency: 'USD',
localPricing: {
EUR: 89.99,
GBP: 79.99,
CAD: 129.99
}
}

Real-time Conversion

  • Live Exchange Rates: Real-time currency conversion
  • Price Display: Show prices in customer's local currency
  • Payment Processing: Convert to business's preferred currency

Security Features

Payment Security

Encryption

  • End-to-End Encryption: All payment data encrypted
  • PCI Compliance: Card data handled securely
  • Tokenization: Sensitive data tokenized
  • Secure Storage: Encrypted data storage

Fraud Prevention

  • Risk Assessment: Real-time fraud detection
  • Velocity Checks: Transaction frequency monitoring
  • Geolocation: Location-based risk assessment
  • Device Fingerprinting: Device identification

Customer Data Protection

Privacy Controls

  • Data Minimization: Only collect necessary data
  • Consent Management: Clear consent for data collection
  • Right to Deletion: Customer data deletion rights
  • Data Portability: Export customer data

Compliance

  • GDPR: European data protection compliance
  • CCPA: California privacy law compliance
  • PCI DSS: Payment card industry standards
  • SOC 2: Security and availability standards

Analytics & Reporting

Payment Analytics

Transaction Metrics

  • Success Rate: Payment completion percentage
  • Average Order Value: Mean transaction amount
  • Payment Method Distribution: Usage by payment type
  • Conversion Rate: Checkout completion rate

Revenue Tracking

  • Daily Revenue: Daily income tracking
  • Monthly Trends: Month-over-month growth
  • Currency Breakdown: Revenue by currency
  • Refund Analysis: Refund rates and reasons

Customer Insights

Behavior Analytics

  • Checkout Abandonment: Where customers drop off
  • Payment Preferences: Preferred payment methods
  • Geographic Distribution: Customer locations
  • Device Usage: Mobile vs desktop usage

Performance Metrics

  • Page Load Times: Checkout page performance
  • Payment Processing Time: Transaction speed
  • Error Rates: Payment failure analysis
  • Customer Satisfaction: Feedback and ratings

Configuration

Business Settings

Accepted Currencies

// Configure accepted cryptocurrencies
const businessSettings = {
acceptedCurrencies: ['USDC', 'USDT', 'AAVE', 'cbBTC'],
defaultCurrency: 'USDC',
currencyConversion: true
}

Payment Method Configuration

// Enable/disable payment methods
const paymentMethods = {
crypto: true,
venmo: true,
revolut: true,
cashapp: true,
wise: true,
card: false // Disable card payments
}

Shipping Configuration

// Shipping settings
const shippingConfig = {
requiresShipping: true,
shippingCost: 9.99,
freeShippingThreshold: 50.00,
supportedCountries: ['US', 'CA', 'GB', 'DE', 'FR']
}

Product Configuration

Subscription Products

// Subscription product setup
const subscriptionProduct = {
isSubscription: true,
paymentPlans: [
{
id: 'basic',
name: 'Basic Plan',
price: 19.99,
interval: 'month',
intervalCount: 1,
trialDays: 7,
maxCycles: null // Unlimited
}
]
}

Product Variants

// Product variants
const productVariants = [
{
id: 'small',
name: 'Small',
price: 29.99,
inventory: 100
},
{
id: 'large',
name: 'Large',
price: 39.99,
inventory: 50
}
]

Getting Started

Setup Checklist

Business Configuration

  • Complete business profile
  • Set up accepted currencies
  • Configure payment methods
  • Set up shipping options
  • Configure tax settings

Product Setup

  • Create product catalog
  • Set up product variants
  • Configure subscription plans
  • Set up discount codes
  • Test checkout flow

Integration

  • Install checkout widget
  • Configure webhooks
  • Set up analytics
  • Test payment methods
  • Go live

Testing

Test Mode

  • Test API Keys: Use test credentials
  • Test Payments: Process test transactions
  • Test Webhooks: Verify webhook delivery
  • Test Analytics: Check tracking accuracy

Test Scenarios

  • Successful Payments: Test all payment methods
  • Failed Payments: Test error handling
  • Refunds: Test refund processing
  • Subscriptions: Test recurring payments

Next Steps


Need help with checkout setup? Contact our support team at support@torque.fi or check our integration guides.