An API (Application Programming Interface) is an interface that lets two pieces of software talk to each other using predefined rules. API integration means connecting your own software to another system through that interface: sending a customer an automatic WhatsApp message, sending an SMS appointment reminder or passing an invoice to Turkey's e-invoice (e-Fatura) system. Set up correctly, it cuts down repetitive manual work; set up badly, it can quietly lead to data loss or legal problems.
In short
- An API is a contract in which one piece of software tells others, "ask me in this format and I'll answer in that format."
- API integration is connecting two systems so they exchange data through that contract.
- On the WhatsApp Business Platform, if the customer hasn't messaged you, you can only send template messages approved by Meta.
- For SMS and other commercial messages in Turkey, the rules of the Message Management System (İYS) apply.
- You can connect to e-Fatura through the Revenue Administration (GİB) portal, by integrating your own system or through a private integrator; software usually connects through the integrator's API.
What is an API?
In MDN Web Docs' definition, an API is a set of features and rules within a piece of software that allows other software to interact with it. Unlike the interface a person uses (screens, buttons), an API is the interface through which software talks to software. MDN also describes it as a simple "contract" between an application and the other software that uses it.
An everyday comparison: in a restaurant, you don't walk into the kitchen. You order from the menu through a waiter, who passes the order to the kitchen and brings the food back. The menu sets what you can ask for and in what form. An API works the same way: it defines which request you can send to which address, in which format, and what kind of response you will get.
A website's frontend and backend also often talk through an API. We explained this relationship in our post Frontend vs. Backend.
What does API integration bring your business?
- Less manual re-entry. When a quote is approved, the details flow into accounting automatically; you don't type the same data twice.
- Speed. When an order, shipment or service status changes, the customer is informed immediately.
- Fewer errors. Typos made while copying by hand disappear.
- A record. You can track in the system which message was sent when and which invoice was passed on.
But every integration makes two systems dependent on each other. What your software will do when the other system changes, shuts down or slows down has to be designed from the start.

Example 1: WhatsApp Business Platform
There are two different ways to use WhatsApp for your business. The first is the WhatsApp Business app installed on a phone, where a person messages by hand. The second is the WhatsApp Business Platform (Cloud API), which software uses. The integration discussed in this post is the second one.
According to Meta's developer documentation, the Cloud API lets you send text, media and interactive messages programmatically. Incoming messages and delivery statuses reach your system through a webhook (an automatic notification the other system sends to your address when an event happens).
The basic rules to know when setting up the integration (as of September 2025):
- 24-hour customer service window: When a user messages you, a 24-hour window opens. Within this window, you can reply with free-form text.
- Outside the window, templates only: When the window is closed, you can only send template messages. Templates must be approved by Meta before they can be used.
- Template categories: Marketing, utility and authentication.
- Pricing: From 1 July 2025, Meta moved from conversation-based pricing to per-message pricing. The fee depends on the template category and the recipient's country code; free-form messages within an open window are free. Check Meta's page for current rates.
In practice, this means that if you want to send an automatic reminder such as "Your service appointment is tomorrow at 10:00," you need a pre-approved template for it, filled in with variable fields (name, date, time).
Example 2: SMS integration and İYS
SMS integration is usually done through an SMS provider's API: your software passes the recipient's number and the text to the provider, the provider delivers the message to the carriers and returns a delivery report.
The technical part is often easy; the real thing to watch is the legal framework. In Turkey, commercial electronic messages (SMS, email, calls) are governed by the Regulation on Commercial Communications and Commercial Electronic Messages (Ticari İletişim ve Ticari Elektronik İletiler Hakkında Yönetmelik). Under the Regulation:
- Individuals and legal entities that want to send commercial electronic messages register with İYS.
- For promotional and marketing messages, prior consent is obtained from the recipient, and commercial electronic messages cannot be sent to recipients who have no consent recorded in İYS.
- Notification messages, such as those about ongoing subscriptions, collections, payment reminders, purchases and deliveries, do not require prior consent; however, they cannot promote any goods or services.
For your software, this means your system must be able to tell a "notification" from a "promotional" message and check consent status for promotional messages. "Your service record has been completed" is a notification; adding "filter discounts this month" to the same message turns it into a promotion.
Example 3: e-invoice integration (GİB)
e-Fatura (e-invoice) means issuing an invoice electronically, in line with the standards set by Turkey's Revenue Administration (Gelir İdaresi Başkanlığı, GİB), and delivering it to the recipient. GİB defines three methods for using the e-invoice system:
| Method | In short | Who is it for? |
|---|---|---|
| GİB e-Fatura Portal | Invoices are issued by hand on GİB's web portal. | Businesses that issue few invoices and don't need software integration |
| Private integration (private integrator) | Invoices are sent and received through the system of a private integrator authorized by GİB. | Businesses with a high invoice volume or different invoicing needs |
| Integration (direct) | The business connects its own IT system to GİB's system; the system must run 24/7 without interruption. | Large businesses with strong IT infrastructure |
If business software (a CRM, ordering or job tracking system) is going to work with e-Fatura, the connection is usually made through a private integrator's API. Alternatively, the software passes the invoice to an accounting program that can already send e-invoices. Which route suits you depends on your current accounting setup and invoice volume. The obligation to switch to e-Fatura and its scope are set by legislation and can change over time; check your own situation with your financial advisor.
Checklist for setting up an integration
- Is there documentation? Is the other system's API documentation current and clear?
- Is there a test environment? Can you try things out without messaging real customers or issuing real invoices?
- Who holds the credentials? Are the API keys and accounts in the business's name, or in the developer's personal account?
- What happens if something fails? If the other system doesn't respond, will the request be retried, will it be logged, and who will be notified?
- Are records kept? Are the time, status and error details stored for every message and invoice sent?
- Are the legal rules reflected in the design? Are things like İYS consent, privacy notices under Turkey's Personal Data Protection Law (PDPL, Law No. 6698) and template approvals part of the software's flow?
- Are the costs known? Have per-message and per-transaction fees been added to the budget?
We explained how integrations affect the budget in our post What Determines the Cost of Custom Software? We covered payment and shipping connections on the e-commerce side in our post on e-commerce platforms.
Our experience
In corporate web projects, what people usually mean by "WhatsApp integration" is not actually an API integration but actions that start a phone call or a WhatsApp chat with one tap. On the Tuğra Karot site, for example, the phone and WhatsApp actions serve this purpose. This approach makes it easier for visitors to start a conversation with you, but it doesn't send automatic messages; if you need automatic notifications, you need a WhatsApp Business Platform integration. Telling the two apart is the first step to planning the budget correctly.
In custom software projects (CRM, dashboards, SaaS, APIs), we treat integrations as separate line items. For each connection, we plan error handling, logging and opening accounts in the business's name from the start.
Frequently asked questions
Do we need to rewrite our software from scratch for API integration?
No. If your current software allows external connections (it has its own API, webhook support or a plugin structure), an integration can be added. With off-the-shelf packages, this is limited to the connections the package offers.
Are the WhatsApp Business app and the WhatsApp Business Platform the same thing?
No. The app is for messaging by hand on a phone. The platform (Cloud API) is for software to send messages automatically and at scale; it requires template approval, per-message pricing and a technical setup.
Do informational SMS messages also need İYS consent?
Under the Regulation, notification messages about ongoing subscriptions, collections, deliveries and the like do not require prior consent, but they must not contain any promotion. If you're not sure which group your message falls into, consult a lawyer.
Can we issue e-invoices from our own software?
Yes, but usually through a private integrator or an accounting program with e-Fatura support rather than directly to GİB. The direct integration method requires infrastructure that runs 24/7 without interruption and meets GİB's technical requirements.
Conclusion
API integration lets your software exchange data in a rule-based, recorded way instead of by hand. As the WhatsApp, SMS and e-invoice examples show, the other side's rules (template approval, İYS, GİB methods) are as much a part of the design as the technical work. If you want to connect your existing systems or build new software with integrations from the start, take a look at our Software & Digital Solutions page, or contact us.
Learn more on Grafik Sanat (in Turkish): Visual explanations and quizzes on this topic → grafiksanat.com.tr/terim/api
Update (October 2026): Meta's WhatsApp Business Platform terms now include an "AI Providers" clause that prohibits artificial intelligence and machine learning providers from using the platform to offer these technologies as their primary service (terms last updated 23 September 2026). Business uses such as customer service, order and appointment notifications are not the target of this restriction. The terms also limit the use of platform data to train AI models. If you are planning an AI-powered WhatsApp assistant, check the current terms.
This article is for general information only and is not legal advice.
Sources8
- MDN Web Docs — API (glossary). — accessed: 2026-10 developer.mozilla.org
- Meta for Developers — WhatsApp Cloud API Overview. — accessed: 2026-10 developers.facebook.com
- Meta for Developers — WhatsApp Business Platform Pricing (per-message pricing from 1 July 2025, 24-hour window). — accessed: 2026-10 developers.facebook.com
- Meta for Developers — Message Templates (template approval). — accessed: 2026-10 developers.facebook.com
- Meta — WhatsApp Business Platform Terms (section 4.7, AI Providers). — accessed: 2026-10 facebook.com
- Regulation on Commercial Communications and Commercial Electronic Messages (Ticari İletişim ve Ticari Elektronik İletiler Hakkında Yönetmelik, articles 5, 6, 7), Legislation Information System (Mevzuat Bilgi Sistemi). — accessed: 2026-10 mevzuat.gov.tr
- GİB e-Belge — Methods for using e-Fatura (e-Fatura'dan yararlanma yöntemleri). — accessed: 2026-10 ebelge.gib.gov.tr
- GİB e-Belge — Private Integration (Özel Entegrasyon). — accessed: 2026-10 ebelge.gib.gov.tr



