Senior Next.js Developer for Stripe Checkout
Worldwide
We run a golf tee box sponsorship business across 52 courses in the UK and US, with 800+ live sponsorships. Local businesses sponsor a hole on a 12-month rolling agreement, paid monthly or annually by Stripe subscription. Sponsorships are currently sold over email — sign, then pay, then artwork, across several days. People get stranded between stages. We're replacing that with a single-session self-checkout. The work A multi-step checkout: details and hole selection, terms acceptance, payment, artwork, digital pass. Built as a standalone app, served under the main site via path rewrite. The interesting parts: Concurrent inventory locking. Holes are finite and run at 86% utilisation. Two people must not be able to buy the same hole. Multi-item subscriptions. One subscription per order, one subscription item per hole, each independently cancellable, with proration on add and remove. Future-dated first charges. Holes sold before course installation take card details now and charge months later — which means off-session mandates with SCA completed at setup. Volume pricing calculated on a marginal ladder then blended evenly across line items. UK and US, GBP and USD, with VAT and US sales tax. You will be given a complete 18-section technical specification. Commercial decisions are settled. We are not asking you to design the business logic — we are asking you to build it correctly. Required -Next.js (App Router) and TypeScript, deployed on Vercel -Stripe Billing in production — subscriptions, subscription items, proration, Payment Element, Stripe Tax -Webhook handling done properly — idempotency, replay, out-of-order delivery -Concurrency control on shared inventory -Airtable API or comparable external data source as system of record -Mobile-first. Almost all our traffic is Meta ads on phones. Mobile Safari is the primary target, not an afterthought. Nice to have: -Off-session mandates with SCA at setup -Meta Conversions API, server-side -Apple/Google Wallet pass generation How this will run -Short call -Paid two-day trial task — a real piece of the build, most likely the locking mechanism or the webhook handler -Milestone-based engagement with review gates -Independent senior code review of the payment path before launch (arranged by us — please be comfortable with this) Please answer in your application 1. Link me to a live product you built with recurring subscriptions. 2. How do you handle webhook idempotency and out-of-order delivery? 3. How would you stop two customers buying the same inventory item at the same moment? 4. Tell me about a payment bug you shipped, and how you found it. Question 4 matters most. Everyone who has shipped billing at volume has one. Non-negotiable We own the code outright and can host it anywhere. No proprietary platforms, no lock-in.
$4,000.00
Fixed-price- IntermediateExperience Level
- Remote Job
- Ongoing projectProject Type
Skills and Expertise
Activity on this job
- Proposals:50+
- Last viewed by client:yesterday
- Interviewing:4
- Invites sent:0
- Unanswered invites:0
About the client
- United KingdomManchester1:56 PM
- $11K total spent28 hires, 10 active
- 360 hours
Explore similar jobs on Upwork
How it works
Create your free profileHighlight your skills and experience, show your portfolio, and set your ideal pay rate.
Work the way you wantApply for jobs, create easy-to-by projects, or access exclusive opportunities that come to you.
Get paid securelyFrom contract to payment, we help you work safely and get paid securely.
About Upwork
- 4.9/5(Average rating of clients by professionals)
- G2 2021#1 freelance platform
- 49,000+Signed contract every week
- $2.3BFreelancers earned on Upwork in 2020
Find the best freelance jobs
Growing your career is as easy as creating a free profile and finding work like this that fits your skills.
Trusted by