Scaling a European Fundraising Platform by Ashish SharmaScaling a European Fundraising Platform by Ashish Sharma

Scaling a European Fundraising Platform

Ashish Sharma

Ashish Sharma

Scaling WhyDonate to Support 1M+ Users and €1.5M+ in Monthly Transactions

Overview

WhyDonate is a European crowdfunding and online fundraising platform that enables individuals, charities, and nonprofit organizations to launch fundraising campaigns and collect donations globally.
As the platform grew, its backend needed to handle increasing traffic, payment volume, campaign activity, and operational complexity without sacrificing performance or reliability.
I worked as a Lead Backend Engineer, helping scale the platform to support more than 1 million users, over 4 million API requests per day, and approximately €1.5 million in monthly payment volume.

The Challenge

The platform’s growth created several technical challenges:
Increasing API traffic and database load
Slow response times on frequently accessed endpoints
High-volume payment and webhook processing
Long-running operations blocking API requests
Maintaining reliable recurring donation and payout workflows
Managing custom domains and global traffic
Deploying backend changes without disrupting active fundraising campaigns
The system needed to remain fast and reliable while processing sensitive payment operations across multiple countries and payment providers.

My Role

I was responsible for designing, improving, and maintaining core backend systems across the platform.
My work included:
Backend architecture and API development
Database query and index optimization
Payment integrations and webhook processing
Queue-based background processing
Caching and performance improvements
Cloud infrastructure and deployment automation
Monitoring, logging, and failure recovery
Custom domain, DNS, and SSL automation

The Solution

API and Database Optimization

I analyzed slow API endpoints and optimized database queries, indexes, and application-level processing.
Frequently requested data was cached using Redis, while expensive operations were moved away from synchronous request flows.
These improvements reduced API latency from approximately 350 milliseconds to under 100 milliseconds for key endpoints.

Scalable Background Processing

Long-running tasks were moved into queue-based workers using RabbitMQ.
I implemented retry handling, failure logging, and idempotent processing for operations such as:
Payment webhook handling
Transaction reconciliation
Search index synchronization
Email and notification processing
Reporting and scheduled jobs
Monthly payout workflows
This prevented resource-intensive work from slowing down customer-facing APIs.

Payment Infrastructure

I built and maintained payment flows for one-time donations, recurring donations, subscriptions, refunds, and payouts.
The platform integrated with providers including Stripe, Mollie, and PayPal.
Payment webhooks were processed using signature verification, idempotency controls, and reconciliation logic to prevent duplicated or missing transactions.

Cloudflare and Global Delivery

Cloudflare was used for routing, security, caching, custom domains, and global request handling.
I worked on systems for automatically configuring nonprofit custom domains, validating DNS records, provisioning SSL certificates, and routing requests to the correct campaign or organization.

Deployment and Reliability

I improved the deployment workflow using Docker, GitHub Actions, and automated CI/CD pipelines.
Deployment time was reduced from approximately six minutes to around one minute, allowing the team to release changes faster while minimizing production risk.
I also introduced better monitoring, structured logging, and error reporting to make production issues easier to identify and resolve.

Results

The resulting backend infrastructure supported:
1M+ registered users
4M+ API requests per day
Approximately €1.5M in monthly payment volume
Sub-100ms response times for key APIs
Reliable one-time and recurring donation processing
Automated payouts and transaction reporting
Custom fundraising domains with automated SSL
Faster and safer production deployments
The improvements created a scalable backend foundation capable of supporting continued growth across Europe while keeping fundraising and payment operations reliable.

Technology Stack

Node.js, TypeScript, Python, MySQL, PostgreSQL, Redis, RabbitMQ, Elasticsearch, Stripe, Mollie, PayPal, Cloudflare Workers, AWS, Docker, GitHub Actions, REST APIs, Webhooks, and CI/CD.
Like this project

Posted Sep 20, 2025

Scaled WhyDonate to support 1M+ users, 4M+ daily API requests, and €1.5M+ in monthly payments with reliable, high-performance backend systems.