DEV Community

Alex Spinov
Alex Spinov

Posted on

Stripe Has a Free API: The Payment Infrastructure That Powers the Internet

Every 4th online purchase you make probably goes through Stripe. And their API is one of the best-documented, most developer-friendly APIs ever built.

What Makes Stripe's API Special?

Stripe's API isn't just a payment gateway. It's a complete financial infrastructure:

  • Payments — cards, wallets, bank transfers, crypto
  • Subscriptions — recurring billing with trials, prorations, usage-based pricing
  • Connect — marketplace payments, split payments, platform fees
  • Invoicing — automated invoice generation and collection
  • Identity — KYC verification
  • Tax — automatic tax calculation for 50+ countries

And the free tier is generous: you only pay per transaction (2.9% + 30¢), not for API access.

The API in Action

# Create a payment intent
curl https://api.stripe.com/v1/payment_intents \
  -u sk_test_your_key: \
  -d amount=2000 \
  -d currency=usd \
  -d "payment_method_types[]"=card

# Create a customer
curl https://api.stripe.com/v1/customers \
  -u sk_test_your_key: \
  -d email="customer@example.com"

# Create a subscription
curl https://api.stripe.com/v1/subscriptions \
  -u sk_test_your_key: \
  -d customer=cus_123 \
  -d "items[0][price]"=price_456
Enter fullscreen mode Exit fullscreen mode

The Webhook System

Stripe's real power is webhooks. Every event in your payment lifecycle triggers a webhook:

// Express webhook handler
app.post('/webhook', express.raw({type: 'application/json'}), (req, res) => {
  const event = stripe.webhooks.constructEvent(
    req.body, req.headers['stripe-signature'], webhookSecret
  );

  switch (event.type) {
    case 'payment_intent.succeeded':
      // Fulfill order
      break;
    case 'customer.subscription.deleted':
      // Revoke access
      break;
    case 'invoice.payment_failed':
      // Send dunning email
      break;
  }
  res.sendStatus(200);
});
Enter fullscreen mode Exit fullscreen mode

Payment succeeded, subscription canceled, invoice failed, dispute created — you get notified for everything.

Why Developers Choose Stripe

1. Test mode — Full sandbox with test card numbers. No real money needed for development.

2. SDKs everywhere — Node, Python, Ruby, Go, Java, .NET, PHP. Plus mobile SDKs.

3. Stripe CLI — Test webhooks locally:

stripe listen --forward-to localhost:3000/webhook
stripe trigger payment_intent.succeeded
Enter fullscreen mode Exit fullscreen mode

4. Documentation — Often cited as the gold standard for API docs. Every endpoint has runnable examples.

Hidden Gems

  • Stripe Billing Portal — Let customers manage their own subscriptions (zero UI code)
  • Payment Links — No-code payment pages via API
  • Stripe Tax — Automatic tax calculation: automatic_tax: { enabled: true }
  • Meter API — Usage-based billing for SaaS

Real Numbers

A SaaS founder switched from PayPal to Stripe. Failed payment recovery (Smart Retries) alone recovered 8% of churned revenue — $4,200/year for a small app.


Building payment integrations or need data from payment platforms? Check out my automation tools or reach out at spinov001@gmail.com for custom solutions.

Top comments (0)