APIs in plain words
An API integration lets your website talk to another system automatically, so information moves between them without anyone retyping it.
An API (application programming interface) is a published set of requests another service agrees to answer, a bit like a counter with a fixed order form: you hand over the form filled in correctly, and you get back a predictable answer.
A real example: at checkout, a store sends a courier's API the parcel weight and the customer's postcode, and the courier replies with a shipping price, which appears in the cart a second later. The same idea connects websites to payment gateways, accounting software, CRMs and email tools. Most business websites need a few of these connections, usually built with an existing plugin or app, sometimes with a small piece of custom code.
Integrations are one step in the wider process covered in our guide on how to build a website. This article helps you decide which ones you need and what to ask before anyone writes code.
Which integrations do Thai business websites need?
The table below lists the connections websites in Thailand most often need, what each one does, and how it is usually built. Not every site needs all of them. A clinic may need only a calendar and a CRM; a store needs payments and shipping on day one.
A useful way to decide is to follow one customer from first visit to paid invoice and note every point where someone on your team copies data from one screen into another. Each of those points is a candidate for an integration. Some are worth automating straight away, like shipping rates on a busy store. Others, like sending a monthly report, may be fine done by hand for now.
| Integration | What it does | Typical build |
|---|---|---|
| Payment gateway | Takes PromptPay, card and other payments at checkout | Official plugin or platform app |
| Thai couriers | Gets rates, creates shipments and tracking for Thailand Post, KEX Express (formerly Kerry Express), Flash Express or J&T | Platform app, aggregator plugin or custom code |
| Accounting software | Sends orders and customers to your accounting system for invoices, including e-Tax invoices | Connector app or middleware |
| CRM | Adds enquiries from forms to your sales pipeline | Plugin, middleware or webhook |
| Email marketing | Adds consenting subscribers to a mailing list | Official plugin |
| Maps | Shows your location and branches | Embed or maps API |
| Calendar and booking | Checks availability and saves appointments | Booking plugin connected to a calendar |
Three ways to build an integration
1. A plugin or app
Many services publish an official WordPress plugin or a Shopify app. This is usually the fastest and cheapest route, and the provider maintains it when their API changes. The limits are that you get the features the plugin offers, and every extra plugin adds code to keep updated.
2. Middleware such as Zapier or Make
Middleware tools sit between two services and pass data along when something happens, for example "new form entry, create CRM contact". They suit low-volume tasks and are easy to change without a developer. They carry a monthly subscription, they add another company that handles your customer data, and complex flows can become hard to trace when something fails.
3. Custom code in the website
When no plugin fits, a developer writes a small connector directly in the site. WordPress includes an HTTP API for making these requests from the server. Custom code gives full control over which fields are sent and when, but it has to be maintained by someone who understands it.
Accounting links show the trade-offs between the three clearly; our article on integrating your website with Thai accounting software walks through the options for local systems.
How do you judge an API before you commit?
Before you pick a courier, CRM or accounting tool partly because "it has an API", check what that API actually allows. Some services advertise an API that only reads data, or that sits behind their most expensive plan. Ask your developer to spend an hour with the documentation before you sign up; it is far cheaper than finding out halfway through a build.
- Clear documentationEvery request and response is described, with examples, in English or Thai your developer can follow.
- A sandboxA test environment exists, so the connection can be built without real orders or payments.
- The right actionsThe API can do what you need, such as create, update and read, not just one of them.
- Limits you can live withRequest limits are high enough for your busiest day, such as a Songkran or 11.11 sale.
- Known costAPI access is included in your plan, or the extra cost is stated on the provider's pricing page.
- WebhooksThe service can notify your site when something changes, instead of your site asking every few minutes.
- SupportThere is a way to reach the provider when the connection breaks.
Security, PDPA and reliability
Keys stay on the server
An API key is a password for your account with the other service. It belongs in the website's server-side configuration, never in page code a visitor's browser can read. Create keys with the least access the job needs, such as "create shipments" rather than full account control, and give each integration its own key so one can be revoked without breaking the others.
PDPA: who handles the data
When your website sends customer names, phone numbers or orders to a CRM or courier, that company processes personal data for you. Under Thailand's Personal Data Protection Act you remain responsible for it (our guide to PDPA penalties and fines shows what is at stake), so list these services in your privacy notice, check their data processing terms, and send only the fields each one needs. Many tools store data outside Thailand; the Act has rules on cross-border transfers, so check where each provider keeps data and take legal advice if you are unsure.
Plan for failure
Every connection fails sometimes: the other service is down, a key expires, a field changes. A sturdy integration:
- logs each request and its result, so problems can be traced;
- retries a failed request automatically a few times;
- keeps the original data on your site, so nothing is lost while the other side is down;
- alerts a named person by email when retries run out.
Keeping integrations working
An integration is not finished at launch. Providers release new API versions and retire old ones, usually with notice by email to the account owner. If that email goes to a former employee, the first sign of trouble is orders that stop reaching the courier.
- Keep an inventory: every connected service, which account owns it, where the key is stored and who to call.
- Make sure deprecation notices reach an inbox someone reads.
- Update plugins and apps on a schedule, testing the connected flows afterwards, not just the homepage. A staging site, a private copy of your website, is the safe place to run those tests.
- Run a test transaction each month in a sandbox or with a low-value real order.
AI coding tools can now draft connector code quickly, a shift we discuss in our piece on how AI is changing web development. They speed up the first version, but someone still has to test the edge cases, secure the keys and look after the code when the API changes. We offer maintenance after launch, priced per site on request, and your integrations belong on the list when you agree what it covers.
Scoping your integration
Good answers to these questions turn a vague request into a quote a developer can stand behind:
- Which two systems are connecting, and which one is the source of truth for each piece of data?
- What triggers the transfer: a form, a paid order, a status change, a schedule?
- Which fields move, in which direction, and does anything come back?
- How many transactions a day, and on your busiest day?
- Who owns the accounts and the API keys?
- What should happen, and who hears about it, when the transfer fails?
When it stops being a website integration
If the answers describe user accounts with dashboards, custom business logic, or several systems kept in sync in real time, the project has become a web application. That is custom software, and it is not something we build. What we do is connect websites to services that already exist. A membership website is a common borderline case: plugin-based memberships are a website job, a bespoke customer portal is not.
If you are still weighing why a business needs a website at all, start there. If you are ready, booking and enquiry flows and forms sit in our Business package, from THB 30,000, and payments, Thai couriers and e-Tax invoice setup sit in our E-commerce package, from THB 50,000, both indicative starting prices. See our custom website development service, or check how much a WordPress website costs before you ask for a quote.
More on planning and building
Sources
- WordPress Developer Resources: HTTP API
- Ministry of Digital Economy and Society: Personal Data Protection Act B.E. 2562 (2019)

