Billing & Payment Flow

How signup, payment, and plan upgrades work behind the scenes.

How It Works

SnapAPI uses Stripe for all payment processing. Your API key is created instantly on signup, and plan upgrades are applied automatically after successful payment.

Key principle: Your API key is always usable immediately after signup. If you selected a paid plan, the key starts on the Free tier and is automatically upgraded once payment is confirmed (usually within seconds).

Signup Flow

Here's exactly what happens when you sign up:

Free Plan

  1. You enter your email and click "Get API Key"
  2. Your API key is created immediately (Free tier: 100 screenshots/month, 5 req/min)
  3. A welcome email is sent with your key and plan details
  4. You can start making API calls right away

Paid Plan (Starter, Pro, Business)

  1. You select a plan and enter your email
  2. Your API key is created immediately with Free tier limits
  3. You are redirected to Stripe Checkout to complete payment
  4. After successful payment, Stripe sends a webhook to our server
  5. Your key is automatically upgraded to the paid plan (higher limits apply immediately)
  6. No welcome email is sent until payment is confirmed
Important: If you close the Stripe payment page without paying, your key remains on the Free tier (100 screenshots/month). You are not charged, and you can upgrade later at any time.

After Payment

Once Stripe confirms your payment (typically instant for card payments):

Limit Enforcement

SnapAPI enforces two types of limits on every request:

1. Rate Limit (per minute)

A sliding-window rate limiter (powered by Redis) prevents burst abuse. Each plan has a per-minute request cap:

PlanRequests/min
Free5
Starter30
Pro60
Business120

When exceeded, the API returns 429 Too Many Requests with headers indicating when to retry.

2. Monthly Quota

Each screenshot request is counted against your monthly quota. The quota is checked before every screenshot is taken:

You can monitor your usage in real-time via the GET /v1/usage endpoint or the X-Credits-Remaining response header.

What counts toward quota?

Cancellation & Downgrade

FAQ

I signed up for a paid plan but didn't complete payment. What happens?

Your key works on the Free tier (100 screenshots/month). You won't be charged. You can complete the upgrade anytime by calling POST /v1/upgrade with your API key.

How fast does the upgrade take effect after payment?

Typically within 1-5 seconds. Stripe sends a webhook immediately after successful payment, and we process it in real-time.

Can I use my API key while waiting for payment to process?

Yes. Your key is active immediately with Free tier limits. Once payment confirms, limits upgrade automatically.

What if my card is declined or payment fails?

Your key stays on its current plan. Stripe will retry failed payments according to their Smart Retries schedule. If all retries fail, your plan is downgraded to Free.

How do I check my current plan and usage?

Call GET /v1/usage with your API key in the X-API-Key header. It returns your plan, usage count, and remaining quota.

Do I get a new API key when I upgrade?

No. Your existing key is upgraded in-place. Same key, higher limits.