Skip to content
  1. Extras
  2. modRetailCRM

modRetailCRM

Description

Component for integrating RetailCRM with MODX.

It targets miniShop2 but can run without it in manual mode, using the full RetailCRM API.

Contents

  • Plugin that listens for specific events
  • System settings
  • icml snippet for basic catalog export to RetailCRM

Out of the box

  1. Track new user registration (including hidden registration on miniShop2 order) and create users in RetailCRM
  2. Track new miniShop2 orders and send order data to RetailCRM
  3. Track order status changes in the store and sync them to RetailCRM
  4. Track order status changes in RetailCRM and update store order statuses (requires RetailCRM-side setup)
  5. Work with forms and send data (requires snippet preparation)

User data sent to RetailCRM

  1. Email
  2. Phone
  3. First name
  4. MODX user ID

Order data sent to RetailCRM

  1. Order number
  2. Order items (price, name, quantity, product ID for catalog link)
  3. Product modifications (msOptionsPrice2 and options)
  4. Delivery cost and method
  5. Payment method
  6. Discount (msPromoCode)
  7. Delivery address
  8. Total order weight

Plugin events

  1. OnUserSave — new users; data sent to RetailCRM
  2. msOnCreateOrder — new orders; data sent to RetailCRM
  3. msOnChangeOrderStatus — order status change; updated order sent to RetailCRM
  4. OnMODXInit — add fields to Payment, Delivery, Order status
  5. msOnManagerCustomCssJs — add fields to Payment, Delivery, Order status
  6. OnHandleRequest — receive data from RetailCRM (e.g. triggers) and apply to site objects (e.g. order status)

modRetailCRM system settings

KeyDescription
modretailcrm_apiKeyAPI key from RetailCRM (Administration / Integration / API keys)
modretailcrm_siteCodeSite code from RetailCRM (Administration / Stores / Your store)
modretailcrm_urlYour CRM URL (from the address bar)
modretailcrm_logLog all requests (for debugging)
modretailcrm_sync_statusesComma-separated order status IDs to sync (e.g. 2, 4)
modretailcrm_custom_customers_classCustom customer module class
modretailcrm_custom_orders_classCustom order module class
modretailcrm_allow_msoptionspriceUse msOptionsPrice2

Presetup

  1. Have a RetailCRM account.
  2. In site system settings (modretailcrm) set: API key, CRM URL, site code.
  3. Delivery: In miniShop2 delivery methods add the RetailCRM code field and fill it from RetailCRM delivery catalog.
  4. Payment: Same for payment methods (RetailCRM Administration / Dictionaries).
  5. Order statuses: Map store statuses to RetailCRM order statuses (RetailCRM Administration / Statuses).
  6. Then configure product upload, user upload, and order upload (see docs). Not required for basic operation but improves reports.