Reply

From

Acme China (Service Account)

To

Li Wei

Message

Your order ships tomorrow from Shanghai
Send

Li Wei

Today
When will my order ship?
Your order ships tomorrow from Shanghai

WeChat API for products and agents

Read and answer your WeChat Official Account messages from your own product, with the same Zernio API you use for WhatsApp, LINE and social.

  • SOC 2
  • GDPR compliant
  • 99.97% uptime
  • Under 50ms response

Join 200,000+ of the world's most ambitious developers and builders

Warner Music Group
Runable
ClickUp
MoFlo
RE/MAX
Readdy

Why Zernio?

Everything between you and your first message, handled

Zernio API

  • Encryption handled

    Safe mode messages are verified and decrypted for you

  • Fixed IPs to whitelist

    Every call to WeChat leaves from the same few addresses

  • Tokens kept fresh

    Access tokens renew without logging out your other tools

  • One API for every channel

    Same inbox and webhooks as WhatsApp, LINE and social

Building it yourself

  • A server WeChat can reach

    Signature checks, AES decryption and a 5 second reply deadline

  • A static IP to run

    WeChat refuses API calls from anything off the whitelist

  • Token juggling

    A fresh token can cut off every other tool on the account

  • No inbox

    You build the UI, contacts and history yourself

How It Works

From zero to first WeChat reply in minutes

1

API IP whitelist

IP 1

208.77.246.240

IP 2

208.77.246.241

IP 3

208.77.246.242

Saved

Whitelist our IPs

Add Zernio's IPs to the API IP whitelist of your verified Service Account.

2

Connect WeChat

AppID

wx1a2b3c4d5e6f7a8b

AppSecret

••••••••••••9e0f

Server URL

zernio.com/api/webhook/wechat/…

Token

aB3d••••••••Qr9t

EncodingAESKey

kq3T••••••••••Lw7

Verified by WeChat

Paste the keys both ways

Give Zernio your AppID and AppSecret, then paste the Server URL, Token and EncodingAESKey it returns.

3

Conversations

Òscar

+34 634 44 21 23

All works!

Whatsapp Bus...

+34 639 32 11 23

Hey, i have a question...

Every message in one inbox

WeChat messages land next to your WhatsApp, LINE and social DMs, ready to answer.

WeChat Official Accounts

Everything your Official Account receives, in your product

Conversations

Li Wei

When will my order ship?

Marta Ruiz

Can I change the size?

Jonas Weber

Thanks, got it!

Unified inbox

Text, images, voice, video, locations and links, next to every other channel.

Can I still change the address?
Yes, updated to the new one
47h left · 4 of 5 replies

Replies

Answer through WeChat's customer service messages, up to 5 within 48 hours of the customer's last message.

Reconnected

Server URL

Kept

Token

Kept

EncodingAESKey

Kept

Safe reconnects

Reconnecting keeps the Token and EncodingAESKey, so nothing has to be pasted into WeChat again.

When a message contains

"tracking"

Reply with

Here is your tracking link: zernio.link/t/8f2a

Automations

Keyword replies and automations run on WeChat messages like on every other channel.

POST /webhooks/zernio

{

"event": "message.received"

"platform": "wechat"

"from": "Li Wei"

"text": "When does it ship?"

}

Webhooks

Get message.received on your server for every new WeChat message, in the same shape as every channel.

Encrypt

8pWq3Zr0dKx+T1vYb9mQ2h7LsNc4…

When will my order ship?

Safe mode

Messages stay encrypted between WeChat and Zernio, with keys generated for each account.

Integrate

Let an agent run WeChat end to end

Every step runs through Zernio's MCP server, so an AI agent can read WeChat messages and draft replies inside the 48 hour window without anyone opening the dashboard.

› claude

Claude Code v2.1.19

Opus 4.5 · Claude Max

~/software

›

✓ registered · https://mcp.zernio.com/mcp

✓ signed in over OAuth · no key pasted

✓ call_tool · read 6 WeChat chats

✓ 6 replies drafted · nothing sent yet

Build it yourself with 8 SDKs or the CLI

Read and answer WeChat messages with one REST call from Node, Python, Go, Ruby, Java, PHP, .NET, or Rust, or script it from the terminal with the Zernio CLI.

Read the docs
import Zernio from '@zernio/node';
const zernio = new Zernio(); // reads ZERNIO_API_KEY
const { data } = await zernio.messages.sendInboxMessage({
path: { conversationId: 'conv_3c1d' },
body: { accountId: 'acc_8f2a', message: 'Your order ships tomorrow from Shanghai' },
});
  • Node
  • Python
  • Go
  • Ruby
  • Java
  • PHP
  • .NET
  • Rust
Pricing

Messages on one meter

A WeChat account counts as one connected account on your plan. The messages you send share the message allowance with every other channel.

After 10,000 free a month

$1

Per 10,000 messages sent

Messages received

Free

WeChat's own fees

Paid to WeChat

Frequently Asked Questions

Ship WeChat today

No credit card, no sales call. Connect your WeChat Official Account and start replying today.

  • SOC 2
  • GDPR compliant
  • 99.97% uptime
  • Under 50ms response