Skip to main content
Question

Multilingual chatbot with ManyChat + custom PHP website (best approach?)

  • May 2, 2026
  • 1 comment
  • 11 views

unagustinmas

Hi everyone,

I’m working with a client that sells tango shows in Argentina, and we’re looking to implement automations through ManyChat, including integration with their website (which is custom-built in PHP).

One of the main challenges is that users come from all over the world, so the chatbot needs to handle multiple languages (English, Spanish, Portuguese, French, Russian, Chinese, etc.). Ideally, the bot should detect or adapt to the user’s language automatically.

I haven’t been able to find clear tutorials or best practices for this specific setup. Most solutions seem to rely on external integrations, but it’s not clear which approach is the most effective or scalable.

So I’d love to hear from you:

Has anyone implemented multilingual flows in ManyChat?
How are you handling language detection?
Are you using external tools (e.g. APIs, middleware) for translation or routing?
What would be the best way to integrate this with a custom PHP website?

Any insights, tools, or real experiences would be super helpful. Thanks in advance!

1 reply

SumGeniusAI
Forum|alt.badge.img
  • Smooth talker
  • May 2, 2026

ManyChat doesn't have native language auto-detection, so you've basically got three paths:

1. Ask once, tag forever. First-message button menu (English / Español / Português / etc.), tag the user with their choice, and branch every flow off that tag. Cleanest for ManyChat-native but you end up maintaining N copies of every flow.

2. OpenAI step inside ManyChat. Use the External Request block (or the AI Step) to pass the inbound text to OpenAI with a prompt like "respond in the same language the user wrote in." Skips the tagging entirely. Tradeoff: every reply is an API call and you lose ManyChat's button/card UI unless you parse the JSON response and rebuild structure on the way back.

3. Hybrid. Option 2 for free-form text, fall back to tagged flows for booking / checkout / anything where you actually need structured buttons.

For the PHP integration specifically, External Request POSTs to your endpoint and waits for a response. One thing that bit a few people I've seen: the timeout is roughly 10 seconds, and if a user fires multiple messages quickly you can hit a race condition where a flow reads a custom field before the previous webhook finished writing it. Worth knowing before you go live, especially for anything multi-turn like a booking flow.   

If you go the OpenAI route, happy to share the prompt I've used. It's handled Spanish, Portuguese, French, Russian and Chinese cleanly in production.