{"id":401219,"date":"2026-11-10T06:32:31","date_gmt":"2026-11-10T06:32:31","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/catcode-form-leads-to-crm\/"},"modified":"2026-11-10T06:32:16","modified_gmt":"2026-11-10T06:32:16","slug":"catcode-form-leads-to-crm","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/catcode-form-leads-to-crm\/","author":23504569,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.2","stable_tag":"1.0.2","tested":"7.1.4","requires":"6.2","requires_php":"7.4","requires_plugins":null,"header_name":"CatCode Form Leads to CRM","header_author":"CatCode","header_description":"Sends leads from your site forms to KeyCRM, SalesDrive, NetHunt, KeepinCRM and Telegram. No WooCommerce needed. Every lead is logged and retried if the CRM does not answer.","assets_banners_color":"fcfdfe","last_updated":"2026-11-10 06:32:16","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/catcode.com.ua\/","header_author_uri":"https:\/\/catcode.com.ua","rating":0,"author_block_rating":0,"active_installs":0,"downloads":89,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.2":{"tag":"1.0.2","author":"catcodestudio","date":"2026-11-10 06:32:16","revision":3793745}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3793746,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3793746,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3793746,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3793746,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.2"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[1152,1150,272400,335,9171],"plugin_category":[58],"plugin_contributors":[271712],"plugin_business_model":[],"class_list":["post-401219","plugin","type-plugin","status-publish","hentry","plugin_tags-contact-form-7","plugin_tags-crm","plugin_tags-keycrm","plugin_tags-leads","plugin_tags-telegram","plugin_category-user-management","plugin_contributors-catcodestudio","plugin_committers-catcodestudio"],"banners":{"banner":"https:\/\/ps.w.org\/catcode-form-leads-to-crm\/assets\/banner-772x250.png?rev=3793746","banner_2x":"https:\/\/ps.w.org\/catcode-form-leads-to-crm\/assets\/banner-1544x500.png?rev=3793746","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/catcode-form-leads-to-crm\/assets\/icon-128x128.png?rev=3793746","icon_2x":"https:\/\/ps.w.org\/catcode-form-leads-to-crm\/assets\/icon-256x256.png?rev=3793746","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>A site of services has no shop, but it has forms. This plugin takes every lead from a form and creates it in your CRM: the contact, the visitor's message, the other fields, the page and the ad source.<\/p>\n\n<ul>\n<li><strong>Four CRMs:<\/strong> KeyCRM (an order or a pipeline card), SalesDrive, NetHunt (the folder and its fields are prepared for you), KeepinCRM (a deal with a lead client).<\/li>\n<li><strong>Telegram:<\/strong> every lead to one or several chats and group topics, next to the CRM or on its own.<\/li>\n<li><strong>Contact Form 7<\/strong> works out of the box. Field roles come from the field types and captions, so auto-generated names like <code>text-32<\/code> are fine. Fields without a role go to the CRM comment under their captions.<\/li>\n<li><strong>A lead is not lost when a CRM is down.<\/strong> It is saved first and sent right after the visitor gets the answer. If the CRM does not answer, it is tried three more times within about 40 minutes.<\/li>\n<li><strong>A double click is one lead:<\/strong> the same submission within 5 minutes is sent once.<\/li>\n<li><strong>A log of every delivery<\/strong> with the reason of a failure, in plain view, and a notice on the plugin screen when something did not arrive.<\/li>\n<li><strong>Ad source:<\/strong> utm tags, gclid and fbclid of the visit are remembered in a first-party cookie and added to the lead.<\/li>\n<li><strong>Buttons to check it:<\/strong> \"Check the connection\" and \"Send a test lead\" for each connection.<\/li>\n<\/ul>\n\n<p>KeyCRM, SalesDrive, NetHunt, KeepinCRM and Telegram are third-party products. This is an independent integration, not affiliated with or endorsed by them.<\/p>\n\n<p>For developers: <code>do_action( 'catcode_flc_capture', $raw )<\/code> sends a lead from any custom form, the filter <code>catcode_flc_lead<\/code> changes or drops a lead, and the action <code>catcode_lead_captured<\/code> fires once per lead.<\/p>\n\n<h3>External services<\/h3>\n\n<p>The plugin sends data only to the services you connect, and nothing until you enter a key. For each of them, the data of a lead is: name, phone, e-mail, message, the other fields of the form, form title, page address, site address and the ad source (utm tags, gclid, fbclid, referring site, landing page) if that option is on. It is sent when a visitor submits a form and on repeated attempts; the test buttons on the settings screen send a sample instead.<\/p>\n\n<p><strong>KeyCRM<\/strong> (<code>https:\/\/openapi.keycrm.app\/v1<\/code>): creates an order (<code>POST \/order<\/code>) or a card (<code>POST \/pipelines\/cards<\/code>); reads the lists of sources and pipelines (<code>GET \/order\/source<\/code>, <code>GET \/pipelines<\/code>). <a href=\"https:\/\/keycrm.app\/terms-of-use\">Terms of use<\/a>, <a href=\"https:\/\/keycrm.app\/privacy-policy\">privacy policy<\/a>.<\/p>\n\n<p><strong>SalesDrive<\/strong> (<code>https:\/\/&lt;your account&gt;.salesdrive.me<\/code>): creates a lead (<code>POST \/handler\/<\/code>); checks the key (<code>GET \/api\/statuses\/<\/code>). <a href=\"https:\/\/salesdrive.ua\/oferta\/\">Terms of service<\/a>, <a href=\"https:\/\/salesdrive.ua\/privacy-policy\/\">privacy policy<\/a>.<\/p>\n\n<p><strong>NetHunt<\/strong> (<code>https:\/\/nethunt.com\/api\/v2<\/code>): creates a record (<code>POST \/folders\/{id}\/records<\/code>); when the settings are saved, reads or creates the folder and its fields (<code>\/folders<\/code>). <a href=\"https:\/\/nethunt.com\/legal\/terms\">Terms of service<\/a>, <a href=\"https:\/\/nethunt.com\/legal\/privacy\">privacy policy<\/a>.<\/p>\n\n<p><strong>KeepinCRM<\/strong> (<code>https:\/\/api.keepincrm.com\/v1<\/code>): creates a deal with a lead client (<code>POST \/agreements<\/code>); reads the lists of statuses, funnels and sources (<code>GET \/clients\/statuses<\/code>, <code>GET \/agreements\/funnels<\/code>, <code>GET \/sources<\/code>). <a href=\"https:\/\/keepincrm.com\/contract-offer\">Contract offer<\/a>, <a href=\"https:\/\/keepincrm.com\/privacy\">privacy policy<\/a>.<\/p>\n\n<p><strong>Telegram Bot API<\/strong> (<code>https:\/\/api.telegram.org<\/code>): sends the lead as a message to your chats (<code>sendMessage<\/code>); checks the bot and finds chats on your request (<code>getMe<\/code>, <code>getUpdates<\/code>). <a href=\"https:\/\/telegram.org\/tos\">Terms of service<\/a>, <a href=\"https:\/\/telegram.org\/privacy\">privacy policy<\/a>.<\/p>\n\n<p>The first-party cookie <code>catcode_flc_utm<\/code> keeps the ad source of the visit for 90 days. It goes only into the lead. You can switch it off in the settings.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install and activate the plugin, and make sure Contact Form 7 is active.<\/li>\n<li>Open Form Leads in the admin menu.<\/li>\n<li>Choose the CRM, paste its key, save, and press \"Check the connection\".<\/li>\n<li>Press \"Send a test lead\" and look in the CRM.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20woocommerce%3F\"><h3>Do I need WooCommerce?<\/h3><\/dt>\n<dd><p>No. The plugin works with forms on any WordPress site.<\/p><\/dd>\n<dt id=\"what%20does%20it%20do%20with%20fields%20the%20crm%20has%20no%20place%20for%3F\"><h3>What does it do with fields the CRM has no place for?<\/h3><\/dt>\n<dd><p>They go to the comment of the lead, each under its caption. Nothing a visitor filled in is dropped, except consent boxes, file uploads and captchas.<\/p><\/dd>\n<dt id=\"what%20happens%20to%20contact%20form%207%20mail%3F\"><h3>What happens to Contact Form 7 mail?<\/h3><\/dt>\n<dd><p>Nothing changes: the form sends its mail as usual, this plugin only adds the delivery to the CRM.<\/p><\/dd>\n<dt id=\"keepincrm%20answers%20402\"><h3>KeepinCRM answers 402<\/h3><\/dt>\n<dd><p>KeepinCRM opens its API on paid plans only. On a free plan every request is refused.<\/p><\/dd>\n<dt id=\"could%20a%20lead%20appear%20twice%20in%20the%20crm%3F\"><h3>Could a lead appear twice in the CRM?<\/h3><\/dt>\n<dd><p>Yes, in one case: the CRM created the lead, but its answer did not reach the site. The plugin cannot tell this from a CRM that is down, so it tries again. A double is easier to fix than a lost lead.<\/p><\/dd>\n<dt id=\"does%20it%20store%20personal%20data%3F\"><h3>Does it store personal data?<\/h3><\/dt>\n<dd><p>The log keeps the leads on your own site for 30 days by default. You can change the period and clear the log. The settings and the log are deleted together with the plugin, unless you switch that off.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Posted settings and the source cookie are sanitised as soon as they are read.<\/li>\n<li>The notice about failed deliveries shows only on the plugin screen.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Clearer settings page: every block is a card, the country code field shows the whole code, the extra CRMs sit in one box.<\/li>\n<li>The log shows statuses as coloured labels and the full lead in a box.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>First release.<\/li>\n<\/ul>","raw_excerpt":"Sends leads from your site forms to KeyCRM, SalesDrive, NetHunt, KeepinCRM and Telegram. No WooCommerce needed.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/401219","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=401219"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/catcodestudio"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=401219"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=401219"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=401219"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=401219"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=401219"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=401219"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}