Integrations

Njiwa integrations for the shop you already run

An integration joins your shop or your accounting system to Njiwa, so that when something real happens to an order the customer hears about it on WhatsApp. Paid, packed, sent, cancelled, refunded. You get a message yourself when an order comes in.

And when the customer writes back, that reply lands in your Njiwa inbox beside every other conversation, for a person to answer. An integration is one way messages start; it is not a separate product.

Every event is off until you switch it on, so installing one sends nothing to anybody. The wording is yours to edit, a test key lets you rehearse the whole thing without a customer ever seeing it, and an integration never holds an order up: the order is saved first and the message goes afterwards, on the platform's own queue.

Nine platforms, one way of working

WooCommerce

WhatsApp your customers when their order is paid, sent or cancelled, and get a message yourself when one comes in.

Read about it

Shopify

A small web service you install on your Shopify shop, which sends a WhatsApp message when an order is placed, paid, fulfilled, cancelled or refunded.

Read about it

Magento 2

WhatsApp your customers when their order is placed, paid, shipped, cancelled or refunded, and get a message yourself when one comes in.

Read about it

PrestaShop

WhatsApp your customers on your shop's own order statuses, the ones your payment and shipping modules added among them, and get a message yourself when an order comes in.

Read about it

OpenCart

Pick the status in your own shop that means paid, sent or cancelled, WhatsApp your customers when an order reaches it, and get a message yourself when one comes in.

Read about it

Shopware 6

WhatsApp your customers when their order is paid, shipped, cancelled or refunded, and get a message yourself when one comes in.

Read about it

Medusa

A Medusa 2 integration that sends a WhatsApp message when an order is placed, paid, packed, shipped, cancelled or refunded, and tells you when one comes in.

Read about it

ERPNext and Frappe

WhatsApp your customers when you submit an invoice, post a payment or send goods out, and get a message yourself when an order comes in.

Read about it

Odoo

WhatsApp your customers when a sales order is confirmed, an invoice is paid or a delivery is validated, and get a message yourself when an order comes in.

Read about it

The same seven pieces

What is inside every one of them

They are written to one specification, so a merchant who has used one recognises the next one and a developer who has read one can write the next one. These are the seven parts, in the words they would be explained in.

Settings where you already look

The switches are in the admin you use every day, on the platform's own settings page, and there is no separate login to keep. Shopify is the one exception, because Shopify does not run other people's code inside a shop: there the settings live on a small service you host, opened from Apps and already signed in. One master switch stops every message while leaving your key, your numbers and your wording exactly where they are.

One key, and one address

The integration holds your Njiwa API key and talks to nothing else. A Test connection button asks Njiwa which WhatsApp numbers your account really has, lists them with their state, and sends nothing at all.

Wording you can change without code

Every event has a box of plain text with placeholders in braces, {first_name} and {order_number} among them, filled in from the order. Clearing a box is how you turn one message off while leaving the event on: empty wording sends nothing.

Numbers the way people write them

0712345678, +254 712 345 678 and 254712345678 all reach the same person. A local number is read against a country, and which country depends on the integration: WooCommerce, Shopify, PrestaShop and Medusa complete it from the country on the order, OpenCart from a dialling code you type into the settings once, and the rest leave it to Njiwa, which reads it against the country of the number you send from. Each integration's page says which of those it does. A WhatsApp group address is not a phone number, so it is thrown away rather than messaged by accident.

Events at the moment they are true

An integration listens for the order being paid, sent, cancelled or refunded, and never for a general "the order was saved", which fires when somebody corrects a delivery address and would message a customer for it. Your own alert goes on the first status that means the order genuinely exists, once.

Sending that happens after the checkout

The message is handed to the platform's own queue and goes out a moment later, so a customer never waits on WhatsApp to finish paying and a slow line cannot lose a sale. Every send carries an idempotency key, and a marker is written on the order, so an order moved back and forth between statuses does not message anybody twice.

Instructions a shop owner can follow

Each integration ships a README that says what it sends and when, what every setting does, and how to try the whole thing safely. It says plainly that a live key sends real messages that cost money.

Start with a test key

Njiwa has two kinds of key. The one beginning sk_test_ checks every request, stores every message and fires real webhooks, and delivers nothing to a phone. The one beginning sk_live_ sends for real, to real people, and costs money.

Install the integration with the test key, place a test order and move it through the statuses you switched on. Read the notes it writes on the order: they say what went where, with Njiwa's message id, or why nothing went. When it all reads right, paste in the live key. Nothing else changes.

Start a 7 day trial Read the documentation

Questions people ask first

Will installing one message my customers?

No. Every event arrives switched off and there is no API key saved, so a freshly installed integration sends nothing to anybody. The first message leaves after somebody has pasted in a key and ticked a box on purpose.

How new are these?

New. The WooCommerce integration is the one the other eight are modelled on, and the only one a real shop has run. For the other eight the code is complete and has been read or tested, and no real order has been through one on that platform yet, which is a different thing from a half finished feature and a different thing again from a promise. Each integration's page answers this for itself, because what review it has had differs. Install one on a test key, put a test order through it, and tell us what breaks.

Do the integrations cost extra?

No. They are free and the source is in the repository. What you pay for is the Njiwa account behind them, which is counted in linked WhatsApp numbers rather than in messages, so a busy shop and a quiet one on the same plan pay the same.

Can I try it without messaging a real customer?

Yes, and it is the way in we recommend. A key beginning sk_test_ checks every request, stores every message and writes the same notes on the order with real message ids, and delivers nothing to a phone. Place a test order, walk it through the statuses, read the notes, then swap the key for the live one.

Do they receive replies?

Not yet. Incoming messages arrive as a signed webhook, and verifying one needs that number's signing secret, which the console does not yet show. Until it does, an integration could not prove a request really came from Njiwa, so none of them pretend to. Replies are read and answered in the Njiwa console, where each customer is one thread.

My platform is not on the list.

Njiwa is a plain HTTP API, so anything that can make a request can send a message, and the integrations are only a convenience on top of it. If you would like one for your platform, tell us which. It is the fastest way to move it up the list.

Put it on a test key this afternoon

Seven days free and no card. Install the integration for your platform, rehearse a real order end to end, and switch the key when you are happy.

Start a 7 day trial