Payment gateway selection affects every transaction your business processes. The wrong choice means higher fees eating into margins, frustrated customers abandoning checkouts, or development headaches that slow product launches. The right choice enables smooth payments, reasonable costs, and flexibility to grow.
Stripe, Square, and PayPal dominate the market with different strengths. Each excels in particular scenarios while presenting trade-offs in others. Understanding these differences enables informed decisions aligned with business priorities.
Understanding Payment Gateway Costs
Payment processing fees seem simple but involve multiple components that vary by transaction type, card network, and business characteristics.
Fee Components
Interchange fees - Set by card networks (Visa, Mastercard), paid to issuing banks. Varies by card type (rewards cards cost more), transaction type (card-present vs online), and merchant category.
Assessment fees - Charged by card networks for using their infrastructure. Typically 0.13-0.15%.
Processor markup - The payment gateway’s margin on top of interchange and assessment.
Most processors offer either:
Flat-rate pricing - Single percentage regardless of card type. Simple but often more expensive for businesses with primarily debit transactions.
Interchange-plus pricing - Interchange fee plus fixed markup. More complex but potentially cheaper for higher volumes.
Stripe: Developer-First Platform
Stripe built its reputation on developer experience and has expanded into a comprehensive financial infrastructure platform.
Pricing Structure
| Transaction Type | Fee |
|---|---|
| Online card payments | 2.9% + $0.30 |
| In-person card payments | 2.7% + $0.05 |
| ACH payments | 0.8% (max $5) |
| International cards | +1.5% |
| Currency conversion | +1% |
| Disputes/chargebacks | $15 |
Volume discounts available for businesses processing over $80,000/month.
Key Features
Developer experience: Stripe’s API documentation sets the industry standard. Clear examples, comprehensive SDKs, and excellent error messages reduce integration time.
// Clean, intuitive API design
const stripe = require('stripe')(process.env.STRIPE_SECRET_KEY);
const paymentIntent = await stripe.paymentIntents.create({
amount: 2000, // $20.00 in cents
currency: 'usd',
payment_method_types: ['card'],
metadata: { order_id: '12345' },
});
Payment methods:
- Credit and debit cards
- ACH bank transfers
- SEPA for European banks
- Buy now, pay later (Klarna, Afterpay)
- Digital wallets (Apple Pay, Google Pay)
- Local payment methods by country
Subscription billing: Built-in support for recurring payments, usage-based billing, trials, and proration.
const subscription = await stripe.subscriptions.create({
customer: 'cus_123',
items: [{ price: 'price_monthly_plan' }],
trial_period_days: 14,
});
Connect platform: Enable marketplace payments, splitting funds between multiple parties.
Radar fraud prevention: Machine learning fraud detection included at no extra cost. Advanced Radar rules available for additional fee.
Financial reporting: Sigma provides SQL access to transaction data. Revenue recognition tools help with accounting.
Stripe Strengths
API quality - Best-in-class documentation and SDK design.
Feature breadth - Invoicing, subscriptions, connect, identity verification, issuing, treasury all available.
Global reach - Supports 135+ currencies, 47 countries.
Reliability - Strong uptime track record.
Innovation pace - Consistently releases new capabilities.
Stripe Limitations
In-person payments - Terminal hardware limited compared to Square.
Phone support - Available only at higher volumes or with premium support.
Account stability - Some businesses report unexpected account holds.
Pricing transparency - Custom pricing requires negotiation.
Square: Unified Commerce Platform
Square started with in-person payments and expanded to comprehensive business tools.
Pricing Structure
| Transaction Type | Fee |
|---|---|
| In-person card payments | 2.6% + $0.10 |
| Online card payments | 2.9% + $0.30 |
| Manually keyed payments | 3.5% + $0.15 |
| Invoices (paid online) | 3.3% + $0.30 |
| ACH payments | 1% (min $1) |
| Disputes/chargebacks | None |
No monthly fees for basic service. Premium features carry subscription costs.
Key Features
Hardware ecosystem: Square offers purpose-built hardware for various retail scenarios:
- Square Reader (magstripe/chip): Free
- Square Reader (contactless/chip): $59
- Square Stand (iPad integration): $149
- Square Terminal (all-in-one): $299
- Square Register (full POS): $799
Point of sale software: Free POS application with inventory, employee management, and customer tracking.
Integrated business tools:
- Square Appointments (scheduling)
- Square for Restaurants (food service POS)
- Square for Retail (inventory management)
- Square Payroll
- Square Banking (business accounts, loans)
- Square Marketing (email, loyalty)
Developer API:
const { Client, Environment } = require('square');
const client = new Client({
accessToken: process.env.SQUARE_ACCESS_TOKEN,
environment: Environment.Production,
});
const { result } = await client.paymentsApi.createPayment({
sourceId: 'card_nonce_from_form',
amountMoney: {
amount: 2000n, // $20.00 in cents
currency: 'USD',
},
idempotencyKey: 'unique_key_for_this_payment',
});
Square Strengths
In-person payments - Best hardware options and POS software.
Small business tools - Integrated suite reduces tool sprawl.
No chargeback fees - Rare among processors.
Quick setup - Start accepting payments immediately.
Transparent pricing - Clear flat-rate fees.
Square Limitations
International availability - Operates in fewer countries than Stripe.
API documentation - Good but not Stripe-level.
Enterprise features - Less suited for complex custom implementations.
Account holds - Reports of sudden holds affecting businesses.
Online payment features - Less sophisticated than Stripe for pure e-commerce.
PayPal: Brand Recognition and Reach
PayPal offers unmatched brand recognition and the ability to pay without entering card details.
Pricing Structure
| Transaction Type | Fee |
|---|---|
| Standard online payments | 3.49% + $0.49 |
| PayPal Checkout (guests) | 3.49% + $0.49 |
| PayPal Checkout (PayPal wallet) | 3.49% + $0.49 |
| Venmo payments | 3.49% + $0.49 |
| Advanced Credit/Debit Card | 2.59% + $0.49 |
| In-person card payments | 2.29% + $0.09 |
| QR code payments | 2.29% + $0.09 |
| International payments | +1.5% |
PayPal’s pricing has increased significantly. The fixed fee ($0.49) particularly impacts small transactions.
Key Features
PayPal Checkout: One-click checkout for users with PayPal accounts. Guest checkout available for card payments.
PayPal Credit/Pay Later: Built-in financing options for customers.
Venmo integration: Accept Venmo payments (US only) through PayPal integration.
Seller protection: Coverage against unauthorized transactions and item-not-received claims.
PayPal Commerce Platform: Marketplace payment splitting and partner payouts.
API Integration:
const paypal = require('@paypal/checkout-server-sdk');
const environment = new paypal.core.LiveEnvironment(
process.env.PAYPAL_CLIENT_ID,
process.env.PAYPAL_CLIENT_SECRET
);
const client = new paypal.core.PayPalHttpClient(environment);
const request = new paypal.orders.OrdersCreateRequest();
request.requestBody({
intent: 'CAPTURE',
purchase_units: [{
amount: {
currency_code: 'USD',
value: '20.00',
},
}],
});
const order = await client.execute(request);
PayPal Strengths
Brand trust - Many consumers prefer PayPal for unfamiliar merchants.
Buyer accounts - 400+ million active accounts enable one-click checkout.
Venmo access - Reach younger demographic preferring Venmo.
Seller protection - Dispute handling can favor merchants.
International presence - Available in 200+ markets.
PayPal Limitations
Higher fees - More expensive than competitors for most transaction types.
Fixed fee impact - $0.49 per transaction hurts small purchases.
Account freezes - Well-documented issues with sudden holds.
Developer experience - API documentation and SDKs lag behind Stripe.
Customer service - Mixed experiences reported.
Brand perception - Some view PayPal as less professional for B2B.
Comparison Summary
Fee Comparison (Standard Online Transaction)
| Provider | Rate | $25 Transaction | $100 Transaction | $500 Transaction |
|---|---|---|---|---|
| Stripe | 2.9% + $0.30 | $1.03 (4.1%) | $3.20 (3.2%) | $14.80 (3.0%) |
| Square | 2.9% + $0.30 | $1.03 (4.1%) | $3.20 (3.2%) | $14.80 (3.0%) |
| PayPal | 3.49% + $0.49 | $1.36 (5.4%) | $3.98 (4.0%) | $17.94 (3.6%) |
PayPal costs noticeably more, especially for smaller transactions.
Feature Comparison
| Feature | Stripe | Square | PayPal |
|---|---|---|---|
| Online payments | Excellent | Good | Good |
| In-person payments | Good | Excellent | Limited |
| API quality | Excellent | Good | Fair |
| Subscription billing | Excellent | Good | Fair |
| Marketplace payments | Excellent | Good | Good |
| International | 47 countries | 8 countries | 200+ markets |
| Hardware options | Limited | Excellent | Limited |
| Brand recognition | Moderate | Moderate | High |
Use Case Recommendations
Pure e-commerce/SaaS: Stripe provides the best combination of features, API quality, and pricing for online businesses.
Retail with some online: Square excels when in-person transactions are significant. The integrated POS and business tools add value.
Consumer trust concerns: PayPal button can increase conversion for unfamiliar brands. Consider offering alongside other options.
International B2C: Stripe handles multi-currency and local payment methods well. PayPal provides reach in markets Stripe does not serve.
Marketplaces: Both Stripe Connect and PayPal Commerce Platform support complex payout scenarios. Stripe offers more flexibility.
Multiple Gateway Strategy
Many businesses use multiple gateways strategically:
Primary + PayPal: Use Stripe or Square as primary processor. Offer PayPal as checkout option for customers who prefer it.
// Checkout options component
function PaymentOptions({ cart }) {
return (
<div className="payment-options">
<StripeCheckout cart={cart} />
<div className="divider">or</div>
<PayPalButton cart={cart} />
</div>
);
}
Geographic routing: Route transactions to different processors based on customer location to minimize international fees.
Failover: Secondary processor provides redundancy during outages.
Integration Considerations
Development Time
Stripe’s documentation and SDKs minimize integration time. Expect:
- Basic checkout: 1-2 days
- Subscriptions: 3-5 days
- Marketplace payments: 1-2 weeks
Square and PayPal require somewhat more effort due to less polished documentation.
Maintenance
Consider ongoing maintenance burden:
- API version upgrades
- PCI compliance requirements
- SDK updates
- Webhook handling
Stripe’s stability and clear deprecation policies reduce maintenance overhead.
Testing
All three provide sandbox/test environments:
- Stripe: Comprehensive test mode with test card numbers
- Square: Sandbox environment with test credentials
- PayPal: Sandbox accounts for testing
Making the Decision
Choose Stripe when:
- Developer experience matters
- Building SaaS or subscription products
- Need sophisticated payment flows
- International expansion planned
Choose Square when:
- In-person payments are significant
- Want integrated business tools
- Simple setup preferred
- Hardware quality matters
Choose PayPal when:
- Brand trust increases conversion
- Venmo demographic important
- Operating in markets others do not serve
- Buyer protection perception matters
Consider multiple when:
- Different customer segments prefer different methods
- Geographic requirements vary
- Redundancy is important
Payment gateway selection significantly impacts both costs and customer experience. Evaluate based on your specific transaction profile, technical requirements, and growth plans rather than defaults or trends.






