SMTP for Contact Form 7
WordPress uses PHPMailer to send mail from with your local mail server, but it can happen that your mail were not accepted by mail providers… This can happen for several reasons, sometimes because the mail server is not configured or sometimes because the records DKIM, DMARC and SPF of the domain been set up correctly and so on… Anyway you can avoid any problems by using an external SMTP server and sending mail with it! Additional features ✅ OAuth2 Authentication: Securely connect to Gmail and Microsoft Office 365 without needing to store passwords in your database or enable “less secure apps”. ✅ Per-Form Custom Templates: Wrap CF7 emails with beautiful templates. You can now select a specific custom template for each form directly from the plugin settings! ✅ Global or CF7-Only Mode: Choose whether to override all WordPress emails with this SMTP configuration or limit it exclusively to Contact Form 7 submissions. ✅ Live testing: a module for testing e-mail settings with the Rest-Api (that avoid to reload the page for this kind of test). The entire output of the php mailer will be captured, which will be useful in case of configuration errors or to get the wrong parameter when is possible. ✅ Automated Reports: choose when and what email you want to receive the report and I will send you a beautifully formatted HTML summary of sent and failed emails. Includes log retention settings to keep your database clean. ✅ Advanced Headers & Security: Easily automatically set “Reply-To” headers, allow insecure options for self-signed certificates, and define custom “From Name” and “From Email” settings. This plugin is ads free and I don’t want to try to sell you any pro version! If you want to contribute, there are many ways to do so, from simple suggestions and bug reports to translating and contributing code. See below how to do it! SMTP SMTP stands for ‘Simple Mail Transfer Protocol’. It is a connection-oriented, text-based network protocol of the Internet protocol family and as such is on the seventh layer of the ISO/OSI model, the application layer. Like any other network protocol, it contains the rules for proper communication between networked computers. SMTP is specifically responsible for sending and forwarding e-mails from a sender to a recipient. Since its release in 1982 as the successor to the ‘Mail Box Protocol’ in Arpanet, SMTP has become the standard protocol for sending e-mails. However, the SMTP procedure remains largely invisible to the normal consumer, as it is executed in the background by the e-mail programme used. Only if the software, the webmail application on the browser or the mobile e-mail application does not automatically determine the SMTP protocol when creating an account, does it have to be set manually to ensure smooth e-mail traffic. SMTP presets Aruba Gmail (tls and ssl) Yahoo (tls and ssl) Outlook (tls and ssl) Office365 (tls) OAuth2 Setup Google Gmail To use Gmail with OAuth2, you need to create a Google Cloud Project: 1. Create Project: Go to Google Cloud Console and create a new project. 2. Enable Gmail API (Required): Go to APIs & Services > Library, search for Gmail API, and click Enable. 3. Configure Consent Screen: Go to OAuth consent screen and create an External app. * Scopes: Click Add or Remove Scopes, search for the Gmail API, and check the boxes for .../auth/userinfo.email and .../auth/gmail.compose (or https://mail.google.com/). * Publishing Status: Click Publish App to push it to production (otherwise, your connection token will expire every 7 days). 4. Create Credentials: Go to Credentials > Create Credentials > OAuth client ID. * Application type: Web application. * Authorized redirect URIs: Copy and paste the exact callback URL provided in your plugin settings. 5. Connect: Copy the generated Client ID and Client Secret into the plugin settings and click Connect. 6. Grant Permissions (Critical): During the Google login popup, click Advanced > Go to App if prompted with an “unverified app” warning. You must explicitly check the boxes that ask for permission to compose/send emails before clicking Continue. Microsoft Office 365 1. Go to the Azure Portal (portal.azure.com). 2. Navigate to Azure Active Directory > App registrations > New registration. 3. Enter an application name and set the Redirect URI (Web) to the exact URL provided in the plugin settings. 4. Go to Certificates & secrets and create a new client secret. Copy the secret’s Value. 5. Go to API permissions > Add a permission > Microsoft Graph > Delegated permissions and add SMTP.Send and offline_access. 6. Copy the Application (client) ID and the Client Secret into the plugin settings. 7. Click Connect with OAuth2. Would you like to find more presets (that you think are useful to other users)? Open a request in the support form and provide the necessary connection data (auth, server address and port). In the next cf7-smtp version you will find the required configuration among the presets. Security It’s warmly advised to use OAuth2 for supported providers (Gmail, Office365) so no passwords are saved. If using basic SMTP authentication, it is highly recommended to store at least the password into wp-config.php as a constant. And in addition, it’s also very easy! It needs only to add define( 'CF7_SMTP_USER_PASS', 'mySecr3tp4ssWord' ); into your wp-config.php just before /* That's all, stop editing! Happy publishing. */ All passwords will be stored encrypted, but still it is not good practice to put it into database! Quick setup As with the user password other security constants can also be defined. Available constants are CF7_SMTP_USER_NAME, CF7_SMTP_USER_PASS, CF7_SMTP_OAUTH2_CLIENT_ID, CF7_SMTP_OAUTH2_CLIENT_SECRET. define( 'CF7_SMTP_SETTINGS', array( 'user_name' => string, 'user_pass' => string, 'oauth2_client_id' => string, 'oauth2_client_secret' => string, )); Template Wouldn’t it be better to have a small container to make our mail a little prettier? Well we have it! You can now assign specific templates to each of your forms via the plugin settings dashboard. To use your own custom templates for emails, simply create them by following these steps: 1. Create a folder named cf7-smtp/ or templates/cf7-smtp/ in your theme (or child theme) folder. 2. Create a .php or .html template file inside it. 3. Go to the plugin settings under Style > Form Email Templates, and select your newly found custom template from the dropdown menu for the desired form. 4. (Optional) You can customize the logo, website link, and other template parts. Checkout the filter documentation on GitHub/wiki. Support Community support: via the support forums on wordpress.org Bug reporting (preferred): file an issue on GitHub Contribute We love your input! We want to make contributing to this project as easy and transparent as possible, whether it’s: Reporting a bug Testing the plugin Discussing the current state, features, improvements Submitting a fix or a new feature We use GitHub to host code, to track issues and feature requests, as well as accept pull requests. By contributing, you agree that your contributions will be licensed under its GPLv2 License.
Top keywords
- smtp17×1.46%
- client10×0.86%
- mail10×0.86%
- settings10×0.86%
- gmail9×0.77%
- go9×0.77%
- application7×0.60%
- oauth27×0.60%
- protocol7×0.60%
- click6×0.51%
- templates6×0.51%
- cf75×0.43%
Contact Form to Any API
Contact Form 7 to Any API lets you send form submissions directly to any CRM, Webhook, marketing platform or REST API with complete control over payloads, endpoints, headers and authentication. Built for developers, agencies, and technical teams who need flexible, secure WordPress API and Webhook integrations without extra middleware. All data stays private within WordPress until it’s successfully sent to your chosen API. Video Demo: Key Features Send CF7 Leads to Remote API’s such as CRM and other External API using POST/GET Create up to 5 API Connections Supports Simple & Fixed Format of JSON Supports Basic Auth Supports Bearer Auth API Logs Management with submitted data and API response Auto Delete Logs (purge logs older than configurable number of days) Email Notifications on API Failure Save Contact Form 7 form submitted data to the database Export Contact Form 7 Data in CSV, EXCEL, PDF, Print Single Or Multiple delete CF7 entries Conditional Field Support (Equals / Not Equals) File input supported – Uploaded file will convert into BASE64 and send to API Multisite Compatible WPML Compatible Predefined Tags support Send data to multiple API (PRO) Support Multi Level or Any Format of JSON (PRO) Send attachments to any API (PRO) Option to Choose when to send data to API – Before CF7 mail sent OR After mail sent (PRO) Multi File Upload Support (PRO) Compatible with Multiline files upload for contact form 7 Plugin (PRO) Option to choose Numerical Fields / Integer Fields (PRO) Option to choose Multiple File upload fields (PRO) Retry Failed API Logs (Auto and Manual Retry) (PRO) Bulk Retry failed API calls (PRO) Advanced Email Notifications on API Failure (PRO) Priority Support (PRO) Paid plugin customization support for JWT Token Integration with Any API (Contact us) Paid plugin customization support for OAuth 2.0 API Integration (Contact us) Paid Plugin customization support for any API (Contact us) WPForms to Any API Plugin – (Plugin for WPForm Users – Connect WPForm to Any API) Upgrade to PRO for Advanced Integrations Unlock advanced flexibility and full control with Contact Form 7 to Any API PRO Unlimited API Connections per site Multi-level / Any JSON Structure support Multiple File Upload Field Support Define Integer Fields – map numeric fields precisely Retry Failed API Logs – auto and manually retry any failed API call directly from the log screen Bulk Retry – re-send multiple failed API calls at once with a single click Advanced Email Notifications on API Failure – send failure alerts to multiple recipients Priority Support for faster assistance Price: $29.99/year Upgrade to PRO Optional OAuth 2.0 and JWT PRO Add-On For APIs that require advanced authorization, our PRO Add-On ($99.99) provides: OAuth 2.0 and JWT token authentication Automatic access/refresh token management JWT Token Integration with Any API Perfect for enterprise or expiring token setups Get the Add-On Set Your Own Header Request Parameters Define custom header parameters to match your integration requirements. Examples: Authorization: MY_API_KEY Authorization: Bearer xxxxxxx Authorization: Basic xxxxxxx Content-Type: application/json Basic and Bearer authentication can be configured directly in the header input fields. Supported CRMs and APIs Connect Contact Form 7 with 200+ CRM and marketing platforms: Twilio WhatsApp — Watch Video Brevo — Watch Video Mailcoach — Watch Video Pipeline CRM — Watch Video Mailchimp — Watch Video Mailbluster — Watch Video Zapier — Watch Video HubSpot CRM — Watch Video Salesforce CRM Pipedrive — Watch Video Freshsales — Watch Video Airtable — Watch Video Capsule — Watch Video EngageBay — Watch Video OnePage CRM Clio Grow — Watch Video Close CRM — Watch Video Systeme CRM — Watch Video Insightly CRM — Watch Video Twenty CRM — Watch Video Agile CRM — Watch Video Sage CRM Odoo CRM/ERP System Fluent CRM Lead Post API Virtuagym API Pilotsolution OS Ticket Samdock CRM Mikrowisp Bats CRM FRS Labs API Get Cobra by ArcaMax Network Worldfilia SingleOps GorillaDesk API Sembark API Superoffice CRM Flowdesk JobAdder Unlatch CRM Mail2many Workato Jetbrains / Intellij Space API Fincenfetch Lead Docket Agendor API Lead IM Israel Personio Kala CRM Israel Pixxicrm easybizy sell.do Events500 SendPulse CRM And many more Browse all integration guides: Blog | Video Tutorials Our Other Plugins WPForm to Any API WPForm to Any API is most powerful plugin to send WPForm data to any third party services. It can be use to send data to CRM Or any REST API. Easy to use and User friendly settings Support Contact Form 7 to Any API is developed and supported by IT Path Solutions. If you have questions or encounter issues, visit our Support Forum or contact
[email protected]. Your feedback helps us improve and expand this plugin for the entire WordPress community. We also welcome: Bug and documentation reports Feature suggestions Translation contributions How You Can Support WordPress grows through community, and your help makes a difference. Report Bugs or Issues: Found a problem? Report it using the official guide. Fix or Suggest Docs Updates: Share corrections or suggestions on the Support Forum. Report Security Concerns: Follow the WordPress Security Reporting Guide. Suggest Features or Improvements: Have ideas? Submit them here. Contribute to Translations: Help translate the plugin on WordPress Translate. Explore our other plugins or visit WordPress Gems to check out what we do. License This plugin is licensed under the GNU General Public License v2 or later. https://www.gnu.org/licenses/gpl-2.0.html