1C and WhatsApp Business API connected through the WazzaBee REST API
    WazzaBee
    9 min
    19
    10/07/2026

    How to connect 1C to the WhatsApp Business API: notifications from your database via REST API

    ✦ Key takeaways

    • •What is a WhatsApp API for 1C in plain words?
    • •Which notifications can 1C send to WhatsApp?
    • •Why must the first message from 1C be a template?
    • •How does a request from 1C to the WazzaBee API gateway work?
    • •How does 1C receive customer replies and delivery statuses?

    WazzaBee has no ready-made 1C module for WhatsApp: 1C sends messages through the open REST API, and one notification takes one HTTP request, POST /v1/messages/send, with an approved template. 1C receives customer replies and delivery statuses through a webhook that WazzaBee sends to your server.

    A familiar picture: the invoice is issued in 1C, the goods have shipped, and the customer has no idea. A manager copies the number from the counterparty card, opens WhatsApp on their own phone and types the message by hand. With ten orders a day that is bearable. With a hundred, hours disappear, numbers get mixed up, and payments are late simply because nobody told the customer.

    Below: what you can send from 1C, why the first message must be a template, what the API request looks like, how much one notification costs and what the developer needs to do. The integration itself is described briefly on the WhatsApp and 1C page.

    What is a WhatsApp API for 1C in plain words?

    It is an internet address where your database sends the command "send this message to the customer". The address belongs to WazzaBee, and the message reaches the customer from your official WhatsApp Business API number. 1C does not talk to WhatsApp directly: it sends HTTPS requests to the WazzaBee API gateway.

    The gateway base URL is https://api.wazzabee.com/api-gateway. Every request carries a key in the Authorization: Bearer header. You get the key in your dashboard under "Connectors" → "API". How key checks work and which errors the gateway returns is covered in API authorization.

    Manual sendingNotifications from 1C via API
    Who sendsA manager, by handThe database itself, on a document event
    From which numberOften an employee's personal phoneThe official company number
    When the message goes outWhen the manager finds timeAt the event the developer chose
    Where replies show upOn the employee's phoneIn WazzaBee dashboard chats and in a webhook to your server
    Where the number and amount come fromCopied by handFilled in from the 1C document

    Which notifications can 1C send to WhatsApp?

    Any notification that has an event in your database and a template approved by Meta. The most common scenarios:

    • Order received: the order number and items go to the customer right after the document is saved.
    • Invoice issued: amount and due date in the text, the PDF invoice can be attached as the template header.
    • Payment due soon: a reminder a few days before the date.
    • Payment received: confirmation that the money arrived.
    • Goods shipped: shipping date and waybill number.
    • Documents ready: the act or contract can be collected.
    • Item in stock: for customers waiting for a back-ordered item.
    • Feedback: a short question after a closed deal.

    These are scenarios, not ready-made settings. You and your developer decide which 1C document triggers the message and what text the customer gets. Each event has its own template.

    Why must the first message from 1C be a template?

    Because those are Meta's rules: a business can message a customer first only with an approved template. Free text is allowed within 24 hours after the customer's last incoming message. A notification from 1C is almost always the first message, so every event needs its own template.

    SituationWhat 1C can sendRequest fields
    The customer wrote to you in the last 24 hoursPlain text or a filetext or mediaUrl
    The customer has not written for over 24 hours, or neverOnly an approved templatetemplateName and templateVariables
    The customer replied to the templateA new 24-hour window opens, you can write texttext

    The template is created in the WazzaBee dashboard for the official WhatsApp line and goes to Meta for review. Templates are sent through the API, but created and edited in the dashboard. Variables {{1}}, {{2}} insert the name, order number, amount or date. Sample texts and template categories are in HSM templates for WhatsApp in WazzaBee.

    Watch the wording: if a notification includes a discount or a call to buy, Meta may classify the template as marketing, and every message will cost more.

    How does a request from 1C to the WazzaBee API gateway work?

    One notification is one POST request to https://api.wazzabee.com/api-gateway/v1/messages/send with JSON in the body. For a template you pass templateName and variables instead of the text field. Here is the request from the Sending WABA templates via API documentation:

    curl -X POST "https://api.wazzabee.com/api-gateway/v1/messages/send" \
      -H "Authorization: Bearer YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "channelId": "550e8400-e29b-41d4-a716-446655440000",
        "chatId": "77001234567",
        "templateName": "order_shipped",
        "templateLanguage": "ru",
        "templateVariables": {"1": "Айгерим", "2": "1234"}
      }'

    Here order_shipped is a sample name for your shipping template, {{1}} gets the customer name and {{2}} the order number. What each field means:

    FieldWhat to passWhere to get it in 1C
    channelIdID of the official WhatsApp lineOnce from GET /v1/channels, store it in database settings
    chatIdCustomer number with country code, no "+"From the counterparty card, for example 77001234567
    templateNameSystem name of the approved templateFrom the dashboard, one per event
    templateLanguageTemplate language code, ru by defaultUsually a constant
    templateVariablesValues for {{1}}, {{2}} and so onNumber, amount, date from the document
    templateHeaderImage, video or document in the header, if the template has oneA file link, for example the invoice PDF

    Inside 1C the request is built with the standard platform objects HTTPСоединение and HTTPЗапрос. The JSON string is easy to build with ЗаписьJSON. A sketch for the developer:

    Соединение = Новый HTTPСоединение("api.wazzabee.com", 443, , , , 30, Новый ЗащищенноеСоединениеOpenSSL);
    Запрос = Новый HTTPЗапрос("/api-gateway/v1/messages/send");
    Запрос.Заголовки.Вставить("Authorization", "Bearer " + КлючAPI);
    Запрос.Заголовки.Вставить("Content-Type", "application/json");
    Запрос.УстановитьТелоИзСтроки(ТелоJSON, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать);
    Ответ = Соединение.ОтправитьДляОбработки(Запрос);
    // Ответ.КодСостояния 202: the message is queued

    Code 202 means the message is queued, not that it is already delivered. The response contains queueId: save it in the 1C document, you will match the status by it later. Keep the API key in protected database settings, not in the module code. All parameters, file sending and error codes are described in Sending messages.

    How does 1C receive customer replies and delivery statuses?

    Through a webhook: WazzaBee sends a POST request to your server whenever a customer replies or a message status changes. You can connect the webhook in the dashboard, "Connectors" → "API" → "Webhook for incoming messages" block, or with a PATCH /v1/webhooks request.

    SubscriptionWhat 1C receives
    messages_incomingIncoming customer messages
    messages_statusOutgoing statuses: sent, delivered, read, failed with a reason code, matched by queueId
    messages_buttonTemplate button taps and which message the customer replied to

    1C can receive the webhook with an HTTP service published on a web server. Gateway requirements: https only, reachable from the internet, not local and not on an internal network. Your server must answer the test request with code 200, otherwise the webhook will not connect. Every notification is signed with HMAC-SHA256, signature checks are described in Webhooks.

    If your server does not answer within 10 seconds, WazzaBee retries, up to 8 attempts over about a day. So reply 200 right away and process after replying. Retries carry the same X-Webhook-Delivery-Id, which makes it easy not to record one message twice. Customer replies are also visible in WazzaBee dashboard chats, so a manager can continue the conversation.

    How much does a notification from 1C to WhatsApp cost?

    One Utility template notification (order, invoice, shipment) costs $0.0286. There is no separate fee for the API: the public API and webhooks are included in the official WhatsApp line subscription at $66 per month.

    ItemPrice
    Official WhatsApp line subscription$66 per month
    Line connection$0
    Public API and webhooksIncluded in the subscription
    Utility template notification$0.0286 per message
    Marketing template$0.086 per message
    Reply in an open 24-hour windowFirst 1000 per month per number at the minimum rate, then $0.0286
    Incoming message$0.0021

    Example: 1000 shipping notifications a month cost about $28.5515 plus the line subscription. Meta charges messages under its own rules. Since 1 October 2026 Kazakhstan is a separate Meta market, and replies in the 24-hour window are now charged too.

    What should the 1C developer do, step by step?

    Seven steps from an empty setup to working notifications:

    1. Connect an official WhatsApp line in WazzaBee. It takes 15 minutes, the order is in the step-by-step WABA connection guide.
    2. Create templates for 1C events in the dashboard and wait for Meta approval.
    3. Get the key: "Connectors" → "API" card → "Connect". The key is shown once, save it right away.
    4. Find the line channelId with GET /v1/channels and store it in 1C settings.
    5. Build sending: when the right document is saved, 1C builds the JSON, sends POST /v1/messages/send and stores queueId in the document.
    6. Connect a webhook with messages_incoming and messages_status subscriptions and verify the signature of every notification.
    7. Test the setup: the line shows in GET /v1/channels with status active, a test message reaches your second number, the reply appears in the dashboard chat and in the webhook.

    A short route with ready requests is in API quick start. A 1C developer usually needs a few hours for basic notification sending. We do not modify 1C ourselves: we provide the key, the documentation and answer questions about API methods.

    FAQ

    Was this article helpful?
    WazzaBee
    WazzaBee
    Team of experts

    An omnichannel platform that connects messengers to your CRM. We link WhatsApp, Telegram, Instagram and 5 more channels to your business in Kazakhstan.

    Share: