Case Study – eCommerce Integration to FastSpring

SC_VS_Visiblox
SciChart vs Visiblox Performance Battle Update
September 10, 2014

Case Study – eCommerce Integration to FastSpring

CTS Architecture

Here at ABT Software we have a number of consultancy projects, but also we specialise in product development of SciChart – High Performance WPF Silverlight Charts. SciChart is a stand-alone software plugin that is sold internationally. For our online e-commerce sales (Credit Card, wire-transfer), we primarily use FastSpring.

One of the challenges we faced was how to integrate FastSpring to our own databases, for customer storage, software licensing, sales-dashboarding and various other admin functions. For this we have developed a bespoke Client/Server application known as the Customer Tracking System, which is used internally by ABT Software for the sale of SciChart – High Performance WPF/Silverlight Charts.

Introducing the ABT Software Customer Tracking System (CTS)

The Customer Tracking System is a bespoke client/server application written by ABT Software in C# .NET designed to integrate FastSpring e-commerce to a MSSQL Server database and licensing server running in the cloud.

 

CTS Architecture

The CTS Server consumes FastSpring Sales notifications and automatically inserts Order, Customer, Purchaser, Quantity, Product-Code data directly into an MSSQL Server database in the cloud. Triggers and hooks then allow sending of licensing or welcome emails directly to purchasers/end-users.

By mirroring the FastSpring order data in a MSSQL Database, we are able to perform custom business functions on new order, or when dealing with existing orders or customers in our database. Our implementation of the CTS has various email templates for new customers, subscription renewals and allows automatic sending of license keys, activation codes and getting-started information directly to the customer.

CTS Admin Gui

The Admin Gui is a WPF4 application using the latest threading libraries (Reactive Extensions, TPL) to allow a fluid user experience. The Admin GUI connects to the CTS Server and is capable of the following functions:

  • Order Blotter – search or view orders by name, email, company, product code, purchase date range, subscription expiry date-range
  • Dashboard – view charts of Sales by day, cumulative sum of sales, product quantity sold with moving averages according to search criteria.
  • Order Amend – Add or Amend Order feature with separate purchaser / end-user details.
  • Bulk email facility – select orders via the blotter to email subscription renewal or license updates.
  • Manage product codes, download URLs
  • Manage or search product activations / software licenses
The Customer Tracking System Order Blotter. Showing orders automatically inserted from FastSpring notifications

The Customer Tracking System – Admin GUI. Showing orders automatically inserted from FastSpring notifications

Admin Gui Add/Amend Order Functionality

Admin Gui Add/Amend Order Functionality

Admin Gui  Live Search - as you type, the blotter updates

Admin Gui Live Search – as you type, the blotter updates

Admin Gui Bulk Email Feature

Admin Gui Bulk Email Feature

Admin Gui Sales Dashboard

The Admin Gui features a powerful sales dashboard, using the SciChart WPF Charting software to display orders by day (blue), 30-day moving average of orders (red) and linear trend-line (green). The Admin GUI Dashboard allows:

  • Business Health: At-a-glance business health of FastSpring sales.
  • Analysis of trends: are sales above trend, below trend? Entering a seasonal lull?
  • Usage Reporting: Cumulative sum of software licenses, active users in support subscription
  • Business Strategy Agility: Gives the user the ability to adapt sales and pricing strategies dynamically to ensure healthy revenue into the business whatever the economic weather.

CustomerTrackingSystem

FastSpring API Integration

The CTS Server uses the FastSpring API to generate coupon codes and incentivise customers to renew or update their support subscriptions. The business model of a software product often includes renewal for technical support. Using the CTS Server, we are able to tweak our renewals policy to optimize subscription-renewal sales and add a valuable revenue stream to the business. The FastSpring store integration allows:

  • Discount Code generation: Generation of Time or Product-Limited Discount Codes via the FastSpring API e.g. for product renewal
  • Personalized Checkout per-customer: Pre-population of personalized store URLs
  • Simplifies the repeat-sales process: Give a URL directly to the customer with pre-populated product, quantity, customer and optional discount
FastSpring API Integration - Give a URL Directly to the online store with prepopulated details

FastSpring API Integration – Give a URL Directly to the online store with prepopulated details

Per Developer Activation / Licensing

One of the key reasons we built the Customer Tracking System and required an external SQL Database to store user data was to allow machine-locked licensing/activation, and access to our systems during support subscription.

The SciChart Licensing Wizard performs remote activation of a License and downloads machine-locked license keys to end-users

The SciChart Licensing Wizard performs remote activation of a License and downloads machine-locked license keys to end-users

The standard business model of a software vendor selling components (plugins consumed by developers) is to allow royalty free redistribution, but charge a licensing fee per-developer during the design phase. In order to enforce this, licenses should be machine-locked (only valid on one machine) and must be requested from a central server.

The Customer Tracking System contains orders, order IDs and customer details from FastSpring. It also generates serial keys and emails them to purchasers when they buy licenses. Finally, the SciChart Licensing Wizard allows a user to claim a serial key and download a machine-locked license for their use.

In addition, our activation integrates further with the website. When an end-user activates, we can:

  • Grant access to Support Systems / Download servers for 1-year after purchase
  • Restrict access to Support Systems / Download servers after the 1-year subscription has expired
  • Be able to extend support (customer renews, or extenuating circumstances)
  • Be able to limit the usage of our software to a single developer PC (per-developer licensing/activation)

All this is possible because we have integrated our own back-end systems to store orders, customers, purchaser details from FastSpring sales via FS Notifications.

Thinking of Integrating to FastSpring?

ABT Software owns the intellectual property and rights of the CTS (Customer Tracking System) and is free to deploy this platform, customized to your business. If you are thinking of integrating to FastSpring, why not contact info@abtsoftware.co.uk and see if our consultants can help?