Paddle Billing Sandbox Guide

Learn how to simulate payments, configure sandbox webhooks, and utilize test credit cards.

Paddle Sandbox Overview

Paddle Sandbox is a fully-featured, separate environment that replicates production. You can register for a sandbox account at sandbox-login.paddle.com .

Important Check: Make sure your `.env` contains `PADDLE_ENVIRONMENT=sandbox` during testing, and you are using API keys starting with `paddlesandbox_`. Do not mix production secrets with sandbox configs.

Test Credit Card Numbers

Use the following card credentials inside the Paddle checkout overlay to simulate successful transactions:

BrandCard NumberExpiry DateCVVTest Country
Visa4000 0020 0000 0000Any future dateAny 3 digitsUnited States (US)
Mastercard5105 1051 0510 5100Any future dateAny 3 digitsUnited Kingdom (GB)
American Express3700 0000 0000 002Any future dateAny 4 digitsUnited States (US)
Diners Club3000 0000 0000 02Any future dateAny 3 digitsUnited States (US)
JCB3528 0000 0000 0002Any future dateAny 3 digitsJapan (JP)

Configuring Webhooks

To synchronize transactions and subscription statuses (such as cancellations, upgrades, or updates) with your local database, you must route Paddle webhook events to this platform:

  1. Go to your **Paddle Sandbox Dashboard** → **Developer** → **Webhooks**.
  2. Click **Add endpoint** and input your public server address:https://your-domain.com/api/webhooks/paddle
  3. Select the following event subscriptions:
    • subscription.created
    • subscription.updated
    • transaction.completed
  4. Copy the generated **Webhook Secret Key** and set it in your local environment file as `PADDLE_WEBHOOK_SECRET`.