You’ve probably heard the term 'API' mentioned often. But what do APIs actually do and why are they so important? In this guide, we’ll walk you through the basics. We'll explain exactly what to look for when choosing a payments API to support your business processes.
API stands for Application Programming Interface. APIs act as a contract between two pieces of software which they use to agree on how to communicate. When you see a Twitter feed or Google Maps widget embedded in another website; that’s all achieved via APIs. Delivery services, such as Deliveroo, use an API to determine your location, and another API to book food from the restaurant. And finally, yet another API gets the driver to deliver the food for you.
An API can be seen as the middleman between a computer engineer and the application they create. The middleman accepts messages, passes them on as requests and then returns data to the message sender. A user could ask the middleman to return information, such as a list of customer names. Alternatively the user could send information to the middleman, for example when creating a new subscription for a customer.
What makes a great API?
With so many APIs out there, how do you choose one that’s right for your business payment needs? Also, when you’re building your own integration, especially as a beginner, you need to know how easy the API will be to work with.
Here are some key aspects to keep in mind to help you gain a good indication of how well an API will perform.
Clear documentation - This should be comprehensive and regularly updated. GoCardless has complete reference documentation which is automatically updated whenever we make changes to the API, plus a series of detailed guides that walk new users through all the steps to get started with their integration.
API client libraries - Having these readily available speeds up the build process by providing cut and paste code samples in popular programming languages, such as Ruby, Python, PHP, and Java.
Ease of use - The structure of the API should be consistent, logical and easy to follow as you’re building your integration. There should be clear error messages when something isn’t right.
Uptime - For starters, check the amount of time during which the API is operational. Is the API highly available, and will it be up when you need it to be?
Communication - At GoCardless, we’re transparent about our service status and consistently post any updates on gocardless-status.com. Anybody can subscribe to this list and get live updates about our service. This is important for any API or web service provider as it means you know exactly where you stand in terms of operationality. Will they tell you when they're having problems so you know ASAP and can quickly debug issues with your integration?
Support - Ideally, this should be provided by a dedicated team of API specialists who have the knowledge to solve your problems with ease and speed, both over the phone and by email.
Security - It should be possible to easily change or rotate credentials (such as API keys), to restrict access if required (so machines can only read your data, not modify it) and (especially important for a payments API) there should should be encryption strong enough to keep your data secure.
Versioning (updates) - When changes are made to the API, will it break your integration, or can you transition gracefully over to using the new features?
Testing - While building your integration, you won't want to use real bank account details or take real payments. Does the API provide a sandbox or test environment where you can experiment with dummy data?
Benefits of using the GoCardless payments API
As well as providing all of the above listed features, our API stands out for having some additional ones that are specific to a payments API. When you set up a new integration using the GoCardless API, we offer all of the following:
Out of the box compliance with Direct Debit scheme rules built in.
Ready to use subscriptions logic eliminates the need to build from scratch.
Comprehensive set of webhooks available for all key payment events, so you can easily connect Direct Debit to your existing software.
Handles bank holidays and other payment holidays on your behalf.
Automatic calculation of Direct Debit payment timings - you simply submit the payment requests and we’ll do the rest.
At GoCardless, we put a lot of time and energy into making sure our API is top quality. It’s the core of our business and we’re committed to its security, quality and maintenance via ongoing updates. We constantly keep in mind every feature that adds up to a great API, and go the extra mile to make sure they’re always performing strongly.
Ready to get started building your GoCardless integration? Check out our developer page.