Ninja Forms and Bitrix24

Integration of WordPress Ninja Forms and Bitrix24 CRM with UTM tags and no limits.
image

WordPress Ninja Forms 🧡 Bitrix24

WordPress Ninja Forms and Bitrix24 Integration Integration of WordPress using Ninja Forms and Bitrix24 CRM enables the automatic creation of Leads or Deals when a user submits a form. Key benefits of the plugin include support for an unlimited number of sites, forms, and fields, automatic search and attachment of existing Contact and Company information from CRM. The module can be configured in just 5 minutes.

Smart "Contact Enrichment" provides additional information, while tracking and sending UTM tags enhances analytics. The plugin also supports "Sales Intelligence" to determine the most effective sources, built-in support for a single phone format, and control of repeat leads.

In addition, the plugin provides transfer of visit IDs for the conversion plugin and transfer of visited pages to the Lead for better understanding of customer needs. Due to the use of queues, the plugin provides high reliability and speed of work. Free support is available for all users.

Fields integration

Integration creates a Lead or Deal. The module configures the correspondence of fields on the Site and CRM. There is no limit on the number of leads and fields!

Fields integration

UTM tags and analytics

The module on the site remembers and transmits detailed user analytics: UTM tags, visited pages, client identifiers (Google, Facebook, Yandex), referral domain, client IP address. The plugin fully works with end-to-end analytics!

UTM tags and analytics

Order with product

You can transfer goods to a Deal or LEAD. There is a product search option to link the product on the Site and in CRM (required for inventory control).

Order with product

Queue of responsible

Configure who will receive applications and in what order. A new appeal from a familiar client will go to the manager who previously worked with the client (optional, if the manager is not fired).

Queue of responsible

Phone auto-formatting

For accurate customer identification, phones must be stored in a single format. Select one or several countries and in what format the number should be given. The module supports ALL countries. Each phone number is cleared of letters and special characters.

Phone auto-formatting

And much more…

Search for Contacts and Companies, control of repeated leads, notifications to the responsible, replacement of the price and name of goods from the Bitrix24 catalog, installation, consultations and support.

It is possible to customize the plugin for client requests.

30 days free trial period

Test first, then buy. Each of our modules has a free trial period of 30 days. During testing, you will receive full technical support.

The module is available as part of the subscription Flamix.Bundle.


🔥 Maximize your business efficiency and convenience with a subscription to all Bitrix24 apps, reducing costs by up to 80% while gaining access to a comprehensive suite of business tools.

Instructions for installing and activating a trial.

Free 30 days
$6 month
$60 year



Payments

Details about payment methods. Have questions - contact us.

  • Private cloud or on-Premise
  • Custom Development
  • Premium Support
  • No limits
  • Product Training
  • Maximum performance

API and SDK

Thanks to a single open API, the programmer can customize the integration for any task. SDK (feature set) speeds up your work several times!

API and SDK

PHP
<?php
// Put this on every page, if need catch UTM
\Flamix\Bitrix24\Trace::init('Your page title');

//When sent form
try {
    \Flamix\Bitrix24\Lead::getInstance()
    ->changeSubDomain('leadframework')
    ->setDomain('YOUR.BITRIX24.COM')
    ->setToken('YOUR.API.KEY')
    ->send(['name'=>'Roma','phone'=>'+3809811']);
} catch (\Exception $e) {
    $e->getMessage();
}
?>

Ready modules for CMS

For popular CMS, we have developed modules that can be installed in a few clicks and placed in the official marketplaces.
Enter the data in the fields and the integration will work!

Version history

Current stable version — v2.0.0, 07.06.2023

The app works in the cloud and updates automatically.

v2.0.0, from 07.06.2023 Show
1 0 0 206
  • ProductFields fix bug in UI
  • Zero downtime
  • Storage now general to all
  • Marketplace: Delete proxy
  • Events refactoring
  • Support multistatus
  • Remove INTEGRATIONS_SETTINGS_PRODUCT_SEARCH_XML_ID dubl 0
  • Add packege count UI info
  • Phone: Add PHONE_FORMAT_ENABLE_NOTIFY to UI
  • Phone: separated queue
  • Phone: Moved to JOB
  • Phone: Setting for notifications in controller
  • Phone: Batch refactoring && small improvement
  • Epicenter: Translate status
  • Add proxy
  • Shopify and WIX to Market
  • Disable Status in meny to WIX && Shopify
  • WIX && Shopify config
  • Epicenter && Rozetka - Fix price
  • Update Epicenter env
  • Epicenter env
  • Marketplace dinamyc type
  • WIX & Shopify start congig
  • Match URL: WIX && Shopify
  • Shopify config
  • WIX instructions
  • Small fix
  • Small refactoring
  • Small GForm refactoring
  • GForms separate logging
  • Shopify && WIX
  • WIX - Prepared
  • Tilda Simply refactoring
  • Add HOSTNAME to tilda by default
  • Update apps name translate
  • Migrate marketplace route to separated route
  • Update UI
  • Remove CRM/Core
  • Small typo
  • Change settings to new controller
  • Change phone display
  • Tilda add 10 seconds tilda status pause
  • Bind setting change
  • Status translate
  • Fix error in UA lang
  • Fix eeror with app name when add to Contact-center
  • Rozetka video
  • CS-Cart video
  • Rozetka: Fix error when try to save empty connection
  • Update UI && Market connector check
  • Increase Messages limit
  • Fix tilda XML_ID
  • Gitignore
  • Gitignore
  • Add rozetka logo
  • Marketplace: fix many small errors
  • Marketplace: translate, improve UI and refactoring
  • Update UI
  • Fix Rozetka Controller
  • Tilda Status Fix bugs
  • Add tilda docs
  • Add Docs
  • Tilda status functional
  • product Compability
  • Tilda: Support dinamic discount
  • Add documentation
  • Messager finish
  • Add Marketplace P2 (Prototipe)
  • Improve DuplicateController
  • Phonenumber: add lock && notify optimize
  • Fix error when save countries
  • Small refactoring
  • Phone: Now send notify!
  • Change changeEnumeration null to empty value
  • Add Bitrix && CS-Cart has_product options
  • Add OnePhone Pay version
  • Add CS-Cart and GForms
  • Fix bugs with multiple fields
  • Add status logs
  • Fix GForms error when good key.
  • Set 40 limit to Lead key
  • Add frameworks_integrations_pay
  • Change Status Blocking()
  • Add descriptions to StatusController::siteChange()
  • Add block() to status
  • Refactoring StatusController and add block func to CrmRequest
  • Hot fix! Change timezone to Kiev!
  • Update timezones
  • Show timezones in logs
  • Fix DB and Server Timezone bug
  • Refactoring OrderStatusJob
  • Add more logs to Status siteChange Controller
  • Change Secure to SecureController
  • Fix proxy status
  • New banned portal
  • Fix bug in phoneController & change log
  • Fix error when status cant get No
  • XML_ID improvment
  • Use new chLog helper
  • Add lead on 3 worker
  • Update UI logs
  • Fix order status job setting
  • Add banned portal
  • Add B24App::getInstance() to Status
  • Now XML_ID is revriteble when status send
  • Force send status to https
  • Product sending when status changing
  • Fix bugs, add products when change status
  • Change status traits name
  • Status: deep refactoring and now status can set when add new lead
  • Status refactoring
  • Chenge UA
  • Add only one wueue
  • Remove 3 queue fot test purpose
  • Small Placement changes
  • Add Binding
  • Refactoring PhoneController
  • Add Warning to UA portal
  • Show XML_ID selector on OpenCart and Tilda app
  • Fix bind url
  • Chande DB
  • Add Enrich Contac FAQ
  • Fix bug when init!
  • Fix bug with enrich contact
  • Add $FieldsController
  • Delete type param
  • Improve send MSG
  • Add more logs to Lead Job
  • Refactoring Send Message
  • Add lead_ID to log
  • Hot fix! Error when show fields
  • Now we logging lead and deal ID
  • Fix bug with log in Enrich
  • Error when adding Lead Job!
  • Add log when create Lead And Deal
  • Fix bug when save setting
  • Remove some translate
  • Available to everyone translate
  • Update JS and Css
  • Now Field is main
  • Update packeges
  • Add msg when Enriched
  • Add Responcible from Contact
  • Translate to new settings
  • Add PortalLog when status changed
  • NEW: Enrich Contact info
  • HOT Fix!
  • Refactoring uniqueId() in OrderStatus
  • Refactoring uniqueId() in OrderStatus
  • Remove GDrive, Finance & ECP Controllers
  • New Apps Selector Core
  • Refactoring main Lead method
  • Add uniqueFor() from settings
  • Oprimize OrderStatusJob
  • Status now send URL if 500 error
  • Queue: Status now has own queue
  • Remove Flamix.Finance and Google Drive
  • Fix error in field matching template
  • Queue: Lead to queue_type
  • Add new Settings UI
  • Routing refactory
  • Remove JS from UI
  • Add Bind::init
  • Change queue settings
  • New menu
  • Translate
  • Add package.json
  • Remove old queue starter
  • Change DEV Env
  • Not run Queue in dev env
  • Now Queue have 6 stream
  • Now Lead App have own fork
  • Add br to status msg
  • Status loader
  • Fix status_inc page bug
  • Change loader to UI
  • New Loader component
  • Remove logs
  • HOTFIX! Change PORTAL_ID in Log from obj to int
  • Hot fix! LogController
  • Hot fix! LogController
  • Hot fix! LogController
  • Add FAQ & Video links
  • Add FAQ to Bitrix
  • New theme
  • Empty matching fields update
  • Update JS
  • Update UI framework
  • Update Integrations lead pages
  • env -> config
  • Add Opencart & Epicenter status
  • Add WP & Bitrix status translate
  • Remove Queue
  • New Exeptions
  • Fix Add placeholder
  • Add new menu locations to header
  • Remove UI
  • Add new error template
  • New error hendler
  • New themes
  • Add FAQ to dev))
  • StatusController Refactoring
  • Fix Proxy Status URL
  • Fix @if($slot->isNotEmpty())
  • Update input style
  • Small fix
  • Refactoring Main Jobs
  • Add setPoertalId
v1.5.0, from 10.08.2022 Show
4 0 6 122
  • Tilda:Improve instuctions v2
  • Tilda:Improve instuctions
  • Phpne formating & Lang files
  • Add manualy phone format
  • Phone plugin
  • GDrive Upload file link
  • Tilda: Fix promocode & Find_BY
  • Phone:Bug when cant find contact
  • Tilda: fix syntacsys error
  • Status error on some portal
  • Forgot passwor now on English
  • Fix bug when take Trial
  • Update font size on Demo UI
  • Minify JS & CSS to product
  • Update Trial UI
  • Update License UI
  • Move env() to config()
  • Update Laravel to v.9
  • Remove error_log from commit and add to ignore
  • Prepare to proxy sent status
  • Fix table_lead_field_product_xml_change translate
  • GForms: Ignore left menu
  • Fix typo in instructions
  • GForms: Add translate & config
  • Add XML_ID changer to Woo
  • Add default APP_KEY
  • Remove some translate
  • Add Rozetka translate status
  • Fix custom produc search
  • Hot fix: Disable new env
  • XML_ID translate
  • Add FIND_BY custom
  • Rozetka fix CMS
  • Fix wrong SKU search
  • Fix bugs with Bridge of Fields
  • Fix Protal Id in new FieldValue Controller
  • Add payment to tilda
  • Add boolean and select types
  • Optimize Lead and Deal code
  • Add rozetka env
  • Menu & Proxy Hot fix
  • Add Domain to Proxy
  • Tilda: Fix options
  • Fix Auth rules bug
  • Hot fix
  • Fix menu
  • Add Marketplace to menu
  • Update Rozetka env
  • Tilda - Fix Promocode error
  • Marketplace: Rozetka integrations init
  • Disable auto queue and fix tilda vatiation bug!
  • Formating CMD: Queue auto start
  • Add cmd queue check to sheduller
  • Add cmd queue check to sheduller
  • Add CMD: Queue auto start
  • GForms: Add URL
  • GForm: Add new bright
  • fix problem whi bitrix installing
  • Add Bitrix installing
  • Child fix
  • Dev: Chance queue to sync
  • ORDER_ID to TILDA
  • Bug with LEAD access
  • Tilda: Add order_id to field
  • Fix bug with LEAD -> DEAL convertations
  • Fix license bug
  • Add api_token to Robots toute
  • Robot: Search duplicates
  • Add video to apps (tilda, wp, op, gdrive, paperless)
  • Fix tilda all FIELDS
  • Tilda PRO: Improve Product & Delivery info
  • Fix error with route
  • Fix bug with queue listen
  • Tilda: UTM&UF_CRM_FX_CONVERSION
  • Add all UTM
  • Integrations:Create field button & Translate status functionality
  • Create status field p.1
  • Sort status
  • Improve status change
  • Phone: Fix 500 in bath page
  • Delete left menu on tilda
  • Tilda fix menu
  • Phone format pay version
  • Add Tilda config
  • Fix bug with Phone on batch
  • Improve QUEUE interval, and uniq Lead
  • Change save method
  • Fix tilda controller
  • Fix error with send msg
  • Fix error with send message in Queue
  • Add tilda views
  • Tilda: Fix product
  • Disable caching on Queue
  • Add Log to Status Order_ID field
  • Change Queue to DB
  • Add Queue Cron Checker
  • Tilda&Product controller mod
  • Pretty syntacses
  • Modify Lead Add second parameter to objects
  • Improve Logs Views
  • Fix Portal Log
  • feauture: Lead Add now work EXTRYMLY FAST with Queue
  • Move DebugBar to Middelware & Remove $type from integrations
  • Queue prepare
  • Improve Logging in Integrations
  • Fix bugs with email parse
  • Tilda v.1
  • Fix Phone Batch format
  • Country must be always array
  • Fix error with phone formatig NAME
  • Menu fix for OnePhone
  • Phone - change token
  • Fix route problem
  • Modify Phone config
  • Finance - add CRM close
  • Remove UA default version from phone
  • Finance Robot v1
  • Add finance robot
  • Update
  • Finance setting bone
  • Array to string convertations
  • Add finance route
  • Add phone env & web route
  • Phone format run for all base
  • Deny free plan
  • Fix error with non admin user & add license
  • Fix Queue bug
  • Remove composer.lock from git
  • Fix product bug
  • Refacroting product and integration
  • Refactoring p3
  • Add to CONTACT_CENTER
v1.2.0, from 25.09.2021 Show
10 0 1 102
  • ECP - PAPERLESS - LOGIN
  • Lead and Site sync
  • Lead and Site sync
  • Add lead CRM sync
  • Add lead CRM sync
  • auto setting
  • Fix bugs with auto duplicate options
  • Setting bugs in WP fixed
  • Change days word
  • Add English to Default Language
  • Fix HTTP_HOST in app.php
  • Move get ORDER_ID to StatusController
  • Fix bug with order ID
  • Update UI
  • Update UI
  • Add new error controle
  • Improve Status Validations
  • Oprimize Add Lead
  • Add URL to Fields
  • secure:Lead sync error
  • Add Lang to Public API
  • Add public API
  • GDrive pay Bill ID
  • Update GDrive Pay Version
  • Modify .env ALL
  • Change LOG
  • Add top menu
  • Delete menu
  • Fix Google Drive error
  • Add GDrive public
  • Add Google Drive Base
  • featire:Add WP&WooCommerce payed version
  • Small changes
  • Add danger fields msg
  • secure: Update status event provider
  • Add instructions and translate
  • Bind page
  • Almost finish status
  • Status fix
  • Compleate Status p3
  • Add status view
  • Status p2
  • Status dev version
  • fix
  • Smart Apps Cheking
  • Add OpenCart module
  • Light Dublicate Controlle
  • Add Product finder
  • Add Double
  • Add Integer and Date
  • Fix default Route to WooCommerce
  • Update main server
  • Change env scope
  • Fix Bug with phone number
  • Add Currency
  • Add URL and some translate
  • Update ENV, Make all app Free, Add WooCommerce
  • Add bad browser msg
  • Fix bug with email
  • Lead: Support File Upload
  • Fix bugs with setting
  • Fix user msg bug
  • Update UI
  • Change email filter
  • Change login
  • Add menu and some insert fix
  • Ad if to placement
  • Add norm user blade
  • hide menu and update UI Css
  • add gitignore to upload
  • Fix dropzone
  • Update UI
  • Back up restore
  • Update UI
  • Fix dropzone and add new Bitrix product
  • Update UI and add new support plane
  • Update UI
  • Add CRM plan to env
  • Change prefix ECP
  • Change Menu
  • Change Menu
  • Change Menu
  • Change ECP default route
  • Change Access settings
  • Pre deploy
  • Finish finance auth
  • secure: Fix bug with access
  • Add Bitrix and Frameworks
  • Start ECP programming
  • Secure: Change app start setting and Header Menu
  • Delete UI Lang file
  • Fix bugs when have only PRODUCT_ID
  • Bug with product finder
  • Add url to deal and order
  • Add Product Finder
  • Report ro telegram
  • Small changes
  • Fix Lead Bugs, add WP and add Deal
  • hide QUQUE
  • Translate menu
  • Lang and some settings
  • separated some functions
  • Add separeted Custom fields
  • Change multilang and Envoy
  • Add multy domain
  • Add Eng and UA translate
  • Add translate
  • Add Russian translate
  • Update UI
  • Change some UI
  • Update UI
  • Update UI
  • Too many changes
  • Add email validation
  • Change DOMAIN select algorythm
v0.1, from 16.12.2020 Show
0 0 0 1
  • Init

To write to support (add a ticket), you must:

  • Go to the portal https://cp.flamix.solutions/
  • Enter your mail and password. If you have not registered before, you need register. If, when you try to register, the system says that the user is found, you must reset the password;
  • After successful authorization, click on the "Support" menu item, then the "Add" button;
  • Describe the error in detail, attach screenshots and click the "Submit" button.
support.png

The ticket has been successfully created!
It is recommended not to close the tab until the problem is resolved since emails with replies sometimes end up in spam!

  • Go to the module page and find the "Install" block;
    install_1.png
  • In the field next to the "Install" button, enter your Bitrix24 portal domain and click the "Install" button;
    install_2.png
  • Accept all agreements and click "Install";
  • Click the button "Start Your Free Trial" (1), or paste your license key (2), if you have one;
    install_4.png
  • If you have activated the trial, be sure to enter your valid email, this is where we will send the license key (check the spam if you did not receive it).
  • Open the application in the Bitrix24 portal, go to the "License" page (1) and select the desired subscription period (2).
    pay_module_5.png
  • Go to the license verification page - https://flamix.solutions/license/ (1) and enter your license key (2), click the "Check" button (3). If the license key is correct, you will see the "Prolong" button at the bottom (4).
    pay_6.png

A 20-25% discount is given to anyone who purchases a yearly subscription. You can find the discount amount on the "License" page of the application.

Special prices if we become your Bitrix24 partner. In addition to the special price, and free setup, we can make basic settings for you, and advise on any issues related to the operation of Bitrix24 or the development and optimization of your business's Business Processes. The only thing you require is to buy Bitrix24 through us (the same price, additional benefits from the Bitrix24 gold partner). Write to us if you are interested in this offer.

Note! If you already have an integrator, we can’t become your integrator again even if you want to change it.

When something goes wrong or you need to send logs to support, then you need to follow these steps.

  • Open the app and scroll to the bottom;
  • Click on the "Log" link.

log_1.png Here you can see all the information that we log. If you are a technical person, you can check the logs and find the problem.

In addition, we sometimes request a link to the log. To generate it, you simply press the "Generate link" button. Copy and send this link to us. The link is valid for 2 days.

log_2.png

Have you extended your license, but the term has not changed? The license key is cached upon purchase and is only reset upon automatic renewal. If for some reason it did not last, try to throw off the license cache in billing(Licenses are displayed on the Services -> Licenses page) and update the "License" page in the module.

download.png

If that doesn't work, please write to support.

An Enterprise license is required in the following cases:

  • You regularly more than 500 hits to the plugin per day;
  • We need a modification of the Bitrix24 plugin for you;
  • You want the program to work on your servers.

Implementation

  • We sign NDA and service contracts;
  • We allocate a separate VPS for you;
  • Setting up environments, deploying a repository with a plugin (if you need support and updates);
  • We send separate assemblies of plugins for CMS or set up the integration ourselves;
  • We organize monitoring and support 24/7.

For purchasing write in any convenient way.

Important! We do not share the code with the customer.

If your site encompasses multiple directions, you can set up automatic distribution of Deals into different funnels using either a business process or a robot. The solution algorithm is the same in both cases, so let's consider an example with a robot, as they are simpler and supported by basic tariffs.

In the LEAD or Deal, we create a text field "Site Domain". In the plugin settings, we select the match "Site Domain" = HOSTNAME, where HOSTNAME is a standard field containing the domain name.

b24_field_hostname

We move to CRM, select the necessary entity (LEAD or Deal), add a robot that will trigger if the "Site Domain" field contains the required domain. This robot will change the Deal stage only for requests coming from the specified site.

  • When working with LEADs, at the first stage create a robot for conversion into a Deal, where you select the desired direction and stage.
  • When working only with Deals, use the "Change Direction" robot. Important: the field must be passed from the LEAD, so create it there!

Important to know:

  • Create the field in the LEAD, even if you are using Deals. When converting a LEAD into a Deal, Bitrix24 will automatically create the necessary field and transfer the value.
  • Business processes are triggered before robots and have an extended functionality.

UTM tags are labels in a link that help determine where a visitor came from to your site.

Typically, these labels are added manually. Some advertising systems set them automatically when someone clicks on an advertisement. However, if a visitor comes to your site not from an advertisement, such labels usually aren't present.

Imagine that you ordered a promotional banner on SITE.COM. If the banner features a simple link like "https://mysite.com", no additional data will come to your site when someone clicks on it. For your site to recognize that the visitor came from SITE.COM, the link should look like this: "https://mysite.com/?utm_source=site.com". This way, your site will see this tag and understand that the visitor arrived from SITE.COM.

This mechanism dynamically sets UTM tags by detecting the click's source. Let's compare two scenarios when someone accesses your site from organic traffic:

  • Without SmartUTM: Clicks from Google's organic search don't automatically set UTM tags, so your site won't show the "utm_source" tag.
  • With SmartUTM: If someone clicks from Google's organic search, our plugin reads the referral and automatically sets “utm_source=google.com” on your site.

This functionality works for any website. Remember, manually-set UTMs take precedence over dynamic ones. So, if a link already contains “utm_source”, Smart UTM won't override it.


To understand the usefulness of this option, it is necessary to consider a small example. Let's imagine that you have a Contact who left a message in a simple form, where put only his first name, phone number, and comment. In Bitrix24, a Contact will only have a phone number and a first name. After some time, this Contact will make an order in-store and send ALL Contact info. In this case, we may lose some of the data, because the plugin will find a previously created Contact (which does not contain a phone number and last name) and link it to a Deal or a LEAD.

You must enable the "Enrichment contact" option to prevent this from happening. Go to settings, and turn it on. If this Contact is found, the plugin will add all the standard fields if they are not previously filled. For example, if you filled Contact name, then it will not change.enrich_1.png

The functionality works with the following fields:

  • First name;
  • Middle name;
  • Last name;
  • Phone number;
  • Email.

There are several ways to add additional fields in the plugin. Consider an example of adding custom fields in WordPress. Other CMS have similar functionality (look for the name of filters or hooks in the plugin documentation for the desired CMS). This instruction is intended for webmasters.

Universal way

This method is good because it is built on the basis of the SDK and is not tied to the CMS and is used for any submission. For example, let's consider a task where when submitting any form or order, you must always add HTTP_REFERER, SITE_DOMAIN and Google Client ID without GA. The disadvantage of this method is that it works until all fields are received, i.e. in fact, you will not know which fields you are passing. If this is WordPress, then the first and stable entry point of any file is functions.php. To solve this problem, add the following code to the functions.php file:

try {
	$flamix_extra_fields = [
		'HTTP_REFERER' => $_SERVER['HTTP_REFERER'] ?? '',
                'SITE_DOMAIN' => 'mysite.com',
	];

	$cookie_ids = \Flamix\Conversions\Conversion::getFromCookie();
	if(!empty($cookie_ids) && isset($cookie_ids['_ga']))
		$flamix_extra_fields['google_client_id'] = preg_replace('/GA[0-9].[0-9]./', '', $cookie_ids['_ga']);

    \Flamix\Bitrix24\Lead::getInstance()->setExtraFields($flamix_extra_fields);
    unset($cookie_ids, $flamix_extra_fields);
} catch (\Exception $e) {
    //$e->getMessage();
}

WordPress Filters

If you need to change order fields or goods using previously created fields (for example, order number, customer name, etc.), you must use filters. We place filters in the functions.php file. The available filters are:

  • flamix_bitrix24_integrations_fields_filter $fields
  • flamix_bitrix24_integrations_product_filter $products, $order_id
  • flamix_bitrix24_integrations_filter $data

Pay attention! Filters are universal for all WordPress plugins! This means that if you change the fields using flamix_bitrix24_integrations_fields_filter, then the filter will be applied both for the WooCommerce module and for Contact Form 7 or Ninja Form. This restriction obliges you not to be 100% sure that some of the incoming parameters will definitely be. For example, ORDER_ID will only be in WooCommerce. An example of implementing the task of adding a title for a Lead with the necessary information:

function flamix_bitrix24_integrations_fields_example_callback($fields) {
    if(isset($fields['ORDER_ID']) && $fields['ORDER_ID'] > 0)
        $fields['MY_BITRIX24_LEAD_TITLE'] = 'Order #' . ($fields['ORDER_ID'] ?? 0) . ' from wp.app.flamix.solutions at ' . ($fields['DATE'] ?? date('Y-m-d H:m:s'));
    else 
        $fields['MY_BITRIX24_LEAD_TITLE'] = 'Request from wp.app.flamix.solutions at ' . ($fields['DATE'] ?? date('Y-m-d H:m:s'));

        return $fields;
}
add_filter( 'flamix_bitrix24_integrations_fields_filter', 'flamix_bitrix24_integrations_fields_example_callback', 10, 3 );