Complete solution for handling per-PC purchase & license activation

Just in case someone is interested:

I have a fairly complete solution for desktop apps regarding purchase (via FastSpring or Paypal) and serial code activation, similar to how the Xojo IDE does it, with tying purchased serial codes to unique computers.

It consists of several parts:

  • One part goes into your app. It’s mainly a window that checks if a valid license is installed and instructs the user to purchase one.
  • The other runs on your server. It receives purchase notifications from FastSpring (or Paypal) and adds them to a database. It also listens to the app and delivers license files to the app.

It’s quite secure as well, with SSL comms between client and server. The server app, when running on OSX, even uses the Keychain to protect your keys in case someone hacks into it.

Sounds like a good topic for a conference session, a magazine article or a blog post at least.

Indeed. I even thought of suggesting that for the next Xojo/MVS conf in Munich, but forgot. :slight_smile:

You can think about it and let me know…,

What does the server run? Is it a Xojo app that requires a certain license to build?

@Thomas Tempelmann : very nice.

@Tim Parnell: since Thomas asked about normal apps in his questions and not webapps I don’t think so.

I developed it all in Real Studio 2012, using Desktop target. Could be converted into Console or Webapp as well, I guess.
That’s the FastSpring solution, which does not require SSL.

The Paypal part requires TLS 1.2 and thus either a slightly newer Xojo version, or, like I did it, has to be run as a CGI app so that the Apache(?) server handles the SSL part.