Billing and subscriptions are a mess
Stripe edge cases, failed renewals, proration and plan changes that do not add up. I build subscription logic with Cashier that handles the cases that actually happen in production.
Laravel & SaaS development
You are building a SaaS on Laravel, or you have one that works in the demo but breaks on the unhappy paths: failed renewals, messy subscription states, onboarding that loses people. I build the billing, onboarding, and release process that hold up once paying customers arrive.
A good fit for SaaS founders and product teams who need a senior engineer to own the backend, billing, and deployment, not just close tickets.
Stripe edge cases, failed renewals, proration and plan changes that do not add up. I build subscription logic with Cashier that handles the cases that actually happen in production.
New users sign up and never reach value. I fix the signup, trial, and first-run flow so more of them activate and stay.
Every release is manual and scary. I add a proper CI/CD pipeline, migrations, and zero-downtime deploys so shipping stops being an event.
Quick early decisions now slow every feature down. I refactor the core (models, jobs, APIs) incrementally so the product can keep growing.
Timeouts, missing retries, webhooks that silently drop. I make the integration layer reliable, observable, and safe to depend on.
Stripe and Laravel Cashier: plans, trials, proration, dunning, and the failure paths, tested against real webhook events.
Signup, trials, roles, and the account and admin screens your customers and team actually use every day.
Versioned REST APIs, queued jobs, and third-party integrations built with retries, idempotency, and clear error handling.
CI/CD, database migrations, and a deploy process that lets you ship small and often without downtime.
Automated tests on the money paths and written docs, so the next change and the next developer are both safe.
Each stage is scoped and quoted before it starts, so you always know what you are paying for and what you will get.
We map the product, the billing model, and the riskiest parts. You get a clear plan and a fixed scope for the first build.
I implement billing, onboarding, or the specific feature agreed, on a branch, with tests and a staging environment.
We ship through CI/CD with migrations and a rollback path, then verify the money paths against real Stripe events.
We continue with the next feature, or move to a maintenance plan so the platform stays healthy.
SaaS pricing
from €750 one-off
A scoping engagement that turns a product idea or a stuck project into a clear, costed plan.
from €2,500 per project
Subscription billing with Laravel Cashier and Stripe, built for the failure paths as well as the happy one.
from €5,000 per project
A larger feature or MVP module: onboarding, dashboards, APIs, or integrations delivered end to end.
from €1,500 per month
Ongoing engineering for a live SaaS: fixes, small features, monitoring, and a senior engineer who knows the system.
All prices are starting points in EUR and depend on scope. Product and billing work always starts with a paid discovery so the build quote is based on your real requirements. Working remotely from Spain with clients across Europe; other currencies quoted on request.
Production platforms where I built the billing, subscription, and backend logic. Each links to a longer write-up.

Lead Full-Stack Engineer
Full SaaS subscription platform built from scratch: Stripe billing via Laravel Cashier, OAuth sign-in with Jetstream team management, Sanctum API…
View case study →
WordPress Engineer & Platform Lead
Corporate site and commercial platform built from scratch: WooCommerce subscriptions, a custom licensing REST API, 4 custom plugins, 15+ page…
View case study →How I think about Laravel subscriptions, billing, and scalable architecture.
Your site is slow, updates break things, or customers cannot complete checkout. I find the real cause, fix the critical path, and leave you with a site your team can safely operate.
Reduce repetitive work with focused tools and workflows: process documents, prepare answers, connect systems, or give your team faster access to internal knowledge.
Keep the business running while an old PHP, Laravel, or WordPress system is made safer and easier to change. Improvements are delivered in controlled steps, not as a risky big-bang rewrite.
For businesses that need someone to know the system and take care of it every month: updates, monitoring, fixes, and small improvements without briefing a new contractor each time.
I work with Irish clients remotely from Spain, with almost fully overlapping working hours. See the Ireland-specific pages for local market context and pricing.
I also work with Danish clients remotely from Spain. Spain and Denmark share the same timezone, so we overlap the entire working day. See the Denmark pages for local market context and pricing.
Yes. SaaS work is Git, CI/CD, and video calls, so it is remote by nature. I am based in Spain (CET) and overlap the full European working day, with flexibility for other timezones. You get a senior engineer who owns the work, wherever you are.
You do. Code lives in your repository, and I build against your Stripe and hosting accounts. Everything is documented and handed over. There is no lock-in and no hidden dependency on me.
Yes. A lot of this work is inheriting a Laravel app that outgrew its foundations. I start with a discovery to map the code and the risks before committing to changes.
On billing and subscriptions the details are where projects fail, and those details need a senior engineer, not a rotating team. I run a small studio and do the core work myself, so nothing important gets delegated to a junior you never meet.
Fixed scope after discovery for projects, and monthly plans for ongoing work. I avoid open-ended hourly billing so you are never surprised by the invoice.
You can take the code and run it yourself, or move to a maintenance plan. Either way you get tests, documentation, and a deploy process, so the platform is not fragile the moment I step back.
Share what you are building, where it is stuck, and your billing model. I read every message and reply personally, usually within one business day.