Skip to content
  • How it worksConnect a channel, answer from one inbox, automate the rest
  • FeaturesEvery kind of message Njiwa sends, and what it cannot do
  • SignalsWhat your customers asked for that you do not sell, counted
  • WhatsApp railsYour own number in five minutes, or Meta's official API

Online shops

  • WWooCommerceWhatsApp your customers when their order is paid, sent or cancelled, and get a message yourself when one comes in.
  • SyShopifyA small web service you install on your Shopify shop, which sends a WhatsApp message when an order is placed, paid, fulfilled, cancelled or refunded.
  • MgMagento 2WhatsApp your customers when their order is placed, paid, shipped, cancelled or refunded, and get a message yourself when one comes in.
  • PPrestaShopWhatsApp 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.
  • OOpenCartPick 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.
  • SwShopware 6WhatsApp your customers when their order is paid, shipped, cancelled or refunded, and get a message yourself when one comes in.
  • MeMedusaA 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.

ERP and accounting

  • EERPNext and FrappeWhatsApp your customers when you submit an invoice, post a payment or send goods out, and get a message yourself when an order comes in.
  • OdOdooWhatsApp 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.
See all integrations
PricingDispatchDocs
Start a 7 day trial
MenuClose
ProductIntegrationsWSyMgPPricingDispatchDocs

Product

How it worksConnect a channel, answer from one inbox, automate the restFeaturesEvery kind of message Njiwa sends, and what it cannot doSignalsWhat your customers asked for that you do not sell, countedWhatsApp railsYour own number in five minutes, or Meta's official API

Integrations

Online shops

WWooCommerceSyShopifyMgMagento 2PPrestaShopOOpenCartSwShopware 6MeMedusa

ERP and accounting

EERPNext and FrappeOdOdoo
See all integrations
Theme
Start a 7 day trial

Legal

Terms

Last updated 18 September 2026.

These terms are the agreement between you and UPEO.AI, the company that operates Njiwa. They apply from the moment you create an account, and they apply to everybody in your business who uses it.

They are written to be read. If any part of them is unclear, ask us before you agree to them rather than after: hello@upeo.ai.

  1. Who this is between
  2. What Njiwa does
  3. Your account and your keys
  4. The numbers you link, and the risk of linking one
  5. What you may not send
  6. Your messages are yours
  7. Paying for it
  8. Signals credit, and getting it back
  9. Message allowances, and what counts as a message
  10. The trial, and what happens when it ends
  11. What we promise about uptime, and what we do not
  12. Suspending or closing an account
  13. Things we are not responsible for
  14. The most we can owe you
  15. Claims about your messages
  16. Names and marks
  17. Changing these terms
  18. Law, and what happens in a disagreement
  19. The rest of it

Who this is between

"We", "us" and "Njiwa" mean UPEO.AI and the Njiwa service. "You" means the person or business with an account. If you are agreeing to these terms for a business, you are confirming that you are allowed to commit that business to them, and "you" then means the business.

You must be at least 18 years old to hold an account.

What Njiwa does

Njiwa is an HTTP API. You send it a request, and it delivers a WhatsApp message from a number you have linked to your account. It also receives messages sent to that number and passes them to a webhook address you choose.

Njiwa carries your messages. It does not write them, choose who receives them, or check whether the person receiving one wants it. Those are yours.

Your account and your keys

You are responsible for everything done with your account and with your API keys. A key is a password: anybody holding one can send messages that will look exactly like yours, and we cannot tell the difference.

Keep them out of anything a browser can read, out of your public code, and out of screenshots. If a key is exposed, revoke it in the console. You can do that yourself at any time and it takes effect immediately.

Tell us as soon as you know about any unauthorised use of your account. We will help, but we cannot undo messages that have already been delivered.

The numbers you link, and the risk of linking one

Read this section even if you read no other.

The Web rail connects a WhatsApp account you already own by linking a device to it, the same way WhatsApp Web does. That connection is not operated by WhatsApp or Meta, and it is not something they support, endorse or have any agreement with us about.

What that means for you, plainly: WhatsApp can restrict, disconnect or permanently block a number at any time, for any reason, without warning and without appeal. Sending a high volume of messages, sending to people who have not asked to hear from you, or being reported by recipients all make that much more likely. We cannot prevent it, we cannot reverse it, and we cannot get a blocked number back for you. Nobody can.

You choose which number to link, and you accept that risk when you link it. We strongly recommend linking a number your business can afford to lose rather than the number your customers already know. We are not liable for the loss of a number, for anything that follows from losing one, or for any decision WhatsApp or Meta makes about your account or your messages.

You are responsible for your own compliance with the rules of any network you reach through Njiwa, and for reading them yourself.

What you may not send

You may not use Njiwa to send:

  • messages to people who have not agreed to receive them from you;
  • anything unlawful where you are, where we are, or where the person receiving it is;
  • threats, harassment, hate speech, or material that sexualises children;
  • fraud of any kind, including messages that impersonate somebody else, a bank, a government body, or us;
  • phishing, malware, or links intended to deceive;
  • unsolicited advertising in bulk, whatever it is selling;
  • anything that infringes somebody else's copyright, trademark or other rights.

You also may not resell access to Njiwa as though it were your own product without a written agreement with us, attempt to break, overload or work around the limits of the service, or use it to build something that competes with it.

Consent is the part people get wrong. Having somebody's number is not consent. Buying a list is not consent. If you cannot show that a person asked to hear from you, do not message them.

Your messages are yours

You own what you send and what you receive. We do not sell it, we do not use it to train anything, and we do not read it except when we have to in order to run the service or to look into a specific problem you have asked us about.

You give us permission to store, transmit and process your messages for one purpose: delivering them and showing them back to you. That permission lasts as long as your account does.

How that data is handled is set out in our privacy policy, which is part of this agreement.

Paying for it

Packages start at KES 950 a month. Prices are set in Kenya shillings. An account whose owner signed up with a Kenyan WhatsApp number pays in shillings, by M-Pesa or by card; any other account pays by card in US dollars, worked out from the shilling price at the rate shown in the console and rounded up. Either way the figure on the package you choose is the figure you pay. Nothing different appears at the payment page.

A package is one price and there is nothing on top of it. Users, connected numbers, connected Facebook and Instagram accounts and your message allowance are all included in the package you choose, and none of them is sold separately or charged per unit. Where you need more of any of them, the answer is a larger package. The single exception is Meta's own per conversation fee on the high volume packages, described below. If your card is held in another currency your own bank may add a conversion charge of its own, which we neither see nor receive.

Payments are taken by Paystack. Your card details go to them and never to us: we hold a reference, an amount and whether it succeeded.

A plan paid by card renews automatically at the end of each period until you stop it. You can stop it at any time from the console or by emailing us, and it then runs to the end of the period you have already paid for. A period paid by M-Pesa does not renew: we remind you before it ends, and you pay again for the next one if you want it.

We do not give refunds for time you have paid for and not used, including when you cancel part way through a period or when an account is closed for breaking these terms. If we have charged you in error, tell us and we will put it right.

Prices can change. If a price changes we will tell you by email at least 30 days before it applies to you, and you can cancel before it does.

Your entry price is held for twelve months. Whatever the price of the package you signed up on becomes, you keep the price you signed up at for twelve months from the day you created the account. The hold covers the package's own price. It does not cover Meta's own per conversation fees on the high volume packages, and it ends if you move to a different package.

Meta's own fees. On the high volume packages Meta charges per conversation on your account. We pass that through at cost plus 15 percent, itemised on your invoice as its own line. It is the only charge anywhere that is not inside a package price, and it is not charged at all on any other package.

Moving between packages. Moving up applies immediately and is charged for the remainder of the cycle only, and the larger allowances apply at once. Moving down applies at your next renewal rather than immediately, so you keep what you have paid for; we will not move you down to a package smaller than what the account is currently using without telling you what has to be removed first.

Prices do not include any tax you may owe where you are. If a payment fails we will try again and tell you; if it keeps failing we may pause the account until it is settled.

Signals credit, and getting it back

Njiwa Signals reads what your customers wrote and reports what they are asking for. It is not part of any package and nothing about it is automatic: somebody on your account has to switch it on, and each request is paid for out of a balance you top up in advance.

The balance is credit, not a package. Nothing renews, nothing is charged monthly, and topping up does not commit you to anything. Each request takes what it costs out of the balance and is itemised on your statement in the console, so you can always see what each one came to. When the balance runs out, Signals stops and nothing else about your account changes.

Switching Signals off does not touch the balance. Money you have paid stays paid, and it is still there if you switch Signals back on a year later.

Unused credit is refundable, on request, at any time. This is deliberately different from the rule above about packages. A part-used month bought you a month of service that you had; unused Signals credit bought you nothing at all, so we do not keep it. Email us at hello@upeo.ai and we will return what is left to the card it was bought with, less nothing. There is no fee, no minimum, and no window after which it stops applying.

Two limits, both of them arithmetic rather than policy. We can only send money back to a card that paid for credit, so a balance we granted you by hand has nowhere to go; and we can only return what you have not used, because the rest has been spent on requests that were made. Refunds are returned by our payment provider and usually appear within a few working days, which is their timing rather than ours.

If you close your account with credit left, tell us first. Closing an account deletes everything in it, and that includes the balance and the record of what was paid for it. We will not knowingly delete an account that still holds credit without asking you what you want done with it.

Message allowances, and what counts as a message

Every package includes a number of outbound messages per billing cycle. The figure for each package is on the pricing page and in your console.

What counts. A message counts when you send it: one message to one recipient is one message, whether it started from the API, the shared inbox, an auto-reply or a campaign. A message to a group counts once. Messages arriving from other people are never counted, however many there are. Messages sent on a test key are not counted, because they are not delivered to anybody. A message that fails to send is not counted.

The cycle. The allowance runs per billing cycle and resets on your own renewal day rather than on the first of the month. It does not roll over: an allowance you do not use is not carried into the next cycle.

What happens at the limit. We tell you in the console and by email at eighty percent and again at a hundred. At a hundred percent, outbound sending is paused until the cycle resets or you move to a package with a larger allowance. Messages arriving from other people continue to arrive, the shared inbox continues to work, and nothing is deleted. We do not charge for going over the allowance on any package. The first time an account reaches its limit we allow a further twenty percent above it, once, as a courtesy; that is not offered again for twelve months and is not a charge either.

Fair use on the Uncapped package. That package is agreed rather than listed, and its volume is set in your agreement with us. The figure published on the pricing page is a soft ceiling: passing it does not stop your sending and is not charged for automatically. It is the point at which we will come and talk to you about what you actually need, and if usage stays materially above what was agreed we may ask you to move to a larger arrangement on 30 days notice.

The trial, and what happens when it ends

Every new account starts with a 7 day trial of the tier you pick. It needs no card. It is that tier with a clock on it, not a reduced one: the live key really sends, to real numbers, for the whole 7 days. The one limit a trial adds is 100 outbound messages per day.

We email you before the trial ends, five days out and again two days out. When it does end, outbound sending stops and the numbers on the account are logged out.

Nothing is deleted. The account stays open, your contacts, your webhooks and every message stay exactly as they are, and choosing a tier switches all of it back on, including the numbers, without linking them again. There is no free tier to fall back to and there is no deletion either: an account whose trial has ended is an account that is not sending.

One trial per business. Creating repeat accounts to extend a trial is a breach of these terms.

What we promise about uptime, and what we do not

We run Njiwa carefully and we want it up. We do not promise it will be.

The service is provided as it is. We do not guarantee that it will be uninterrupted, that every message will be delivered, that it will be delivered quickly, or that it is fit for any particular purpose of yours. Parts of it depend on WhatsApp, on networks we do not run, and on the number you linked staying connected, none of which we control.

We may change how Njiwa works, add things and remove things. If we remove something you are relying on, or make a change that breaks existing code, we will give you at least 30 days notice by email where we reasonably can.

We may have to take the service down for maintenance. We will keep it short and, where it is planned, we will say so first.

Suspending or closing an account

You can close your account whenever you like, from the console or by emailing us. Closing it deletes your data, and that cannot be undone.

We can suspend or close an account that is not paid for, that is being used for anything in the list above, that is putting the service or other customers at risk, or that we are required to act on by law. Where the reason allows it we will warn you first and give you a chance to fix it. Where it does not, such as fraud or material that sexualises children, we will act immediately and report it where the law requires us to.

Some of this is automatic. Njiwa watches for the pattern that gets numbers banned: one message sent to a large number of people who have never contacted you, on a list where most of it never arrives, or messages written to look as though they come from a bank, a mobile money service or a prize draw. An account showing that is suspended without waiting for one of us to be at a desk, because by the time somebody reads a report the damage is done - to your number and to every other customer's.

If that happens to you, we will email you the same minute, saying exactly what was seen and the numbers behind it. Nothing is deleted. Replying to that email reaches a person, and a person can put the whole account back.

If we close your account for breaking these terms, you do not get a refund for the rest of the period.

Things we are not responsible for

To the fullest extent the law allows, we are not responsible for:

  • any decision WhatsApp or Meta makes, including restricting, blocking or deleting a number or an account;
  • messages that are delayed, undelivered, delivered twice, or delivered to the wrong person because of information you sent us;
  • anything in the messages you send, or anything anybody does because of one;
  • loss of profit, loss of business, loss of goodwill, or any loss that is indirect or a knock-on effect of something else;
  • failures of the internet, of a network operator, of a payment provider, or of anything else we do not run.

The most we can owe you

If we are found liable to you for anything at all arising out of Njiwa or these terms, the total amount we can owe you is limited to what you actually paid us in the three months before the thing you are claiming about happened.

Nothing in these terms limits liability for death or personal injury caused by negligence, for fraud, or for anything else that cannot lawfully be limited.

Claims about your messages

If somebody brings a claim against us because of what you sent, who you sent it to, or how you used Njiwa, you will cover us: our losses, and the reasonable cost of dealing with it. That includes claims from people who received your messages, from a regulator, and from anybody whose rights your content infringed.

We will tell you promptly about any such claim and will not settle it without asking you first.

Names and marks

Njiwa is our name and our software. You get the right to use the service while you have an account, and nothing else: not the code, not the design, not the brand.

WhatsApp and Meta are the trademarks of their owners. We use those names only to describe what Njiwa connects to. Njiwa is an independent product and is not operated by, sponsored by, or connected to them.

We would like to name you as a customer. We will ask first.

Changing these terms

We may update these terms. If a change matters to you we will email you at least 30 days before it takes effect, and the date at the top of this page will change. Carrying on using Njiwa after that means you accept the new version. If you do not, close your account before the change applies and tell us, and we will refund the unused part of any period you have paid for.

Every version is dated. Ask us at hello@upeo.ai if you need the one you agreed to.

Law, and what happens in a disagreement

These terms are governed by the laws of Kenya, and the courts of Kenya have jurisdiction over any dispute about them.

Before anybody goes to court: email us at hello@upeo.ai or message 0116888777 and give us 30 days to sort it out. Almost everything can be.

The rest of it

If one part fails. If any part of these terms turns out to be unenforceable, the rest of them still stand.

Not enforcing something. If we do not enforce a term straight away, we have not given up the right to enforce it later.

Handing it on. You cannot transfer this agreement to somebody else without our written agreement. We can transfer it if the business is sold or reorganised, and we will tell you if that happens.

Things nobody controls. Neither of us is liable for a failure caused by something genuinely outside our control: a war, a natural disaster, a national outage, a government order.

Nobody else. This agreement is between you and us. Nobody else can enforce it.

The whole thing. These terms and the privacy policy are the entire agreement between us about Njiwa, and they replace anything said before.

Notices. We will write to the email address on your account, so keep it current. You can write to us at hello@upeo.ai.

Asking us about any of this

Email hello@upeo.ai or message 0116888777 on WhatsApp. A real person reads both.

Answer every channel. Automate any of it.

WhatsApp, Facebook and Instagram in one inbox, and an API when you want one.

Built by UPEO.AI.

Product

  • How it works
  • Features
  • Signals
  • Pricing
  • The two WhatsApp rails
  • WhatsApp API guide

Developers

  • Documentation
  • Quickstart
  • Error reference

Legal

  • Terms
  • Privacy

Talk to us

  • 0116888777
  • hello@upeo.ai
  • Sign in
  • Start a 7 day trial

WhatsApp, Messenger and Instagram are trademarks of their respective owners. Njiwa is built by UPEO.AI and is not affiliated with, sponsored or endorsed by Meta. The Web rail speaks the same protocol WhatsApp Web speaks and is not Meta's official API.