Stop Tunneling. Start Building. Introducing paddle-mock-api: The Localhost Hero for Paddle Billing

by Madalin Ignisca, Co-Founder / CTO

Let's be real: Integrating billing systems is usually a nightmare. You're stuck in a loop of waiting for sandbox webhooks, fighting with ngrok tunnels that expire every hour, and polluting your staging environment with thousands of test users named test_1234@gmail.com. It's slow. It's brittle. It kills your flow state.

It's time to cut the cord.

Enter paddle-mock-api. We built a lightweight, zero-dependency Go mock server that simulates the Paddle Billing API right on your machine. No internet required. No latency. No nonsense.

🚀 Star the Repo & Download on GitHub

The "Works on My Machine" Power Move

paddle-mock-api isn't just a static JSON responder. It is a logic-aware simulation of the Paddle ecosystem designed for high-velocity local development and rock-solid E2E testing. Here is why it belongs in your toolkit:

1. Zero Bloat. Single Binary.

We hate dependency hell as much as you do. This tool requires:

  • No Database.
  • No Docker containers eating your RAM.
  • No complex configuration files.

It is a single Golang binary. You download it, you run it, it works.

# It's this simple
curl -L -o paddle-mock-api \
  https://github.com/vlah-software-house/paddle-api-mock/releases/latest/download/paddle-mock-api-darwin-arm64
chmod +x paddle-mock-api
./paddle-mock-api

Boom. You have a full billing API running on port 8081.

2. Time Travel Included

Testing subscription lifecycles is historically painful. How do you test a trial expiration? Wait 14 days? Manually hack a database?

With our Admin API, you are the master of time. You can force a subscription to travel from trialing to active, or trigger a payment failure to see how your UI handles a past_due state.

# Fast forward time instantly
POST /admin/advance-time/{subscription_id}

3. Webhooks That Actually Work

Stop waiting for the internet. Register a local webhook URL, and paddle-mock-api will fire events immediately when you change state.

And yes, we sign them. The mock server calculates the HMAC-SHA256 signature using a test secret (pdl_test_signing_secret), so your signature verification logic runs exactly as it would in production.

4. CI/CD Ready

Because it's a standalone binary with seeded data (Alice, Bob, and the "Yieldly" products), you can drop this into your GitHub Actions or GitLab CI pipelines. Run your entire billing integration test suite in seconds, not minutes. No external network calls means no flaky tests.

Under the Hood

We support the core flows you actually need to build a SaaS:

  • Products & Prices: Fully queryable.
  • Customers: Create, update, and retrieve.
  • Subscriptions: Pause, resume, cancel, and charge.
  • Transactions: Validate payment flows.

Authentication is built-in (Bearer token), but if you just want to hack something together fast, pass the -no-auth flag and go wild.

Get It Now

This is open source. It's free. It's built to make your life easier. Stop letting billing integration hold your roadmap hostage.

Happy Coding! 🛠️

Disclaimer: This is a community project for local testing and is not affiliated with Paddle. Always test against the real Paddle Sandbox before deploying to production.

More articles

One Script to Rule Them All: Automating Ubuntu VM Setup for Claude Code Sessions

Spinning up a fresh VM for AI-assisted development means installing Docker, Go, Node.js, Python, and Claude Code — then repeating the whole ritual every time. We built setup-claude-vm.sh: a single idempotent bash script that gets any Ubuntu 24.04 machine ready for Claude coding sessions in minutes, not hours.

Read more

Announcing etsy-mock-api v0.1.0: Stress-Free Development for Etsy Apps

Developing integrations for e-commerce platforms is high-stakes work. One wrong API call during testing can accidentally delete a listing, mess up inventory counts, or trigger a real email to a confused customer. Today, we are excited to announce the first official release (v0.1.0) of the Etsy API Mock Server (etsy-mock-api), a robust, open-source tool designed to solve these exact problems.

Read more

Tell us about your project

Our offices

  • Spain
    N-340, 141
    29680, Estepona, Malaga
  • Romania
    Strada Cristian 21
    557260, Sibiu
  • USA
    555 NE 30th St
    33137, Miami, FL