Uninstall

Plan §20 item 19. Disconnect first, so Conviro stops reading the store and deletes the credentials it holds while the module can still tell it. The uninstall steps below have not been measured on the test stack; the notes on what Magento does are Magento's documented behaviour, not Conviro measurements.

1. Disconnect

Stores › Settings › Conviro Setup › Disconnect (what it removes on both sides). Check that the Integration Health verdict reads "Disconnected from Conviro on …" and that Conviro confirmed it. If Conviro could not be told, also disconnect the store in the Conviro dashboard (Magento card).

Leave Keep the chat widget on my storefront unticked: Disconnect then takes the chat widget and lead form off the storefront at once.

If the connect flow created the API key, Disconnect revoked it (a disconnect from the Conviro dashboard revokes it too). Revoke any key you pasted by hand, and the key used for Composer if it is no longer needed, in Conviro › Developers › API Keys.

2. Remove the module

Composer install:

bin/magento maintenance:enable
bin/magento module:disable Conviro_AiChat
composer remove conviro/module-aichat
bin/magento setup:upgrade
bin/magento setup:di:compile                    # production mode
bin/magento setup:static-content:deploy -f en_US <your store locales>   # production mode
bin/magento cache:flush
bin/magento maintenance:disable

Manual install: module:disable, delete app/code/Conviro/AiChat/, then the same setup:upgrade / compile / deploy / flush.

Optionally remove the repository entry: composer config --unset repositories.conviro and composer config --unset http-basic.repo.conviro.io.

3. What stays behind

Left in MagentoHow to remove it
The Conviro AI Chat integration (inactive after Disconnect)System › Extensions › Integrations › delete it.
Configuration rowsDELETE FROM core_config_data WHERE path LIKE 'conviro_aichat/%';
Lifecycle flagsDELETE FROM flag WHERE flag_code LIKE 'conviro\_%'; — the module uses conviro_setup_state, conviro_setup_environment, conviro_setup_verify, conviro_connection_state, conviro_pending_disconnect, conviro_oauth_migration.
Tables conviro_event_outbox, conviro_sync_job, conviro_inbound_event, conviro_webhook_logMagento's declarative schema documentation says a disabled module's tables are removed by the next setup:upgrade (its db_schema_whitelist.json is still read); verify with SHOW TABLES LIKE 'conviro_%'; and drop any that remain. After a Disconnect the outbox holds no event payloads.
Rows in setup_module and patch_list for Conviro_AiChatHarmless; remove only if you want a clean reinstall to re-run the data patches.

Take a database backup before deleting anything by hand.

4. Data at Conviro

Removing the module does not delete what Conviro already holds (conversations, leads, the minimal order and customer history, knowledge-base entries, audit logs). See Privacy — deletion and export.