Get Out of the Way, and Let Your Customers Pay

Matt Pitts
5 min readNov 8, 2019

Stop manually collecting payment information, laboring over invoices, and waiting to get paid.

There’s nothing worse than working your ass off for a sale, then making a “ham handed segue” into asking the customer for a credit card. Automated payment processing is now a commodity that can be seamlessly integrated into any type of business.

Yes, You Need Technology

It’s the end of 2019, so you must get comfortable with software developers who insist on lecturing you about the need for automated processes in your business. This particular lecture, is about automated, secure systems to collect money from your customers.

I was recently on a call for one of my businesses, with a salesperson from a company who acts as a 3rd party reputation or trust verification system. She asked what set my company apart from others in the same industry, and I highlighted the way we handle customer payment information. You see, most other businesses in that particular industry manually collect credit card numbers, and systematically run customer credit cards at a set interval. After explaining this to the sales rep and listening to her spiel, she asked for a credit card number over the phone! In fact, she indicated that was the only way to complete the transaction. In that moment I felt like Gordon Ramsey when he routinely bemoaned (with a British accent) “I could die on the back of that risotto!”

At this point you might be rolling your eyes and thinking you simply have to do it this way. Well, I’m here to show you another way. I’m going to deliver you from the purgatory of insecure spreadsheets with rows of customer credit card numbers. Unless you operate your business in a PCI Compliant facility, you really should re-evaluate this or similar methods of storing customer payment information.

In a way, this piece is about more than simply securing and processing customer payments. It is about thinking from the customer backward, instilling trust, and building a stronger business relationship. If you run a service business, you can benefit greatly from this information.

Re-imagine Your Business Model

Many service businesses render services, then get paid when those services are completed. If you perform ongoing services for a customer and manually collect payment each time, you are doing it wrong. You need to build and run your business like a CRM. This includes letting your customers sign up for your service, manage their own account and payment information, and control the frequency and duration of their services.

Outsource Storage of Customer Payment Information

Let’s be clear. You need to stop storing your customer’s payment information on your own systems. It is not secure. There are others better suited for handling that task. Let’s take Stripe, for example. Stripe stores payment information in their managed facilities. Stripe is also a PCI Level 1 Service Provider. Even better, a developer can securely integrate a payment method collection form in your website, that is powered by Stripe. With proper integration, the customer’s credit card number never touches your servers or your system. This alleviates you from maintaining separate PCI compliance. From the customer’s perspective, they can easily manage their stored payment information and have assurances the information is securely stored.

A secure form for storing customer payment information

Automate Payment Processing

Whether you have a recurring revenue model, or you bill customers less frequently, utilizing the aforementioned payment storage methods streamlines the process of billing your customers.

Scenario 1: You are a forward thinking business with a sophisticated service selection and billing system.

Ideally, you will get to a point where you are taking full advantage of the available payment processing technology. For example, you have your services integrated into your website, and your customers can start, stop, or change recurring services with ease. With this scenario, a customer adds payment information and selects services entirely from your website. Once that happens, you never have to spend your time on low value tasks such as creating invoices or tracking down payments. With modern technology like Stripe Billing, your system will automatically issue invoices, manage invoice life-cycle, and send communications to your customers.

Scenario 2: You want to get to a fully automated service selection and billing system, but you’re not quite ready.

Even if you do not have a full fledged system, you can benefit from the payment storage method listed above. If you allow your customers to store and manage their payment methods, you could use something similar to the Stripe Dashboard to manually charge the payment method on file.

Both of the scenarios listed above are far better than manually storing customer credit cards and plugging numbers into a merchant processing machine once a month. In fact, you could probably eliminate or re-purpose those human resources to higher value tasks.

Up to this point, I’ve talked about a lot of theory. However, I am a programmer, so I must add at least one sequence diagram. Following is a sequence diagram for collecting and storing customer payment information. I have implemented this flow in a serverless application. It works quite well.

Sequence diagram for collecting and outsourcing customer payment information

Here is a breakdown of each component in the diagram above.

Core App: This is the website or the application.

PCI Card Collection Service: This is a component of the application that implements the Stripe Element which securely collects and stores the customer payment instrument and returns a token. The token is what we store in the database.

BL Interceptor (Business Layer Interceptor): This is a back-end service or API used as part of the processing pipeline.

DL Interceptor (Data Layer Interceptor): This is a back-end service specifically for interfacing with the database, and relaying information back to the BL Interceptor.

Stripe Interceptor: This is a back-end service specifically for talking to Stripe and relaying information back to the BL Interceptor.

Conclusion

I encourage you to keep an open mind in 2020. Think about how to start transforming your service business into a CRM system. You are most likely great at what you do, now make your service shine by embracing better technology. Securing and streamlining the way you process and handle customer payment information is the first step in the right direction.

--

--

Matt Pitts

Ex Amazon Engineer and Founder of @AdonousTech. A technology company focused on #VoiceFirst #Serverless and #Cloud applications for small businesses