SocialHook
Frequently Asked Questions

Every question about
SocialHook. Answered.

WhatsApp Business API, Facebook Messenger, Instagram DM webhooks — pricing, setup, security, GDPR, and competitor comparisons. All in one place.

70 questions across 9 categories

💡

General

What SocialHook is and how it works at a high level

SocialHook is a Meta messaging webhook platform for developers and technical agencies. It sits between Meta's official messaging APIs and your server. Every inbound message from a connected Facebook Page, Instagram Business account, or WhatsApp Business number is normalised into a clean, structured JSON payload and delivered to your configured webhook URL — signed with HMAC-SHA256, in under 50ms, with automatic retry on failure.

You build the logic. SocialHook handles the Meta API complexity — OAuth token management, webhook subscription registration, signature signing, retry, and delivery logging — so you never have to rebuild that boilerplate again.

SocialHook supports all three Meta messaging platforms:

  • WhatsApp WhatsApp Business API — via the official WhatsApp Cloud API. Every inbound message type: text, images, documents, audio, video, location, contacts, reactions, delivery receipts, read receipts.
  • Facebook Facebook Messenger — every Facebook Page DM, postback, quick reply, and read receipt delivered as a webhook event.
  • Instagram Instagram DM — Direct Messages, story replies, and mentions from Instagram Business and Creator accounts.

All three platforms are included in the $50/month subscription. There is no additional charge to add a platform.

SocialHook is built for developers and technical agencies who need raw webhook delivery from Meta messaging platforms. Three main groups use it:

  • Developers building AI agents, chatbots, CRM integrations, or automation systems on WhatsApp, Facebook, or Instagram — who need reliable inbound webhook delivery without managing Meta API complexity.
  • Technical agencies managing Meta messaging integrations for multiple clients — who need one account to connect multiple Facebook Pages, Instagram accounts, and WhatsApp numbers.
  • SaaS founders building products where Meta messaging is a core channel — who need affordable, predictable infrastructure that doesn't charge per message as they scale.

No. SocialHook is pure webhook infrastructure. There is no drag-and-drop flow editor, no chatbot template library, and no visual automation builder. SocialHook delivers the raw message data to your server. What you do with it is entirely your decision — AI agent response, CRM update, n8n workflow trigger, database write, anything.

If you want a no-code chatbot builder for marketers, ManyChat or Chatfuel are built for that. SocialHook is for developers who want the raw data and build their own logic on top.

SocialHook has a dashboard inbox where you can view and reply to conversations as a single user. But it is not a multi-agent shared inbox in the style of Respond.io, Trengo, or Sleekflow. There is one account per subscription, no seat management, no conversation assignment between agents, and no SLA tracking.

If you need a team inbox for your customer support team to handle hundreds of conversations across agents, those tools are built for that use case. SocialHook is infrastructure for developers — with a lightweight inbox for occasional manual interaction.

Yes. SocialHook uses official Meta APIs — the WhatsApp Cloud API, Messenger Platform API (via the Graph API), and Instagram Messaging API. It operates as a Meta-approved platform using official API access. There is no unofficial scraping, no reverse-engineered API access, no workarounds. Your WhatsApp Business number connects through Meta's own Embedded Signup flow.

The flow is simple:

  • A customer sends a message to your WhatsApp number, Facebook Page, or Instagram account
  • Meta's API receives it and forwards it to SocialHook
  • SocialHook normalises it into a consistent JSON structure regardless of which platform sent it
  • SocialHook signs the payload with your HMAC-SHA256 secret key
  • SocialHook fires an HTTP POST to your configured webhook URL
  • Your server receives the signed payload, verifies the signature, and handles the logic

Average time from Meta receipt to your server: under 50ms. If your server returns non-200, SocialHook retries automatically.

You need something that can receive an HTTP POST request. That can be:

  • A traditional server (Node.js, Python, PHP, anything)
  • A serverless function (AWS Lambda, Cloudflare Workers, Vercel Functions)
  • An automation platform with a webhook trigger — n8n, Make.com, Zapier all work natively

SocialHook is not a no-code tool for non-technical users. You need a server, a function, or a webhook-compatible automation platform.

🚀

Getting started

Setup, onboarding, and first webhook delivery

Under 5 minutes from account creation to receiving your first live payload. The onboarding flow is three steps: connect a platform via OAuth, paste your webhook URL, send a test message. That's it. No Meta developer console. No BSP registration paperwork. No app review waiting period.

No. SocialHook handles the WhatsApp Business API registration as part of the onboarding process via Meta's Embedded Signup flow. All you need is:

  • A WhatsApp Business number (your existing number works — no new number purchase required)
  • A Meta Business Manager account (free to create if you don't have one)

SocialHook manages the Cloud API registration, webhook subscription setup, and all BSP complexity automatically. You don't touch the Meta developer console.

No. SocialHook is already a Meta-approved platform. You use SocialHook's app — not your own Meta app. There is no developer account setup, no app creation in Meta's developer console, and no waiting through Meta's app review process. You just connect your existing Facebook Page, Instagram account, or WhatsApp Business number via OAuth and SocialHook handles the rest.

Yes, a free trial is available. No credit card is required to create your account or start the trial. You can connect your Meta accounts, configure your webhook URL, and receive live payloads before entering any payment information. You'll only be asked for payment when you're ready to continue after the trial period ends.

From your SocialHook dashboard, click "Add Platform" and choose which platform to connect. For Facebook and Instagram, you'll go through Meta's standard OAuth flow — log in with your Facebook account, grant the required permissions, and select which Pages or Instagram accounts to subscribe. For WhatsApp, you'll use Meta's Embedded Signup flow to connect your WhatsApp Business number. The webhook subscription is registered automatically on completion. The whole process takes under 2 minutes per platform.

In the SocialHook dashboard under Settings → Webhook, paste your server's endpoint URL. Generate a secret key (one click), choose which event types to subscribe to, and click Save. SocialHook validates the URL is reachable over HTTPS and saves the configuration. Use the "Send test payload" button to fire a sample event to your endpoint and confirm it's working — without waiting for a real customer message.

During local development, use ngrok to expose your local server to the internet.

Yes. During local development, use ngrok, Cloudflare Tunnel, or similar tools to expose your local server to the internet with a public HTTPS URL. Paste that URL as your webhook endpoint in SocialHook, and payloads will hit your local server directly. The "Send test payload" button in the dashboard is particularly useful here — it fires a real payload without needing a test WhatsApp message. Full quickstart guide with ngrok setup at socialhook.io/docs/quickstart.

WA

WhatsApp

WhatsApp webhooks, Cloud API, numbers, message types

SocialHook uses the WhatsApp Cloud API — Meta's official hosted solution. The On-Premise API (previously the self-hosted option) is being deprecated by Meta and is no longer recommended for new integrations. The Cloud API is the current, future-proof, officially supported option — and the one all reputable providers use.

All of them. SocialHook delivers every WhatsApp message type as a structured JSON payload:

  • Text — plain text messages
  • Images — JPEG and PNG with media URL and caption
  • Documents — PDF, DOCX, and other files with filename and download URL
  • Audio — voice notes and audio files
  • Video — MP4 and other video formats
  • Location — latitude, longitude, and address
  • Contacts — vCard contact shares
  • Reactions — emoji reactions to messages
  • Delivery receipts — confirmation when a message reaches the recipient's device
  • Read receipts — confirmation when the customer reads your message

Yes. Multiple WhatsApp Business numbers are fully supported under one SocialHook subscription. Each number appears as a separate connection in your dashboard. Every payload clearly identifies the phone_number_id of the receiving number so your webhook handler can route messages from different numbers to different logic.

This is particularly useful for agencies managing multiple client WhatsApp numbers — all under one SocialHook account at a flat $50/month.

Yes. You connect your existing WhatsApp Business number through Meta's Embedded Signup flow. You do not need to purchase a new number. Your current number — and all its existing conversation history — stays intact. SocialHook simply registers as the webhook receiver for new incoming messages.

No. SocialHook uses the official WhatsApp Business API, which only works with WhatsApp Business accounts (not personal WhatsApp). You need a WhatsApp Business number registered with Meta Business Manager. Personal WhatsApp accounts do not have API access — this is a Meta limitation, not a SocialHook one.

Meta charges conversation-based fees for certain types of WhatsApp messages — specifically outbound messages initiated by businesses (marketing, utility, and authentication categories). These fees are charged by Meta directly and vary by country.

Important: SocialHook's $50/month fee covers only the webhook infrastructure for receiving inbound messages. Inbound messages (customers messaging you first) are currently free under Meta's policy. If you send outbound messages using the WhatsApp Cloud API, Meta's conversation fees apply separately — check Meta's official pricing page for your target markets.

This is different from providers like Twilio, Sinch, and Userlike who layer additional per-message fees on top of Meta's charges. SocialHook adds zero per-message fees.

The current version (V1) of SocialHook handles inbound webhook delivery — receiving every incoming WhatsApp message and delivering it to your server. Human agents can send replies manually from the SocialHook dashboard. Programmatic outbound sending via API is on the roadmap.

For now, outbound WhatsApp messages are sent directly via the WhatsApp Cloud API from your own server code. The quickstart guide covers this setup.

WhatsApp message template management (creating, submitting for approval, and sending approved templates) is on the V2 roadmap. In V1, templates are managed directly in Meta Business Manager and sent via the WhatsApp Cloud API from your server. SocialHook delivers all inbound responses to templates to your webhook in real time.

Yes. SocialHook uses the WhatsApp Cloud API which is available globally. There are no geographic restrictions on which countries your WhatsApp Business number can be registered in or which countries your customers message from. WhatsApp is particularly dominant in Brazil, India, Indonesia, Germany, the UK, Middle East, and Latin America — all fully supported.

Meta's WhatsApp Business API allows free-form replies only within 24 hours of the last inbound customer message. After 24 hours of no new customer message, you can only respond using pre-approved message templates. This is a Meta policy, not a SocialHook limitation.

SocialHook's dashboard composer enforces this — it shows a clear indicator when the window is open or closed, and disables free-form reply when the window has expired.

FB

Facebook

Facebook Page DMs, events, permissions, and billing

SocialHook delivers all core Messenger webhook events to your endpoint:

  • message.received — every inbound text, image, file, audio, or video DM to your Page
  • postback — when a user taps a button in a structured message template
  • message.delivered — confirmation your outbound message reached the user
  • message.read — confirmation the user opened your message
  • chat.created — when a new conversation thread is opened

You choose which event types trigger a delivery in your webhook settings.

Yes. Multiple Facebook Pages are supported under one SocialHook subscription. During OAuth you select which Pages to subscribe. Each Page appears as a separate connection in the dashboard. Every payload identifies the Page it came from via the page_id field, allowing you to route messages from different Pages to different logic in your handler.

You need admin access to the Facebook Page you want to connect, and a personal Facebook account to authorise through OAuth. A full Facebook Business Manager account is not required for basic Messenger webhook access, but is recommended for managing permissions cleanly — especially for agencies managing client Pages.

Meta does not currently charge conversation fees for Facebook Messenger inbound messages — unlike WhatsApp which has conversation-based fees for some outbound categories. Facebook Messenger API access is included in Meta's platform at no per-message cost. Your only cost is SocialHook's $50/month subscription.

SocialHook requests the minimum permissions required: pages_messaging, pages_read_engagement, and pages_manage_metadata. These allow SocialHook to receive inbound messages via webhook and register the webhook subscription. No write permissions beyond what's needed for webhook setup are requested.

A Page-Scoped ID (PSID) is the unique identifier Meta assigns to each user per Facebook Page. It is different from their real Facebook user ID — the same person has a different PSID for each Page they interact with. SocialHook includes the sender's PSID in every Facebook Messenger payload. Use it as your stable customer identifier for CRM sync, de-duplication, and conversation threading.

IG

Instagram

Instagram Direct Messages, story replies, and mentions

SocialHook delivers three types of Instagram messaging events:

  • message.received — every inbound Direct Message to your Instagram account
  • story_reply — when a user replies to your Instagram story
  • mention — when a user mentions your account in a story

Story replies include a thumbnail of the story being replied to when available.

Yes. Instagram DM API access requires an Instagram Business or Creator account linked to a Facebook Page. Personal Instagram accounts do not have API access — this is a Meta requirement. If your account is currently Personal, you can convert it to a Business or Creator account in Instagram Settings → Account → Switch to professional account (it's free and reversible).

Yes. Meta's Instagram Messaging API requires your Instagram Business/Creator account to be linked to a Facebook Page. This is a Meta platform requirement. Linking takes about 2 minutes in your Instagram settings — go to Settings → Account → Linked accounts → Facebook. Once linked, you can connect the Instagram account via SocialHook's OAuth flow.

Yes. Multiple Instagram Business/Creator accounts can be connected under one SocialHook subscription. Each account appears as a separate connection in your dashboard. Every payload includes the Instagram username and account ID so your handler knows which account received the message. This is particularly useful for agencies managing multiple brand accounts.

No. Meta currently does not charge per-message or per-conversation fees for Instagram Messaging API access. Your only cost is SocialHook's $50/month subscription, which covers all three Meta platforms with no additional platform-specific fees.

Webhooks & technical

Delivery, retry, HMAC signing, payloads, and integrations

Average delivery time is under 50ms from Meta API receipt to your server response. The P99 target is under 200ms. There is no batching, no polling interval, and no queuing delay. Messages are delivered the moment they arrive from Meta — in real time. This matters for AI agent use cases where response speed directly affects user experience.

SocialHook automatically retries failed deliveries with exponential backoff:

  • Attempt 1 — immediate on first failure
  • Attempt 2 — 5 seconds later
  • Attempt 3 — 30 seconds after attempt 2
  • Attempt 4 — 5 minutes after attempt 3

A delivery is considered failed if your server returns a non-200 HTTP status code or doesn't respond within the timeout window. Failed payloads are held in an encrypted buffer for up to 24 hours. Every retry attempt is logged individually with its HTTP status, response time, and any error body returned. You can also replay any delivery manually from the dashboard.

Every SocialHook delivery includes an X-SocialHook-Signature HTTP header. The value is computed as:

HMAC-SHA256(raw_request_body, your_secret_key)

On your server, you compute the same hash using your secret key and compare with the header value using a timing-safe comparison function. If they match, the payload is authentic and came from SocialHook. If they don't match, reject the request.

Full working code examples in Node.js, Python, and PHP are available at socialhook.io/docs/security. This verification should always happen before your handler processes any message data.

All payloads follow a consistent top-level structure regardless of which platform sent the message:

  • platform — whatsapp / facebook / instagram
  • event — message.received / postback / story_reply / etc.
  • account_id — which connected account received it
  • sender — phone number (WhatsApp) / PSID (Facebook) / username (Instagram)
  • message — type, content, and media URL if applicable
  • timestamp — Unix timestamp
  • conversation_id — stable ID for threading

Complete payload reference with examples for every message type at socialhook.io/docs/payload-reference.

SocialHook sends HTTP POST requests with Content-Type: application/json. Your server should respond with an HTTP 200 status code as quickly as possible — ideally within 5 seconds. If you need more time to process a message, acknowledge receipt with 200 immediately and process asynchronously.

Yes, all three work natively as webhook receivers:

  • n8n — use the Webhook node as your trigger. Set the webhook URL as your SocialHook endpoint.
  • Make.com — use a Webhooks module as your first module. Copy the generated URL into SocialHook.
  • Zapier — use a Webhooks by Zapier trigger. Copy the webhook URL into SocialHook.

Every Meta message will automatically trigger your automation flow. No additional configuration on the SocialHook side. Full guides at socialhook.io/blog/connect-whatsapp-to-n8n and socialhook.io/blog/connect-facebook-messenger-make-com.

In V1, one webhook URL receives all platforms. All three Meta platforms deliver to the same endpoint — your handler checks the platform field to route appropriately. Multiple webhook endpoints per platform (e.g. WhatsApp → /webhook/wa, Facebook → /webhook/fb) is planned for V1.5. The database schema is built to support it — the UI is the only addition needed.

Yes. From the Delivery Logs screen, click any log entry to open the payload inspector. Click "Replay" to re-send the original payload to your current webhook URL. The replay is logged as a new delivery attempt linked to the original. This is useful for testing handler changes without waiting for a real customer message, or recovering from a server outage without losing data.

The Delivery Log records every webhook delivery attempt across all connected platforms. Each entry includes: HTTP status code, response time in milliseconds, retry count, full request headers, complete payload body (syntax-highlighted JSON), server response body, and timestamp. Logs are retained for 30 days. Note: delivery logs contain metadata only — message content is not stored after successful delivery per GDPR commitments.

Yes. HTTPS is required. HTTP endpoints are rejected. This is both a SocialHook requirement and a Meta platform requirement — Meta will not send webhook events to non-HTTPS endpoints. During local development, use ngrok, Cloudflare Tunnel, or a similar tool that provides a public HTTPS URL tunnelling to your local server.

SocialHook monitors every connected platform's token health continuously. When a token is approaching expiry, it's auto-refreshed in the background before it lapses — you won't notice anything. If auto-refresh fails and manual re-authentication is required, a clear alert appears on the connection card in your dashboard with a one-click reconnect button. There's no silent failure — you're notified before delivery stops.

SocialHook maintains a 99.9% monthly uptime SLA on the webhook delivery engine. All incidents — including Meta API connectivity issues — are published in real time at socialhook.io/status. The status page shows 90-day uptime history per service component, live delivery success rate, and average response time updated every 60 seconds. Downtime caused by Meta's own API outages is tracked separately from SocialHook infrastructure downtime.

💳

Pricing & billing

Cost, trials, cancellation, invoices, and agencies

$50 per month, flat. One price. No per-message fees. No per-conversation charges. No contact-count tiers. No seat fees. No setup fees. Whether you receive 100 or 1,000,000 messages this month — your bill is $50. All three Meta platforms, unlimited connected accounts, every dashboard feature, all included.

None. Unlimited messages. Unlimited conversations. Unlimited contacts. We don't meter any usage metric. A WhatsApp campaign that generates 500,000 messages this month costs the same as a quiet month with 200. This is a core product principle — per-message and per-conversation fees punish success. SocialHook doesn't.

None. $50/month is the complete cost. No setup fee, no onboarding fee, no overage fee, no feature unlock fee, no support fee, no BSP registration fee. What you see is what you pay.

Note: Meta itself charges conversation-based fees for certain outbound WhatsApp message categories (marketing, utility, authentication). Those are Meta's fees — not SocialHook's — and apply only to outbound messages you send, not to inbound webhook delivery.

Yes, cancel anytime. No contracts. No annual commitment required. Cancel directly from your dashboard under Settings → Billing — no phone call, no email, no cancellation fee, no questions asked. Your access continues until the end of your current billing period. Nothing is deleted until you're ready.

Annual billing with a discount is on the roadmap and will be available soon. Currently everything is billed monthly with no commitment required. When annual billing launches, existing monthly subscribers will be able to switch.

Yes — each client account is $50/month. One SocialHook account per client. If you're billing clients $200–500/month for your messaging integration service, SocialHook is a small fraction of your margin. And unlike per-message tools (Twilio, Wati, Sinch), your cost doesn't grow as client message volumes scale — your margin improves.

A reseller pricing model for agencies is on the roadmap. If you're managing a large number of client accounts, contact hello@socialhook.io to discuss options.

All major credit and debit cards — Visa, Mastercard, American Express, and others — processed securely via Stripe or Paddle. Card data never touches SocialHook servers. Invoices are available for all accounts. EU customers can provide a VAT registration number to receive VAT-exempt invoices (validated via VIES). For questions about invoicing, contact billing@socialhook.io.

All subscription fees are non-refundable except as required by applicable law. If you cancel your subscription, your access continues until the end of the current billing period — no partial-month refunds are issued. If SocialHook terminates your account without cause, you're entitled to a pro-rata refund for the unused portion of your billing period.

🔒

Security & GDPR

Data storage, GDPR compliance, DPA, and encryption

No. SocialHook does not store message content after successful delivery. The payload is delivered to your server and not retained on SocialHook's systems. For failed deliveries (where your server returned non-200 or was unreachable), the payload is held in an encrypted buffer for a maximum of 24 hours to enable the retry logic — then automatically and permanently deleted. This 24-hour TTL is enforced at the database level, not just application logic. Only delivery metadata (timestamp, HTTP status code, response time) is retained for 30 days for your delivery logs.

Yes. SocialHook is designed with GDPR compliance as a core requirement, not an afterthought:

  • Message content is not stored after successful delivery
  • Failed-delivery payloads: max 24-hour TTL, encrypted at rest, auto-deleted
  • Delivery log metadata: 30-day retention (no message content)
  • Contact profile data and internal notes encrypted at rest
  • All access tokens encrypted at rest (AES-256)
  • Data Processing Agreement (DPA) available on request
  • Standard Contractual Clauses (SCCs) incorporated in the DPA

Full details in the Privacy Policy and DPA.

Yes. A GDPR Article 28-compliant DPA is available at socialhook.io/legal/dpa for review. To request a countersigned DPA, email privacy@socialhook.io with your company name, registered address, and authorised signatory. We return a countersigned copy within 5 business days. Standard Contractual Clauses (SCCs) for international data transfers are incorporated in the DPA.

SocialHook infrastructure runs on AWS with EU region hosting (eu-central-1 / Frankfurt) for EU customer data. All data is encrypted in transit (TLS 1.2 minimum) and at rest (AES-256). Database backups are encrypted, retained for 30 days, then deleted. For GDPR-sensitive deployments, email privacy@socialhook.io to confirm hosting configuration for your account.

Go to Settings → Webhook → Secret Key → Regenerate. A new 64-character hex key is generated and displayed once in a confirmation modal with a copy button. Update your server's environment variable with the new key. There's a brief grace period (up to 60 seconds) where SocialHook accepts both the old and new key during transition — so in-flight deliveries aren't rejected. After that window, only the new key is valid. Regeneration requires typing "REGENERATE" in a confirmation dialog to prevent accidental resets.

Yes. Account deletion is available from Settings → Data & Privacy → Delete account. Deletion requires typing your email address to confirm (irreversible action). On deletion: subscription is cancelled, all Meta tokens are revoked, all account data is deleted per the Privacy Policy retention schedule. You can also export your account data (metadata only, not message content) as a JSON file before deletion.

Your secret key is stored encrypted at rest using AES-256 and is never stored in plaintext. It is never logged, never included in error messages, and never exposed in API responses after initial generation. The only time the full key is visible is at the moment of creation or regeneration — displayed once in a masked field that you reveal manually with a 30-second auto-hide timer. SocialHook staff cannot view your secret key.

⚖️

Comparisons

How SocialHook compares to Twilio, ManyChat, Wati, and others

The core difference is pricing model and setup complexity. Twilio charges per message and per conversation — a WhatsApp integration handling 50,000 messages/month can cost $300–600 in usage fees before the platform fee. SocialHook is $50/month flat regardless of volume. Twilio also requires purchasing a dedicated phone number, separate WhatsApp Business API approval (weeks of waiting), and weeks of setup. SocialHook connects your existing WhatsApp Business number in under 5 minutes via OAuth.

Twilio is a broad CPaaS platform covering SMS, voice, video, and email. SocialHook is purpose-built for Meta messaging webhook delivery. If you need SMS or voice, Twilio. If you need affordable, simple WhatsApp/Facebook/Instagram webhook delivery — SocialHook.

Full comparison: socialhook.io/compare/twilio

They solve different problems. ManyChat is a no-code chatbot builder for marketers — you build flows visually, it sends pre-configured responses automatically. It does not deliver raw payloads to your server. Pricing starts at $15/month but escalates to $800+/month for high-volume accounts based on contact count.

SocialHook is webhook infrastructure for developers — every message is delivered as raw JSON to your endpoint, and you write the logic. No flow builder, no contact-count pricing, flat $50/month.

If you want drag-and-drop chatbot flows without code, ManyChat is the right tool. If you want to build your own AI agent, CRM integration, or custom automation and need the raw data — SocialHook.

Full comparison: socialhook.io/compare/manychat

Wati is a WhatsApp Business Solution Provider (BSP) focused on outbound marketing — broadcast campaigns, approved template messages, and shared team inboxes for support. It is not a webhook infrastructure layer for developers. Wati layers its own fees on top of Meta's conversation charges, making high-volume outbound campaigns expensive.

SocialHook is inbound webhook delivery infrastructure — no outbound campaign management in V1, no shared inbox model, raw JSON delivery to your server. If you need outbound WhatsApp campaigns with a no-code campaign builder, Wati is built for that. If you need inbound webhook delivery at a flat rate — SocialHook.

Respond.io, Trengo, and Sleekflow are multi-channel team inboxes — they route customer messages to support agents, handle conversation assignment between team members, and provide SLA tracking. They charge per seat per agent. They do not deliver raw webhook payloads to your server.

SocialHook is infrastructure, not a team inbox. Use SocialHook if you need raw JSON delivered to your server to build on. Use the inbox tools if you need a team of support agents handling customer conversations manually.

All three are in the same product category — managed WhatsApp business communication platforms for marketing and support teams. None of them provide raw webhook delivery to developer servers as a primary feature.

  • Sinch Engage — $49/mo base + WhatsApp add-on + AI add-on = $800+/month for a typical team. Enterprise-focused.
  • Chatarmin — DACH market focused, WhatsApp marketing campaigns for e-commerce and agencies. Not developer infrastructure.
  • Superchat — Berlin-based, 6,500+ German SMB customers, Google review management integrated. Shared inbox tool, not webhook infrastructure.

SocialHook occupies a different category — pure webhook infrastructure for developers at a flat rate.

A WhatsApp Business Solution Provider (BSP) is a company approved by Meta to provide access to the WhatsApp Business API — they handle the technical API access on behalf of businesses. Wati, 360dialog, and Vonage are examples.

SocialHook is built on top of the WhatsApp Cloud API (Meta's own hosted solution) rather than operating as a traditional BSP. The Cloud API is Meta's preferred modern approach — it eliminates the need for businesses to work through a BSP for basic API access. SocialHook handles the Cloud API connection, token management, and webhook delivery on your behalf without BSP paperwork or fees.

You can absolutely build directly on Meta's WhatsApp Cloud API, Messenger Platform API, and Instagram Messaging API. Many developers do. SocialHook's value is in the infrastructure layer you'd otherwise build yourself — and rebuild on every new project:

  • OAuth connection flow for each platform
  • Webhook subscription registration and management
  • Token expiry monitoring and auto-refresh
  • HMAC-SHA256 payload signing and verification boilerplate
  • Automatic retry with exponential backoff
  • Delivery logging and payload inspector
  • Consistent JSON normalisation across all three platforms

If you do this once, building it yourself is reasonable. If you do it repeatedly across client projects — SocialHook saves you weeks per project and $50/month is the ROI question. Most developers find the math obvious.

Still have a question?
Our team responds fast.

Can't find the answer you need? Email our support team — we respond within 24 hours, Monday to Friday. Or start your free trial and explore everything hands-on.

No credit card required · $50/month after trial · Cancel anytime