It's in-house. A license has some info tied to the user (which ultimately has to be the Twitter user connected via Twitter). Then all that is signed with a private key ECDSA. The app has the public key and can verify the signature. Many libraries are available for handling cryptographic signatures.
So basically a license is public info, the app enforces that the logged in user must match the user in the license.
How about sales taxes in the US. Do you keep records to when you hit tax nexus and start collecting it then? Manually or using some service? I'd be interested in learning how you approached this problem.
Indeed. The original version was C#/WPF and worked on windows only. I got so many requests for a Mac version and knew it was decent demand. So I switched to electron: 1 code base works for Mac and windows plus has automatic updates for when bug fixes are released etc.
And sure enough Mac users account for 30% for the revenue today.
Another advantage is that it runs completely on the user's computer. So I have no database or back-end to maintain. There is only a small server to generate licenses + handle some analytics the app emits both built on ASP.NET. The only data I store is in a Microsoft Azure table. I pay around $2 a month for all azure costs.
The app was developed for use for myself. Then I put it online for other to use for free. The advantage (and probably missing part in the original description) is that the app was free for +5 years before I added a paid tier. So we already had a decent user base.
It depends on your situation but if you are in the US I'd create an LLC and do business with that. It takes a few minutes if you use services that file for you.
Second will be dealing with sales tax and it's a nightmare. If you sell to customers in Europe you need to pay VAT to different countries at different rates. Same goes for US states that tax very differently. We moved recently to paddle.com which acts as a reseller and so they take care of all sales tax collection and remittance (they are the one selling the app after all). We moved away from PayPal and so far it's been very smooth.
My app Twitter Archive Eraser (https://martani.github.io/Twitter-Archive-Eraser) used to be free, then I added a donation button and people, while barely donated, used to say that this is something they would have paid for!
I worked on a paid tier (learnt a tremendous amount about actually selling an app, integration with payment processors, licensing, more legal stuff than I wanted to etc.)
Almost from the get go, it started making +$3k/mo. With more changes and offering a Mac version along a Windows version, it averages around +$7k/mo of revenue consistently. I'm the only person on it and have a full time job. Barely need to make code changes and it requires minimal effort for customer support.