Francesco De Giorgio Software engineer · Pisa, Italy
IT EN
Let's talk

Licences that sell themselves, in five languages.

buy.aesoftech.com is the portal AE SoftTech uses to sell DaVinci Deluxe, the software garages rely on to diagnose a car's antipollution systems. I built it on my own, from the database to the payment screen: buyers pick their language and currency, pay by card or PayPal and get their licence, with nobody on the other side having to answer an email.

The problem

Selling software is easy, collecting the money worldwide is not

The buyer is a garage, not a purchasing office

DaVinci Deluxe gets installed by a mechanic, between one car on the lift and the next. If getting a licence takes an email, a quote and a bank transfer, the sale stretches out for days and somebody drops off along the way. The portal has to close the purchase while the person still wants to make it, not three days later.

Every country brings its own currency

The company is Australian and the customers are everywhere: prices in Australian dollars, euros, pounds or US dollars, five different languages and billing details that change from one place to another. Holding all of that together with a price list kept by hand means getting it wrong sooner or later.

A licence is not a parcel you ship

It lasts a year, then it has to be renewed. Sometimes extended, sometimes updated to a newer version. It is not an object that goes into a basket and leaves the warehouse: it is a living thing, with an expiry date, an owner and a history somebody has to be able to reconstruct months later.

What I built

A shop, a licence registry and a back office, in the same place

Not a generic e‑commerce bent into doing licensing. A portal written for that job: from the way a licence is created to how a reseller finds it again three months later. I handled all of it, front‑end and back‑end.

1

Buying is a short path

Two routes on the home page and nothing else: take a new licence, or extend and renew the one you already have. The price shows up in the right currency, the payment closes there and the licence is yours. No step needs somebody, somewhere, to reply.

2

Five languages, four currencies

English, French, Italian, German and Spanish. Australian dollars, euros, US dollars and pounds. This is not a translation glued on at the end: language and currency are parameters of the portal, so prices, documents and messages come out right instead of being corrected afterwards.

3

Three jobs, not three permission levels

People buying for themselves, resellers buying for their own customers with their own discounts and billing, and the administrator keeping an eye on everything. Three different ways of using the same platform, each seeing only the screens that job actually needs.

Sign‑up Licence Payment Invoice Renewal

Under the hood

It looks like a basket, it is really a licence lifecycle

From the outside there are two buttons: buy, renew. From the inside it is the question that actually matters, which is whether that licence exists, who owns it, how long it is valid for and what has to happen the moment a payment goes through.

One licence, four things you can do to it

Issue, extend, renew, update. Each one starts from a different state and produces another, and the licence code stays the thread holding the customer's history together: who bought what, when, and how much time is left.

Licence lifecycle

Two ways in, one outcome

Stripe for cards, PayPal for people who prefer their own account. They are two worlds with two ways of saying that a payment succeeded: the portal normalises them, so the licence is issued once and always the same way, whichever side the money came from.

Stripe · PayPal

Resellers with price lists of their own

A reseller has one discount on new licences and a different one on renewals, a currency of their own and their own billing details, tax number included. The price they see is not the list price with a percentage taken off by hand: it is calculated from their conditions, every time.

Multi‑currency · Invoicing

A record of what happened

Every event that matters ends up in a log the administrator can read, split by type: information, warnings, errors, payments, server trouble. When a customer writes "I paid and nothing arrived", the answer is in there rather than in somebody's memory.

React · Vite · Tailwind

What is left

Delivered in 2024, and working without me ever since

The engagement closed in 2024, the portal did not: it is still the channel AE SoftTech sells DaVinci Deluxe through, so much so that the company site, when it comes to sales, does nothing but send people over there. At the bottom of every page it says who developed it, and that is the kind of signature I prefer: I do not need to tell you about it, it reads by itself.

emails asking for the price/ transfers to reconcile/ codes sent by hand/ price lists per country

This is the project I bring up when somebody asks whether I can really take people's money online. It is not a page with a payment button: it is a digital product with an expiry date, a reseller network and four currencies, and those are exactly the things you need if you sell subscriptions, courses or anything that renews. If your problem looks like this one, the right page is websites and e‑commerce; if instead the hard part is running what you have already sold, have a look at booking and management platforms.

What this means for you

The same machinery, on your product

If you sell licences or subscriptions

A piece of software, a service, an access that lasts and then expires. The hard part is not taking the money: it is always knowing who is entitled to what and until when, and making the renewal a click instead of a negotiation that starts again every year. I have built that part once already, end to end.

Licences · Renewals · Stripe · PayPal

If you sell outside your own country

Languages, currencies, tax details and local resellers are not a detail to add at the end: they change the shape of the product. Building them in from day one costs little, bolting them on afterwards costs a lot. If selling abroad is in your plans, it is worth saying so on the first day.

5 languages · 4 currencies · Reseller network