Contribution to Open Source — FreeScout Stripe Integration for Building a Better Customer Support System using FreeScout
There are many customer support platforms available in the market. Each with its unique features and benefits. Freshdesk and Help Scout are some of them.
Both platforms provide a customer support system that offers a range of features, including ticket management, a knowledge base, form widgets, automation tools, and more.
While Freshdesk and Help Scout are both great options for businesses looking for cloud-based customer support solutions, they can be expensive for some smaller teams. That's where FreeScout comes in.
Introducing A Free and Open Source Customer Support Solution – FreeScout
FreeScout is a free and open-source customer support solution that offers features like email management, ticket management, and team collaboration tools.
It can be installed on your own server. You have complete control over your data and can customize the software to meet your specific needs.
FreeScout is a great option for teams that want a cost-effective customer support solution that can be customized to their specific needs.
weDevs' Exploration of Using FreeScout
At weDevs, we’re currently exploring using FreeScout as our support platform for some of our plugins and SaaS apps, including weMail, Appsero, and WPERP.
While managing support with FreeScout, we faced a challenge determining which users are free and which are paid/pro.
Without proper tools or data, it's tough to identify the priority level of each support request. This is where our “Stripe Module for FreeScout” comes in.
The Challenge of Prioritizing Support Tickets for Free and Pro Users
Managing customer support for free and pro users can be challenging, especially when prioritizing support tickets based on the customer's subscription level. That's where a tool like FreeScout can be beneficial.
As a company that builds WordPress plugins and manages a lot of support tickets every day – we faced the challenge of prioritizing support tickets for free and pro users a lot.
As weDevs has always been a regular contributor to open-source development, we planned to build a module for FreeScout that will help us and others to determine whether a customer is a paid or free user by displaying their Stripe payment data while managing their tickets. If you want, you can use this free module for managing your client support too.
The Solution: Stripe Module for FreeScout
The Stripe module we’ve built provides the necessary payment information for a customer, including when they paid and their invoice file, and thus you will be able to identify if they are pro or free users.
If they use your software's free version, no payment data will be shown.
This way, your support team can quickly identify which customers use the pro version and prioritize support accordingly.
How to Use the Stripe Module
This module hasn’t been added to the FreeScout module directory, so you must self-host the stripe module. It is open-source and free.
Let’s start with installing the plugin on your site and using it to fetch Stripe user data.
You can find the module hosted on GitHub as an open-source project under the MIT license. You can install the module for FreeScout either as a Laravel package or Laravel module.
Install the Stripe module for FreeScout as a Laravel package
Add weDevsOfficial/Laravel-FreeScout-Stripe-Module package to your dependencies of the Laravel app
composer require "weDevsOfficial/Laravel-FreeScout-Stripe-Module"
After requiring the package, add the service provider of this package to providers in config/app.php
'providers' => array( // ... Modules\Stripe\Providers\StripeServiceProvider::class, )
Install the Stripe module for FreeScout as a Laravel Module
You can also use this package as a FreeScout module. First you need to clone or download this package and put it inside the modules folder. Then need to install the stripe client via composer.
composer require stripe/stripe-php
After Installing, you must run migrations.
Running the migrations
After requiring the package, You need to publish the migration file. You can publish it with the following command.
php artisan vendor:publish --tag=stripe-migration
After publishing the migration file, You need to run the migration command
php artisan migrate
The Laravel FreeScout Stripe Module package uses laravel caching for Stripe data. You can change the caching timeout from the config file. You can publish it with the following command.
php artisan vendor:publish --tag=stripe-config
After publishing them, you can find config files (stripe.php) in your config folder. Now you can modify caching timeout according to your needs.
Activating the module
To connect with Stripe, log in to your FreeScout account and go to Manage, then Modules. If the module were placed successfully, it would show as an installed module. You will be able to activate or deactivate the module form here.
Setting Up the Stripe Secret Key
Copy your Stripe secret key from your Stripe account, go to FreeScout>Mainbox>Mailbox Settings, and open this setting then Stripe Secret key. Paste your secret key to this field. The necessary Stripe data is now ready to be transferred through this module.
Checking User by Stripe Data
When a user creates a support ticket, the ticket arrives in FreeScout and you can easily check the products stripe payment history of the user in the sidebar like the picture below.
The tickets from free users seeking support will not show any payment history in the sidebar.
FreeScout offers a customizable customer support solution for businesses of any size. At weDevs, we struggled to prioritize support tickets for free and pro users while managing our plugins and SaaS apps.
We developed the Stripe Module for FreeScout, allowing support teams to quickly identify paid and free users by displaying their Stripe payment data. Now you can effectively manage your customer support and provide better service quickly.
With this contribution to FreeScout, weDevs aims to make customer support more accessible and efficient for businesses worldwide.
weDevs has been helping businesses to access affordable and customizable solutions for years. We are contributing to the growth of the open-source community, which is critical for the future of software development.
weDevs' contributions to open-source development reflect our commitment to making technology, especially Open Source Development, more accessible and beneficial for everyone.