Install Dialog on Prestashop
This guide covers the full install flow for Prestashop merchants. By the end you’ll have the Dialog assistant running on your product pages with your catalog automatically synced.
Prerequisites
Section titled “Prerequisites”- Admin access to your Prestashop back office.
- A Dialog account at app.askdialog.com/sign-up.
Step 1: Create your Dialog organization
Section titled “Step 1: Create your Dialog organization”- Sign up at app.askdialog.com/sign-up.
- During onboarding, pick Prestashop as your e-commerce platform.
- Give your organization a name. Dialog generates a public API key and a private API key for it.
Keep both keys visible, you’ll paste them into the Prestashop module in Step 3.
Step 2: Install the Dialog module on Prestashop
Section titled “Step 2: Install the Dialog module on Prestashop”- Download the Dialog Prestashop module (
.zipfile) from the link in your onboarding screen. - In your Prestashop back office, go to Modules → Module Manager → Upload a module.
- Drop the
.zipfile. Prestashop installs and registers it. - Open the module and click Configure.
Step 3: Connect the module to your Dialog organization
Section titled “Step 3: Connect the module to your Dialog organization”In the module’s admin screen:
- Paste your public API key in the corresponding field.
- Paste your private API key in the corresponding field.
- Save.
The module is now authenticated. Behind the scenes it exposes an internal route that Dialog calls during catalog import.
Step 4: Finish onboarding in Dialog
Section titled “Step 4: Finish onboarding in Dialog”Back in the Dialog dashboard:
- Add your guidelines (10 to 15 short rules, see Guidelines per Industry for ready-to-use templates).
- Upload any product documentation you want the assistant to know about (size guides, ingredient sheets, return policies, see Train Dialog).
- Click Save.
What happens when you save
Section titled “What happens when you save”When you click Save, Dialog triggers its import pipeline:
- Dialog’s
StartImportLambda calls the route your Prestashop module exposes. - The module generates the catalog and content JSON files (
catalog.json,pages.json). - The module uploads those files to Dialog’s S3 bucket, authenticated by your private API key.
- Dialog’s import state machine maps them into the canonical schema, then indexes the data into the product store and the vector store.
You get a quick 200 OK back, then ingestion runs asynchronously.
How long the import takes
Section titled “How long the import takes”| Catalog size | Expected time |
|---|---|
| Up to a few hundred products | A few seconds to a couple of minutes |
| A few thousand products | A few minutes |
| 20k+ products | Tens of minutes |
Step 5: Verify
Section titled “Step 5: Verify”Once the import completes, go to your storefront and open a product page. The Dialog widget should appear.
Run through Verify your install to confirm everything works end to end.
Make sure Dialog can reach your store
Section titled “Make sure Dialog can reach your store”Dialog imports your catalog by calling your store from its own servers, over HTTPS, not from your browser. A shop that loads fine for you can still be unreachable for Dialog.
Before finishing onboarding, confirm that:
- Your store is served over HTTPS on a publicly resolvable domain.
- The TLS certificate matches that exact domain. A certificate issued for a different domain, a shared hosting certificate, for example, is rejected.
- The module endpoint answers:
https://your-store.com/module/askdialog/api?action=getLanguageDatamust return JSON, not a maintenance page or an error.
Staging stores and shops that aren’t publicly accessible
Section titled “Staging stores and shops that aren’t publicly accessible”Test and pre-production shops are often protected by Prestashop maintenance mode, HTTP Basic Auth, a password, or an IP restriction. Dialog then receives a maintenance page (HTTP 503) or a 401/403 instead of the module’s response, and the import fails.
Two ways to solve it:
- Let Dialog’s servers through. Keep the shop restricted and add Dialog’s egress IP address to the allowlist: in Prestashop that’s Shop Parameters → General → Maintenance → Maintenance IP (comma-separated list). Ask support@askdialog.com for the current address to allowlist. Don’t use your own, your office’s, or your agency’s IP: those are not the addresses Dialog connects from.
- Or open only the module endpoints. Leave the rest of the shop protected and allow
/module/askdialog/feedand/module/askdialog/apithrough. Both require your private API key, so opening them doesn’t expose your shop.
If the endpoint still returns a maintenance page or a 401/403 after that, this is the blocker to fix before retrying onboarding.
Recover an onboarding when the module step was skipped
Section titled “Recover an onboarding when the module step was skipped”If your Dialog organization was created but the Prestashop module was never connected, saving your onboarding or picking a plan fails.
Symptoms:
- Saving onboarding or selecting a plan returns
PRESTASHOP_ORGANIZATION_NOT_FOUND. - Trying to create the organization again returns
ORGANIZATION_ALREADY_REGISTERED.
The organization exists, but no Prestashop connection is attached to it yet: the module and API key step (Steps 2 and 3 above) was skipped.
Don’t recreate the organization. It already exists, so a second attempt always fails with ORGANIZATION_ALREADY_REGISTERED. This is not a billing or plan problem either: changing plan won’t help.
To recover:
- Go back to the Prestashop connection step of your onboarding instead of starting a new organization.
- Install and configure the module with your public and private API keys (Steps 2 and 3).
- Confirm your store is reachable: see Make sure Dialog can reach your store.
- Retry saving your onboarding and selecting your plan.
If you can’t get back to the Prestashop connection step, email support@askdialog.com with your organization name and the step can be reopened for you.
Troubleshooting
Section titled “Troubleshooting”| Issue | Likely cause | Solution |
|---|---|---|
| Module shows “API keys invalid” | Keys copied with whitespace or swapped public/private | Re-paste both keys, verifying which is which |
Onboarding fails with PRESTASHOP_ORGANIZATION_NOT_FOUND |
Organization created but the module was never connected | See Recover an onboarding when the module step was skipped |
Import fails and the module endpoint returns a maintenance page or 401/403 |
Shop in maintenance mode, password-protected, or IP-restricted | See Staging stores and shops that aren’t publicly accessible |
Save in Dialog returns 502 |
Module route unreachable (firewall, internal IP) | Check that your Prestashop is publicly reachable and the module is enabled |
| Catalog files don’t appear in Dialog | Module didn’t generate them (PHP error during export) | Check Prestashop’s logs and ask paul@askdialog.com with the operationId shown in the import status |
| Widget doesn’t appear on PDP | Module enabled but the theme overrides one or more hooks the module registers | Your developer should branch the same hooks as our module. The Dialog module registers: actionFrontControllerSetMedia (loads the widget assets), displayProductAdditionalInfo (renders the widget on the PDP), displayFooterAfter (fallback rendering), displayOrderConfirmation (purchase tracking), actionCartUpdateQuantityBefore (cart events). Re-implement the same display hooks in the theme override, or remove the override |
Need help?
Section titled “Need help?”Email paul@askdialog.com with your organization name and the issue.
