Are you looking for a way to process payments in FileMaker? Or perhaps you just need to pull payment data and reports into your FileMaker app. We recently created an online training course to help FileMaker developers connect FileMaker to the Stripe API. We received some questions such as: What is Stripe? Why should I use Stripe? We hope this post will help answer those questions and familiarize you with Stripe.
What is Stripe?
Stripe is a leading provider of payment processing in the world of website builders like Wix, online course platforms like Thinkific, small business eCommerce stores like Shopify, and other entrepreneurial vendors or services. Many of these SaaS software offerings come pre-built to work with Stripe as a payment gateway process since having a simple easy-to-use online payment processing system is a must. Therefore, Stripe is very popular and growing daily. They have become the standard for website integration payment gateways in today's modern age of website tools. Think of Stripe as a modern-day PayPal but made for online businesses.
One of the biggest advantages of Stripe over many other options is that Stripe provides a fully integrated "Subscription Service Model" as a feature so that the vendor can offer a recurring payment option for customers. Stripe offers the ability to take, store, maintain, and securely manage credit cards while at the same time setting people up with an automatic recurring subscription record that vendors don't have to physically maintain themselves.
The primary reason for the growing popularity of Stripe is that Stripe is very affordable and provides a competitive fee structure.
Also, Stripe has a great website and is developer-friendly. Their management portal is robust, yet clean and easy to navigate. There are also advanced features that businesses need such as the ability to have multiple team members with various access levels into the Stripe merchant account. They can accommodate multiple accounts so that you can categorize your different lines of businesses all within the same master account. They have reporting, the ability to export, and well defined and mature tools that can handle both the simple needs of the entrepreneur or the advanced needs of the enterprise. Stripe offers a free developer account that is quick and easy to set up.
The Stripe API
Stripe seems to have devoted extra care to make the experience simple for the non-technical audience, while at the same time providing a strong API for the more advanced developers. It's highly adopted in the marketplace as a result of being a mature API that is well supported and well documented. Think of them as the "AWS" for payment processing. Stripe is a strong platform providing great tools with numerous options for FileMaker developers.
For those who are familiar with API integrations, the Stripe API documentation is very helpful compared to documentation (or lack thereof) from other organizations. However, with a few nuances and less prominent variations in the Stripe API features, you will likely save a lot of time by taking the Connect to Stripe API course from Productive Computing University (PCU) compared to searching through the many screens of documentation on your own.
If this is one of your first API integrations as a FileMaker developer, then our PCU course will be extremely beneficial to walk you through the undocumented and often assumed knowledge of an API integration. We provide a fully unlocked sample file to help you follow along and connect to your Stripe developer account with your solution.
Best Practices for Connecting FileMaker to the Stripe API
Aside from the core aspects of developing any FileMaker app, there are a few vital practices to set in place before your FileMaker and Stripe integration begins, if possible.
Best Practice #1 - FileMaker or Stripe?
First and foremost, you want to determine which platform (FileMaker or Stripe) is the primary and which is the secondary.
- Will all of the data, interface, and reporting be primarily in FileMaker and Stripe is simply handling the payment process behind the scenes?
- Or is Stripe the source of all customer, invoice, product, and sales data, and FileMaker is simply pulling information for reporting purposes?
- Or is it somewhere in between those two options?
Your scripting and schema will be greatly reduced when you have chosen the strategy that fits your solution best.
Best Practice #2 - Select Tables and Fields
Ensure there is clarity on exactly which fields from which tables are necessary from Stripe for your FileMaker solution.
Because Stripe contains so many modules/tables and fields, it can be very tempting to create exact replication for every table and field. While that is possible, the solution that you or your client needs most likely only requires a handful of fields in just one or two tables.
- Which modules/tables do you need?
- Which fields do you need?
Defining the scope early on will ensure your FileMaker app is streamlined and efficient.
Best Practice #3 - Frequency of Accuracy
Another factor to resolve is how frequent the synchronization of data should occur.
- Does it need to be real-time with up-to-the-second accuracy?
- Or are daily connections and comparisons of relevant fields at 3:00 am in a scheduled server-side script sufficient?
Either method is possible even though they are different processes. Knowing those details ahead of time will keep you focused on the right solution.
Best Practice #4 - Modularize Code for Efficiency
After following the first few lessons in the course through PCU, several patterns may become apparent to you that make it simple to reuse certain parts of scripts and processes. Instead of an overwhelming amount of additional tables, layouts, fields, and scripts, you will be surprised at how much can be accomplished with minimal code. You will learn to recognize the duplicate areas and how to structure scripts with variables for minimal modifications for each process.
One particular step of integration was simplified immensely by using variables and the Set Field By Name function in a loop. We reduced 36 hard-coded table dependent lines of a script to only 8 that were modularized, and they could be used on any layout referring to any table to accomplish the same task.
If you have previous API connecting experience and enjoy rummaging through API documentation, you will be able to use FileMaker to seamlessly work with all data from a Stripe account for reporting, tracking, integration, and of course, processing a payment.
However, if you are looking to quickly integrate FileMaker to the Stripe API, consider the purchase of our PCU course with the included sample file. You will see each aspect of CRUD (Create, Read, Update, Delete) completed step by step for several Stripe modules, all working together to ultimately process a payment with one click in your FileMaker solution.
Even if you are experienced with working with other APIs, this course will save you hours by visually seeing the process from start to finish while pointing out the common mistakes and pitfalls from some of the undocumented details.
The FileMaker sample app from the course covers:
- Pushing and pulling Stripe customer data
- Payment processing in one click
- Seamless integration strategies
- Review and copy scripts