Affiliate system with Claude, NocoDB and Resend: zero dependency, zero platform
When I launched the affiliate program for one of the brands I develop, I did what most people do. I subscribed to a well-known platform. Pretty interface, fair pricing on paper. Three months later, the bill climbed with the number of affiliates, exports were locked down, and any customization went through a support team that answered in three days.
I decided to take the reins back. Not out of ideology. For simplicity and cost. In two weeks with Claude, I rebuilt a lighter, cleaner system, tailored exactly to how I work.
The problem
Commercial affiliate platforms are designed around a standard affiliate: they fill in a form, get a link, see a dashboard, collect commissions. Fine, as long as you stay inside that standard.
My program is not standard. I have different tiers by profile. Commission rules that change by product. Affiliates who need a contract translated into their language. And above all, an onboarding that is not a cold form but a real conversation.
On the external platform, every exception cost energy. Workarounds, exports, re-imports, explanations. I ended up spending more time fighting the tool than supporting my affiliates. Bad sign.
What I set up
Three building blocks, tied together with a thin wire. Deliberately minimal.
NocoDB for the database. NocoDB is an Airtable-style interface, self-hosted, without artificial limits or pricing traps. I store affiliates, their tiers, their commissions, their signed documents. Three tables, a few views, that is it. An affiliate can be found by name, email, promo code, in a second.
Resend for email. Each step of the journey triggers a templated email. Welcome, affiliate link, contract to sign, gentle follow-up, monthly report. Emails are written in advance, multilingual, and sent via Resend. No bloated marketing platform, no cluttered interface. Just clean templates and a clean history.
Claude to orchestrate. Between the two, Claude Code. I asked it to write the scripts that link NocoDB and Resend. Each key action is a small script. For example: "a new affiliate validates their questionnaire, create their row in NocoDB, send the welcome email, generate their unique promo code." No no-code that breaks when you change a field. Simple code I can read and understand.
A lean dashboard. An HTML page served by a small server. It queries NocoDB and shows what I want to see: active affiliates, monthly commissions, top ten, dormant ones. Nothing else. I open it three times a day.
The result
First number, cost. I moved from a monthly subscription that grew with volume to near-zero hosting for NocoDB and pay-per-send emails via Resend. Over a year, the savings are clear.
Second number, time. Recurring operations that used to take several hours a week now fit in a thirty-minute slot. I no longer export, re-import, or correct the same information twice.
Third, harder to measure but more important: I no longer endure my tool. When I need to add a rule, I add it. When I want to change an email, I change it. The system bends to my needs, not the other way around.
How you can replicate this
You do not need 250 affiliates for this to be worthwhile. From about twenty active affiliates on, a generic platform costs more in friction than in subscription. And it blocks any real customization.
Start by mapping your journey. Sketch on paper the steps an affiliate goes through with you. Signup, validation, contract, follow-up, payment, reactivation. Without that map, you will code blind.
Then stand up the database. NocoDB self-hosted, or a managed instance if you do not want to run infrastructure. Three tables are enough at first: affiliates, commissions, events. Add nothing else until you need it.
Finally, ask Claude to code the orchestration scripts one by one. One script per key action. That granularity is deliberate. You can test, fix, replace one script without breaking the rest.
One caveat. This kind of system only works if you are strict with data. An email with an extra space, a miscalculated commission, and trust erodes quickly. Put guardrails from day one. Do not hand trust to the AI. Hand it the computation.
If you want to see what such a system looks like, I can show you in thirty minutes.
Read next
- Affiliate onboarding questionnaire the front door this whole system relies on.
- Managing 250 affiliates with AI the bigger picture on the pilot side.
- Claude, Claude Code, Cowork: what's the difference? to pick the right tool for each task.
— François
