Setup wizard

Stores › Settings › Conviro Setup (also linked from the Integration Health card). Seven steps that connect the store without copying tokens. Admin permission: Conviro_AiChat::setup (Permissions). Plan P3.1 and §20 item 4. Code: AiChat/Service/Setup/*, AiChat/Controller/Adminhtml/Setup/*, view/adminhtml/templates/setup/wizard.phtml.

A step marked attention links to its section of this page ("What went wrong and how to fix it", <Documentation URL>/setup-wizard#step-<step>; the Documentation URL is not published yet — see Integration Health).

The wizard remembers each step as todo, done or attention (with when and why) and opens at the first step never done, then at the first one needing attention. The facts win over the record: if the store is disconnected later, Connect turns back to attention. It is safe to run again at any time.

Step 1 — Environment check

Each line is Pass or Action required with the fix:

CheckPasses whenFix when it does not
Magento2.4.4 or laterUpgrade Magento. (Install-tested: 2.4.4-p13, 2.4.7-p4, 2.4.9.)
PHP7.4.0 or laterUpgrade PHP.
HTTPSthe secure base URL starts with https://Stores › Configuration › General › Web › Base URLs (Secure) = https, Use Secure URLs = Yes.
Outbound connectionan anonymous call to Conviro's API gets any HTTP answer (3 s connect timeout)Allow outbound HTTPS to api.conviro.io:443 (Networking).
Magento croncron ran in the last 15 minutesbin/magento cron:install; check bin/magento cron:run completes.
Deliverythe outbox table existsbin/magento setup:upgrade.
Magento modulesIntegration, Web API, Catalog and Sales enabled (MSI optional)bin/magento module:enable … then setup:upgrade.
Extensioninstalled version vs Conviro's latest and security minimumRun the update command shown.

Step 2 — Connect to Conviro

  1. Click Connect to Conviro. The browser goes to https://app.conviro.io/dashboard/integrations/magento/connect (the general/app_url setting) carrying a one-time state, a PKCE challenge, the admin page to return to, the store URL and the Magento / module versions. The admin session remembers the request for 10 minutes.
  2. Sign in to Conviro if asked. The approval page shows the store, the address you will be sent back to (refused outright if it is not the store's host or a subdomain of it — start the wizard from the store's own admin), the workspace (switchable if you have several), the chatbot to use on this store, the versions, and what approving does. Only workspace owners and admins can approve, and the plan must include API access. If the workspace is already connected to another store, the page says that approving connects this store instead.
  3. Approve and return to Magento. Conviro creates an API key for this store only (Magento – <store host>, scope magento:module only — the routes the module calls, not your conversations or knowledge base — limited to the chatbot chosen on the approval page, and bound to this store's URL) and sends the browser back with a one-time code valid for 5 minutes. Cancel connects nothing and does not redirect.
  4. Magento exchanges the code and its PKCE verifier with Conviro server to server, stores the key encrypted, saves the workspace and chatbot ids, fills the chatbot's widget public key only if none is set, and runs step 3 at once.

A replayed callback, a mismatched state, a reused code or a wrong verifier is refused and nothing changes (measured on the local stack against the mock Conviro).

Advanced: paste an API key. The same step accepts a key that starts with cvr_ — for example when the admin browser cannot reach app.conviro.io. The key needs the kb:write scope. Or paste it in the configuration page and click Save Config; that does the same registration.

Step 3 — Magento OAuth

The wizard lists, in plain words, what Conviro will be able to read (order actions marked optional and off), then creates or repairs the Conviro AI Chat integration with exactly those permissions (Permissions) and sends its OAuth 1.0a credentials to Conviro. Conviro tests them against your store and answers with the connection mode:

This is the same registration as Save Config, Reconnect and the automatic migration of 1.3.x stores.

Step 4 — Store views

A table of every store view: website, store, view, code, base URL, locale, currency. All are ticked by default.

For unselected store views the module sends no customer, order, cart or payment events, historical sync skips them, and Conviro never reads live data in them (a shopper there is answered from the default store view if it is selected, else from the first selected website's default view). Product and inventory events are catalog-wide and always flow. The mapping is sent to Conviro now and again on every re-registration. See Multi-store.

Step 5 — Data sync

BoxDefaultWhat ticking it does
CatalogonSwitches Sync Products to KB on and starts the catalog re-sync: every enabled, website-assigned, visible product, 200 a minute by cron; then every product change.
InventoryonStarts an inventory re-sync (current stock of every eligible product; salable quantity with MSI); stock changes are then sent as they happen.
CustomersoffImports existing customer accounts of the selected store views: customer id, group, website, account date and the e-mail, which Conviro stores only as a one-way hash. No names or addresses, never a lead, nothing is sent to them.
Orders + history windowon, 90 daysSwitches Send Order Events on (new orders, shipments, refunds as they happen) and, unless the window is none, imports the orders of the selected store views created in the last 30 / 90 / 365 days. Conviro keeps order number, status, total, item count and a one-way hash of the e-mail.
Quotes / abandoned cartsoffYour confirmation that Conviro may receive the shopper's e-mail and cart contents (up to 10 items) to send recovery messages; switches Abandoned Cart Recovery on. Unticking switches it off and withdraws the confirmation.
Failed paymentsoffYour confirmation that Conviro may receive the shopper's e-mail, payment method, cart total and a short error text (never card data) when checkout fails; switches Payment Failure Assistance on.

Save and start initial sync records one job per chosen type; Magento cron runs them in the background and each job's status appears under the step and in the Integration Health card. See Data sync and Cart recovery and payment assist.

Step 6 — AI permissions

What the assistant may do in chat, in plain words (AI permissions): order status and tracking lookup, live stock, product search and pricing, returns assistance, recommendations — on by default — and order-action assistance (cancellation), off by default. Saving sends them to Conviro and grants or removes the order-action permissions on the Magento integration.

Step 7 — Verify

Runs every Integration Health check live and sends a test.ping event through the real outbox and delivery path. The result of each check is kept on the page. The step is done when nothing needs action and the test event was delivered.

After the wizard

Measured: setup-wizard.sh 58/58 on the local Magento 2.4.7-p4 stack against a mock Conviro (3bb49b22). The wizard has not yet been run against the real Conviro backend or on a merchant store.