Messenger API
Everything the panel can do with a connected Telegram, WhatsApp or Instagram account, over REST — one key, one response shape, chapter by chapter.
Sales & payments
Products, orders and payments inside chat-bots: Payme, Click, Telegram Stars or manual.
Products and payment gateways are set up in the panel (Sales). An order gets a Payme / Click link, or — from a bot — a Telegram invoice; when it is paid the contact is tagged paid:{product}, the payment_ok rules run and your webhooks receive order.paid.
Base URL: https://chatvendor.net/api/v1 · every response is {"success": true, "data": …}
GET
/shop/products
Products of the workspace (name, price, picture, category, stock)
channels:read
Scope: channels:read
Response 200
OK
curl https://chatvendor.net/api/v1/shop/products \
-H "Authorization: Bearer cv_live_xxxxxxxxxxxx"
GET
/shop/orders
Orders (filters: status, peer_id, product_id, limit)
channels:read
Scope: channels:read
Response 200
OK
curl https://chatvendor.net/api/v1/shop/orders \
-H "Authorization: Bearer cv_live_xxxxxxxxxxxx"
POST
/shop/orders
Create an order for a contact and get the Payme / Click pay link; send=true posts it into the chat (gateway=telegram: a bot invoice paid with Stars or a provider token)
channels:write
Scope: channels:write
Body (application/json)
channel_idstringpeer_idintegerproduct_idintegergatewaystring: auto | payme | click | telegram | manualsendbooleantextstringpromostringResponse 200
OK
curl -X POST https://chatvendor.net/api/v1/shop/orders \
-H "Authorization: Bearer cv_live_xxxxxxxxxxxx"
-H "Content-Type: application/json" \
-d '[]'
GET
/shop/orders/{id}
One order with its pay link
channels:read
Scope: channels:read
Parameters
idpath · integerrequiredOrder id
Response 200
OK
curl https://chatvendor.net/api/v1/shop/orders/1 \
-H "Authorization: Bearer cv_live_xxxxxxxxxxxx"
POST
/shop/orders/{id}/paid
Mark an order paid by hand (fires payment_ok rules, tags, subscription clock)
channels:write
Scope: channels:write
Parameters
idpath · integerrequiredOrder id
Response 200
OK
curl -X POST https://chatvendor.net/api/v1/shop/orders/1/paid \
-H "Authorization: Bearer cv_live_xxxxxxxxxxxx"
POST
/shop/orders/{id}/cancel
Cancel a pending order or refund a paid one (revokes tags/access)
channels:write
Scope: channels:write
Parameters
idpath · integerrequiredOrder id
Response 200
OK
curl -X POST https://chatvendor.net/api/v1/shop/orders/1/cancel \
-H "Authorization: Bearer cv_live_xxxxxxxxxxxx"