<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Sai Praveen Sanapalli</title>
    <description>The latest articles on DEV Community by Sai Praveen Sanapalli (@saipraveen446).</description>
    <link>https://dev.to/saipraveen446</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3807369%2F4c4b6cbb-dd10-48aa-bd8c-c43cc780b4c0.png</url>
      <title>DEV Community: Sai Praveen Sanapalli</title>
      <link>https://dev.to/saipraveen446</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/saipraveen446"/>
    <language>en</language>
    <item>
      <title>Complete WhatsApp Cloud API Setup Guide (2026) – From Facebook Account to Production Integration</title>
      <dc:creator>Sai Praveen Sanapalli</dc:creator>
      <pubDate>Mon, 22 Jun 2026 20:08:44 +0000</pubDate>
      <link>https://dev.to/saipraveen446/complete-whatsapp-cloud-api-setup-guide-2026-from-facebook-account-to-production-integration-3ff0</link>
      <guid>https://dev.to/saipraveen446/complete-whatsapp-cloud-api-setup-guide-2026-from-facebook-account-to-production-integration-3ff0</guid>
      <description>&lt;p&gt;WhatsApp has become one of the most important communication channels for businesses worldwide. With Meta's WhatsApp Cloud API, developers can integrate WhatsApp messaging directly into their applications without managing their own WhatsApp infrastructure.&lt;/p&gt;

&lt;p&gt;However, many developers find the initial setup confusing because multiple Meta components are involved:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Facebook Account&lt;/li&gt;
&lt;li&gt;Facebook Page&lt;/li&gt;
&lt;li&gt;Meta Business Portfolio&lt;/li&gt;
&lt;li&gt;Meta Developer Account&lt;/li&gt;
&lt;li&gt;Meta App&lt;/li&gt;
&lt;li&gt;WhatsApp Business Account (WABA)&lt;/li&gt;
&lt;li&gt;System User&lt;/li&gt;
&lt;li&gt;Access Tokens&lt;/li&gt;
&lt;li&gt;Webhooks&lt;/li&gt;
&lt;li&gt;Message Templates&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This guide walks through the complete end-to-end setup process, from creating the required Meta assets to sending production WhatsApp messages through the Cloud API.&lt;/p&gt;




&lt;h1&gt;
  
  
  What You Will Build
&lt;/h1&gt;

&lt;p&gt;By the end of this guide, you will have:&lt;/p&gt;

&lt;p&gt;✅ Verified Meta Business Portfolio&lt;/p&gt;

&lt;p&gt;✅ Meta Developer Account&lt;/p&gt;

&lt;p&gt;✅ Meta App with WhatsApp Product&lt;/p&gt;

&lt;p&gt;✅ WhatsApp Business Account (WABA)&lt;/p&gt;

&lt;p&gt;✅ Verified Production Phone Number&lt;/p&gt;

&lt;p&gt;✅ Permanent Access Token&lt;/p&gt;

&lt;p&gt;✅ Webhook Configuration&lt;/p&gt;

&lt;p&gt;✅ Approved Message Templates&lt;/p&gt;

&lt;p&gt;✅ Production-Ready WhatsApp Cloud API Integration&lt;/p&gt;




&lt;h1&gt;
  
  
  WhatsApp Cloud API Architecture
&lt;/h1&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Facebook Account
        │
        ▼
Facebook Page
        │
        ▼
Meta Business Portfolio
        │
        ▼
Meta App 
        │
        ▼
WhatsApp Business Account (WABA)
        │
        ▼
Phone Number
        │
        ▼
Cloud API
        │
        ▼
Your Application
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h1&gt;
  
  
  1: Prerequisites
&lt;/h1&gt;

&lt;p&gt;Before starting, ensure the following are available:&lt;/p&gt;

&lt;h2&gt;
  
  
  Required
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Personal Facebook Account&lt;/li&gt;
&lt;li&gt;Facebook Page&lt;/li&gt;
&lt;li&gt;Business Name&lt;/li&gt;
&lt;li&gt;Business Email Address&lt;/li&gt;
&lt;li&gt;Business Website&lt;/li&gt;
&lt;li&gt;Business Verification Documents (GST Certificate, Certificate of Incorporation, Udyam/MSME Certificate, Business PAN, or other valid business proof)&lt;/li&gt;
&lt;li&gt;Mobile Number for WhatsApp (preferably a new number, should not be banned/restricted, and ideally not used with unofficial WhatsApp tools)&lt;/li&gt;
&lt;li&gt;Debit/Credit Card (for billing setup)&lt;/li&gt;
&lt;li&gt;Domain Name and HTTPS-enabled Public Server (for webhook configuration)&lt;/li&gt;
&lt;/ul&gt;




&lt;h1&gt;
  
  
  2. Facebook Account Creation and Facebook Page Linking
&lt;/h1&gt;

&lt;p&gt;Before setting up a Meta Business Portfolio or WhatsApp Business Platform, you must have:&lt;/p&gt;

&lt;h2&gt;
  
  
  Facebook Personal Account
&lt;/h2&gt;

&lt;p&gt;A Facebook Personal Account is the standard Facebook user account used to access:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Meta Business Portfolio (Business Manager)&lt;/li&gt;
&lt;li&gt;Meta Business Suite&lt;/li&gt;
&lt;li&gt;Meta Developer Portal&lt;/li&gt;
&lt;li&gt;WhatsApp Business Platform&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;No special configuration is required. A normal Facebook account is sufficient.&lt;/p&gt;

&lt;h3&gt;
  
  
  Recommended
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Verify email address&lt;/li&gt;
&lt;li&gt;Verify mobile number&lt;/li&gt;
&lt;li&gt;Enable Two-Factor Authentication (2FA)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Meta may consider the trust level and history of the Facebook account during business verification and account reviews.&lt;/p&gt;




&lt;h2&gt;
  
  
  Facebook Page
&lt;/h2&gt;

&lt;p&gt;A Facebook Page represents your business or brand on Meta platforms.&lt;/p&gt;

&lt;p&gt;A WhatsApp Business Account (WABA) is typically linked to a Facebook Page for business identity and management purposes.&lt;/p&gt;

&lt;h3&gt;
  
  
  Recommended Page Information
&lt;/h3&gt;

&lt;p&gt;Configure the following details on the Facebook Page:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Page Name (Business/Brand Name)&lt;/li&gt;
&lt;li&gt;Profile Picture (Company Logo)&lt;/li&gt;
&lt;li&gt;Cover Photo&lt;/li&gt;
&lt;li&gt;Business Description&lt;/li&gt;
&lt;li&gt;Business Website&lt;/li&gt;
&lt;li&gt;Business Email Address&lt;/li&gt;
&lt;li&gt;Business Phone Number&lt;/li&gt;
&lt;li&gt;Business Address (Optional)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These details help establish business identity and may assist during review and verification processes.&lt;/p&gt;




&lt;h2&gt;
  
  
  Scenario 1: No Facebook Account and No Facebook Page Exist
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Step 1: Create a Facebook Personal Account
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Go to Facebook.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Create New Account&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Enter your personal details.&lt;/li&gt;
&lt;li&gt;Verify your email address and mobile number.&lt;/li&gt;
&lt;li&gt;Complete your profile information.&lt;/li&gt;
&lt;li&gt;Enable Two-Factor Authentication (2FA).&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Step 2: Create a Facebook Page
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Log in to your Facebook account.&lt;/li&gt;
&lt;li&gt;Navigate to &lt;strong&gt;Pages&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Create New Page&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Enter:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Page Name&lt;/li&gt;
&lt;li&gt;Category&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Description&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Add a profile picture and cover image.&lt;/li&gt;
&lt;li&gt;Publish the page.&lt;/li&gt;
&lt;li&gt;Facebook Personal Account created.&lt;/li&gt;
&lt;li&gt;Facebook Page created.&lt;/li&gt;
&lt;li&gt;The Facebook account automatically becomes the Page Admin.&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Scenario 2: Facebook Account Exists, but No Facebook Page Exists
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Step 1: Log in to Facebook
&lt;/h3&gt;

&lt;p&gt;Use the existing Facebook account that will manage the business assets.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 2: Create a Facebook Page
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Navigate to &lt;strong&gt;Pages&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Create New Page&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Enter:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Page Name&lt;/li&gt;
&lt;li&gt;Category&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Description&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Add a profile picture and cover image.&lt;/li&gt;
&lt;li&gt;Publish the page.&lt;/li&gt;
&lt;li&gt;Existing Facebook Account is used.&lt;/li&gt;
&lt;li&gt;New Facebook Page is created.&lt;/li&gt;
&lt;li&gt;The Facebook account becomes the Page Admin.&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Scenario 3: Facebook Account Exists and Facebook Page Already Exists
&lt;/h2&gt;

&lt;p&gt;In this scenario, the Facebook Page is already owned or managed by another user or organization.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 1: Create or Use Your Facebook Account
&lt;/h3&gt;

&lt;p&gt;Use the Facebook account that will be used for Meta Business Portfolio and WhatsApp Business Platform setup.&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 2: Existing Page Admin Grants Access
&lt;/h3&gt;

&lt;p&gt;The current Page Admin must:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open the Facebook Page.&lt;/li&gt;
&lt;li&gt;Navigate to:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Settings → Page Access
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;Click &lt;strong&gt;Add New&lt;/strong&gt; under Facebook Access.&lt;/li&gt;
&lt;li&gt;Search for the user's Facebook profile.&lt;/li&gt;
&lt;li&gt;Send the invitation.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Step 3: Accept the Invitation
&lt;/h3&gt;

&lt;p&gt;The invited user must:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open Facebook notifications.&lt;/li&gt;
&lt;li&gt;Review the Page access invitation.&lt;/li&gt;
&lt;li&gt;Accept the invitation.&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;The user's Facebook account is linked to the existing Facebook Page.&lt;/li&gt;
&lt;li&gt;The user can manage the Page according to the permissions granted by the Page Admin.&lt;/li&gt;
&lt;/ul&gt;




&lt;h1&gt;
  
  
  3. Create Meta Business Portfolio and Complete Business Verification
&lt;/h1&gt;

&lt;h2&gt;
  
  
  Create Business Portfolio
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Go to:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;https://business.facebook.com
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;Log in using your Facebook account.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Create Account&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Enter:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Business Name&lt;/li&gt;
&lt;li&gt;Business Email&lt;/li&gt;
&lt;li&gt;Your Name

&lt;ol&gt;
&lt;li&gt;Click &lt;strong&gt;Submit&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This creates your Meta Business Portfolio (formerly Business Manager).&lt;/p&gt;




&lt;h2&gt;
  
  
  Link Business Assets
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Link Facebook Page
&lt;/h3&gt;

&lt;p&gt;Navigate to:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Business Settings → Accounts → Pages
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Add:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Existing Facebook Page&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;or&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create a New Facebook Page&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Optional assets:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Instagram Account&lt;/li&gt;
&lt;li&gt;Ad Account&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Confirm Business Email
&lt;/h2&gt;

&lt;p&gt;Meta sends a verification email to the business email address.&lt;/p&gt;

&lt;p&gt;Open the email and confirm ownership.&lt;/p&gt;




&lt;h2&gt;
  
  
  Complete Business Verification
&lt;/h2&gt;

&lt;p&gt;Navigate to:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Business Settings → Security Center
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Click &lt;strong&gt;Start Verification&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Provide:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Legal Business Name&lt;/li&gt;
&lt;li&gt;Business Address&lt;/li&gt;
&lt;li&gt;Business Phone Number&lt;/li&gt;
&lt;li&gt;Business Website (recommended)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Upload supporting documents such as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Certificate of Incorporation&lt;/li&gt;
&lt;li&gt;GST Registration Certificate&lt;/li&gt;
&lt;li&gt;Udyam (MSME) Registration&lt;/li&gt;
&lt;li&gt;Business License&lt;/li&gt;
&lt;li&gt;Utility Bill or Bank Statement (if requested)&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Verify Contact Information
&lt;/h2&gt;

&lt;p&gt;Meta may ask to verify:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Business Email&lt;/li&gt;
&lt;li&gt;Business Phone Number&lt;/li&gt;
&lt;li&gt;Domain Ownership (if website is provided)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Verification Status
&lt;/h3&gt;

&lt;p&gt;Track verification from:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Business Settings → Security Center
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Business verification typically takes between &lt;strong&gt;1 and 7 days&lt;/strong&gt;.&lt;/p&gt;




&lt;h1&gt;
  
  
  4. Create Meta Developer Account and Meta App
&lt;/h1&gt;

&lt;ol&gt;
&lt;li&gt;Go to:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;https://developers.facebook.com
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;Log in using your Facebook account.&lt;/li&gt;
&lt;li&gt;Accept the Meta Developer Terms.&lt;/li&gt;
&lt;li&gt;Complete email verification if prompted.&lt;/li&gt;
&lt;li&gt;Navigate to:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;My Apps → Create App
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;Select &lt;strong&gt;Business&lt;/strong&gt; as the app type.&lt;/li&gt;
&lt;li&gt;Enter:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;App Name&lt;/li&gt;
&lt;li&gt;Contact Email&lt;/li&gt;
&lt;li&gt;Business Portfolio

&lt;ol&gt;
&lt;li&gt;Click &lt;strong&gt;Create App&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Add WhatsApp Product
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Open the newly created app.&lt;/li&gt;
&lt;li&gt;Click:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Add Product → WhatsApp → Set Up
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Meta provides:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Test WhatsApp Business Account (WABA)&lt;/li&gt;
&lt;li&gt;Test Phone Number&lt;/li&gt;
&lt;li&gt;Temporary Access Token&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  These resources are intended for development and testing purposes. You can immediately test WhatsApp Cloud API requests before configuring production assets.
&lt;/h2&gt;

&lt;h1&gt;
  
  
  5. Add Production Phone Number
&lt;/h1&gt;

&lt;p&gt;Navigate to:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;https://developers.facebook.com
Developer Console → Select App → WhatsApp → API Setup
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Click &lt;strong&gt;Add Phone Number&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Provide:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Business Name&lt;/li&gt;
&lt;li&gt;Display Name&lt;/li&gt;
&lt;li&gt;Business Category&lt;/li&gt;
&lt;li&gt;Phone Number&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Complete verification using:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;SMS OTP&lt;/li&gt;
&lt;li&gt;Voice Call OTP&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Important Notes
&lt;/h2&gt;

&lt;p&gt;The phone number:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Must not already be registered with a personal WhatsApp account&lt;/li&gt;
&lt;li&gt;Must not already be registered with WhatsApp Business App&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If the number is already registered with WhatsApp, it must be migrated before it can be used with WhatsApp Cloud API.&lt;/p&gt;

&lt;p&gt;After successful verification:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Phone number is associated with the WABA&lt;/li&gt;
&lt;li&gt;Meta reviews the display name&lt;/li&gt;
&lt;li&gt;Application can use the number through Cloud API&lt;/li&gt;
&lt;/ul&gt;




&lt;h1&gt;
  
  
  6. Check Display Name Status
&lt;/h1&gt;

&lt;p&gt;Navigate to:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Business Settings → Accounts → WhatsApp Accounts → Phone Numbers
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;or&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;WhatsApp Manager → Phone Numbers
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Display Name Status:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Approved&lt;/li&gt;
&lt;li&gt;Pending Review&lt;/li&gt;
&lt;li&gt;Rejected&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Only approved display names can be used for production messaging.&lt;/p&gt;

&lt;p&gt;If rejected, update and resubmit the display name.&lt;/p&gt;




&lt;h1&gt;
  
  
  7. WhatsApp Business Account (WABA)
&lt;/h1&gt;

&lt;p&gt;A WhatsApp Business Account (WABA) is the container that manages all WhatsApp Business Platform assets.&lt;/p&gt;

&lt;p&gt;Meta typically creates or associates a WABA during the onboarding process when a production phone number is added.&lt;/p&gt;

&lt;p&gt;Manage WABA from:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Business Settings → Accounts → WhatsApp Accounts&lt;/li&gt;
&lt;li&gt;WhatsApp Manager&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  WABA Management Features
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Business Information
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;WABA Name&lt;/li&gt;
&lt;li&gt;Business Portfolio&lt;/li&gt;
&lt;li&gt;Business Details&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Phone Numbers
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Add or Remove Phone Numbers&lt;/li&gt;
&lt;li&gt;Display Name Status&lt;/li&gt;
&lt;li&gt;Quality Rating&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Message Templates
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Create Templates&lt;/li&gt;
&lt;li&gt;Submit Templates for Approval&lt;/li&gt;
&lt;li&gt;View Template Status&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Users &amp;amp; Permissions
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Add Admins&lt;/li&gt;
&lt;li&gt;Assign Access&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Messaging Limits
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;View Messaging Limits&lt;/li&gt;
&lt;li&gt;Monitor Quality Rating&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Billing
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Payment Method&lt;/li&gt;
&lt;li&gt;Billing Information&lt;/li&gt;
&lt;li&gt;Usage and Charges&lt;/li&gt;
&lt;/ul&gt;




&lt;h1&gt;
  
  
  8. Create a System User
&lt;/h1&gt;

&lt;p&gt;Navigate to:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;https://business.facebook.com
Business Settings → Users → System Users
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;Click &lt;strong&gt;Add&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Enter a name&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Admin System User&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Create&lt;/strong&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;System Users are used for server-to-server authentication and generating permanent access tokens for API Integratios.&lt;/p&gt;




&lt;h1&gt;
  
  
  9. Assign Assets to the System User
&lt;/h1&gt;

&lt;p&gt;Select the System User.&lt;/p&gt;

&lt;p&gt;Click:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Assign Assets
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Assign:&lt;/p&gt;

&lt;h3&gt;
  
  
  WhatsApp Business Account (WABA)
&lt;/h3&gt;

&lt;p&gt;Permissions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;whatsapp_business_management&lt;/li&gt;
&lt;li&gt;whatsapp_business_messaging&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Meta App
&lt;/h3&gt;

&lt;p&gt;Permissions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Full Control (Recommended)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Save changes.&lt;/p&gt;




&lt;h1&gt;
  
  
  10. Generate a Permanent Access Token
&lt;/h1&gt;

&lt;ol&gt;
&lt;li&gt;Open the System User.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Generate New Token&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Select the Meta App.&lt;/li&gt;
&lt;li&gt;Select permissions:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;whatsapp_business_management&lt;/li&gt;
&lt;li&gt;whatsapp_business_messaging

&lt;ol&gt;
&lt;li&gt;Generate the token.&lt;/li&gt;
&lt;li&gt;Securely store it.&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This permanent access token is used by your application to access the WhatsApp Cloud API in production.&lt;/p&gt;




&lt;h1&gt;
  
  
  11. Configure Billing
&lt;/h1&gt;

&lt;p&gt;Navigate to:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;WhatsApp Manager → Billing
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Configure:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Payment Method&lt;/li&gt;
&lt;li&gt;Billing Information&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Billing allows you to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Add payment methods&lt;/li&gt;
&lt;li&gt;View conversation charges&lt;/li&gt;
&lt;li&gt;Monitor usage and costs&lt;/li&gt;
&lt;li&gt;Manage billing information&lt;/li&gt;
&lt;/ul&gt;




&lt;h1&gt;
  
  
  12. Configure Webhooks
&lt;/h1&gt;

&lt;p&gt;Navigate to:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;https://developers.facebook.com
Developer Console → Your App → WhatsApp → Configuration
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Configure:&lt;/p&gt;

&lt;h3&gt;
  
  
  Callback URL
&lt;/h3&gt;

&lt;p&gt;The endpoint that receives webhook events from Meta.&lt;/p&gt;

&lt;p&gt;Example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;https://yourdomain.com/api/method/whatsapp.webhook
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Verify Token
&lt;/h3&gt;

&lt;p&gt;Custom secret token used during webhook verification.&lt;/p&gt;

&lt;h3&gt;
  
  
  Subscribe to Webhook Fields
&lt;/h3&gt;

&lt;p&gt;Recommended:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;messages&lt;/li&gt;
&lt;li&gt;message_status&lt;/li&gt;
&lt;li&gt;message_template_status_update&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Webhook Use Cases
&lt;/h2&gt;

&lt;p&gt;Receive:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Incoming Messages&lt;/li&gt;
&lt;li&gt;Delivery Reports&lt;/li&gt;
&lt;li&gt;Read Receipts&lt;/li&gt;
&lt;li&gt;Message Status Updates&lt;/li&gt;
&lt;li&gt;Template Status Updates&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Webhook configuration is required for two-way messaging and real-time event processing.&lt;/p&gt;




&lt;h1&gt;
  
  
  13. Create Message Templates
&lt;/h1&gt;

&lt;p&gt;Navigate to:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;WhatsApp Manager → Message Templates
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Create templates for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;OTP Messages&lt;/li&gt;
&lt;li&gt;Welcome Messages&lt;/li&gt;
&lt;li&gt;Notifications&lt;/li&gt;
&lt;li&gt;Payment Reminders&lt;/li&gt;
&lt;li&gt;Appointment Reminders&lt;/li&gt;
&lt;li&gt;Marketing Campaigns&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;After creating a template:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select the template category (Marketing, Utility, Authentication).&lt;/li&gt;
&lt;li&gt;Configure the message content and variables.&lt;/li&gt;
&lt;li&gt;Submit the template for Meta review.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Template Status
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Pending &lt;/li&gt;
&lt;li&gt;Approved&lt;/li&gt;
&lt;li&gt;Rejected&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Template approval typically takes from a few minutes to several hours, although it may take longer in some cases.&lt;/p&gt;

&lt;p&gt;Only approved templates can be used to initiate conversations.&lt;/p&gt;




&lt;h1&gt;
  
  
  14. Test WhatsApp API Integration
&lt;/h1&gt;

&lt;p&gt;Use:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Phone Number ID&lt;/li&gt;
&lt;li&gt;Permanent Access Token&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Testing Methods
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Postman Testing
&lt;/h3&gt;

&lt;p&gt;Postman Collection:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.postman.com/meta/whatsapp-business-platform/collection" rel="noopener noreferrer"&gt;https://www.postman.com/meta/whatsapp-business-platform/collection&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Provide:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Phone Number ID&lt;/li&gt;
&lt;li&gt;Permanent Access Token&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is the most common method used for API testing and troubleshooting.&lt;/p&gt;




&lt;h3&gt;
  
  
  Application/API Integration Testing
&lt;/h3&gt;

&lt;p&gt;Integrate the WhatsApp Cloud API into your application and test using your application code.&lt;/p&gt;

&lt;p&gt;Examples: Python, Node.js,Java&lt;/p&gt;

&lt;p&gt;Validate complete end-to-end integration.&lt;/p&gt;




&lt;h2&gt;
  
  
  Test the Following APIs
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Send Message API
&lt;/h3&gt;

&lt;p&gt;Send a basic text message.&lt;/p&gt;

&lt;h3&gt;
  
  
  Template Message API
&lt;/h3&gt;

&lt;p&gt;Send an approved template.&lt;/p&gt;

&lt;h3&gt;
  
  
  Media Message API
&lt;/h3&gt;

&lt;p&gt;Send:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Images&lt;/li&gt;
&lt;li&gt;Documents&lt;/li&gt;
&lt;li&gt;Audio&lt;/li&gt;
&lt;li&gt;Video&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Verify Integration
&lt;/h2&gt;

&lt;p&gt;Confirm:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Messages are delivered successfully.&lt;/li&gt;
&lt;li&gt;Incoming messages are received.&lt;/li&gt;
&lt;li&gt;Webhooks are triggered correctly.&lt;/li&gt;
&lt;li&gt;Delivery status updates are received.&lt;/li&gt;
&lt;li&gt;Read receipts are received.&lt;/li&gt;
&lt;li&gt;Template messages are delivered successfully.&lt;/li&gt;
&lt;li&gt;Media messages are delivered successfully.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Resolve any API, webhook, permission, or configuration issues before moving to production.&lt;/p&gt;




&lt;h1&gt;
  
  
  15. Go Live
&lt;/h1&gt;

&lt;p&gt;After all configurations are complete and verified, your WhatsApp Cloud API integration is ready for production use.&lt;/p&gt;

&lt;h2&gt;
  
  
  Go-Live Checklist
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;✓ Business Verification Completed&lt;/li&gt;
&lt;li&gt;✓ Approved Display Name&lt;/li&gt;
&lt;li&gt;✓ Verified Production Phone Number&lt;/li&gt;
&lt;li&gt;✓ Approved Message Templates&lt;/li&gt;
&lt;li&gt;✓ Permanent Access Token Generated&lt;/li&gt;
&lt;li&gt;✓ Webhooks Configured and Working&lt;/li&gt;
&lt;li&gt;✓ Billing Configured&lt;/li&gt;
&lt;li&gt;✓ API Integration Tested Successfully&lt;/li&gt;
&lt;li&gt;✓ Required Users and Permissions Configured&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Once the checklist is complete, the WhatsApp Business Platform can be used for production messaging.&lt;/p&gt;




&lt;h1&gt;
  
  
  16. Production Integration Credentials Reference
&lt;/h1&gt;

&lt;p&gt;After completing the WhatsApp Cloud API setup, collect and securely store the following credentials.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Credential&lt;/th&gt;
&lt;th&gt;Purpose&lt;/th&gt;
&lt;th&gt;Required For&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;App ID&lt;/td&gt;
&lt;td&gt;Unique identifier of the Meta App&lt;/td&gt;
&lt;td&gt;API management and token generation&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;App Secret&lt;/td&gt;
&lt;td&gt;Secret key associated with the Meta App&lt;/td&gt;
&lt;td&gt;Server-to-server authentication and security operations&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Business Portfolio ID (Business Manager ID)&lt;/td&gt;
&lt;td&gt;Identifier of the Meta Business Portfolio&lt;/td&gt;
&lt;td&gt;Business asset management&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;WhatsApp Business Account ID (WABA ID)&lt;/td&gt;
&lt;td&gt;Identifier of the WhatsApp Business Account&lt;/td&gt;
&lt;td&gt;Template management and account management APIs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Phone Number ID&lt;/td&gt;
&lt;td&gt;Identifier of the WhatsApp-enabled phone number&lt;/td&gt;
&lt;td&gt;Sending messages through Cloud API&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Permanent Access Token&lt;/td&gt;
&lt;td&gt;Authentication token generated for the System User&lt;/td&gt;
&lt;td&gt;All production API requests&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Verify Token&lt;/td&gt;
&lt;td&gt;Custom token configured during webhook setup&lt;/td&gt;
&lt;td&gt;Webhook verification&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Webhook Callback URL&lt;/td&gt;
&lt;td&gt;Public HTTPS endpoint that receives Meta events&lt;/td&gt;
&lt;td&gt;Incoming messages and status updates&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h1&gt;
  
  
  Resources 👍
&lt;/h1&gt;

&lt;p&gt;Meta WhatsApp Business Platform Documentation&lt;/p&gt;

&lt;p&gt;&lt;a href="https://developers.facebook.com/documentation/business-messaging/whatsapp/overview" rel="noopener noreferrer"&gt;https://developers.facebook.com/documentation/business-messaging/whatsapp/overview&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;Postman Collection&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.postman.com/meta/whatsapp-business-platform/collection" rel="noopener noreferrer"&gt;https://www.postman.com/meta/whatsapp-business-platform/collection&lt;/a&gt;&lt;/p&gt;




&lt;h1&gt;
  
  
  Conclusion
&lt;/h1&gt;

&lt;p&gt;Setting up WhatsApp Cloud API involves several Meta services, including Business Portfolio, WABA, Developer Apps, System Users, Access Tokens, and Webhooks. While the onboarding process may initially seem complex, once configured correctly, it provides a scalable and reliable platform for integrating WhatsApp messaging into business applications.&lt;/p&gt;

&lt;p&gt;Following this guide will help you move from a simple Facebook account to a fully production-ready WhatsApp Cloud API integration.&lt;/p&gt;

</description>
      <category>whatsappcloudapi</category>
      <category>metawhatsapp</category>
      <category>meta</category>
      <category>whatsapp</category>
    </item>
    <item>
      <title># 🚀 70+ VS Code Extensions Every Developer Should Know</title>
      <dc:creator>Sai Praveen Sanapalli</dc:creator>
      <pubDate>Fri, 05 Jun 2026 19:02:20 +0000</pubDate>
      <link>https://dev.to/saipraveen446/-70-vs-code-extensions-every-developer-should-know-3b47</link>
      <guid>https://dev.to/saipraveen446/-70-vs-code-extensions-every-developer-should-know-3b47</guid>
      <description>&lt;p&gt;Visual Studio Code is one of the most popular code editors among developers. While VS Code is powerful out of the box, the right extensions can significantly improve productivity, code quality, debugging, collaboration, and workflow management.&lt;/p&gt;

&lt;p&gt;Here are 70+ useful VS Code extensions categorized by use case.&lt;/p&gt;




&lt;h2&gt;
  
  
  🐍 Python &amp;amp; Data Science
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Python&lt;/strong&gt; – Official Python support with debugging, IntelliSense, linting, and environment management.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pylance&lt;/strong&gt; – Fast IntelliSense, type checking, and auto-import suggestions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ruff&lt;/strong&gt; – Extremely fast Python linter and formatter.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Black Formatter&lt;/strong&gt; – Automatically formats Python code consistently.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Flake8&lt;/strong&gt; – Enforces coding standards and detects issues.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;isort&lt;/strong&gt; – Organizes and sorts imports automatically.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Python Test Explorer&lt;/strong&gt; – Run and manage tests directly in VS Code.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Jupyter&lt;/strong&gt; – Create and run notebooks inside VS Code.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Indent Rainbow&lt;/strong&gt; – Makes indentation levels easier to read.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🌐 Web &amp;amp; Frontend Development
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;ES7+ React/Redux Snippets&lt;/strong&gt; – Speed up React development with ready-made snippets.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tailwind CSS IntelliSense&lt;/strong&gt; – Autocomplete and validation for Tailwind CSS.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Prettier&lt;/strong&gt; – Automatically formats code on save.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;HTML CSS Support&lt;/strong&gt; – Improves HTML and CSS IntelliSense.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;CSS Peek&lt;/strong&gt; – Jump directly to CSS definitions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Auto Rename Tag&lt;/strong&gt; – Renames paired HTML tags automatically.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Auto Close Tag&lt;/strong&gt; – Inserts closing tags automatically.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Live Server&lt;/strong&gt; – Launch local projects with live reload.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Live Share&lt;/strong&gt; – Collaborate with teammates in real time.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Jest&lt;/strong&gt; – Run and debug Jest tests directly.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🗄️ Databases
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;SQLTools&lt;/strong&gt; – Connect to and query multiple databases.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;PostgreSQL&lt;/strong&gt; – Browse and run PostgreSQL queries.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;MongoDB for VS Code&lt;/strong&gt; – Explore collections and execute queries.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;SQLite Viewer&lt;/strong&gt; – Open SQLite databases directly.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Prisma&lt;/strong&gt; – IntelliSense and formatting for Prisma schemas.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Rainbow CSV&lt;/strong&gt; – Makes CSV files easier to read and analyze.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🔀 Git &amp;amp; GitHub
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;GitLens&lt;/strong&gt; – Advanced Git insights and history tracking.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Git Graph&lt;/strong&gt; – Visualize branches and commit history.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;GitHub Pull Requests&lt;/strong&gt; – Review and manage pull requests.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;GitHub Actions&lt;/strong&gt; – View workflow runs and statuses.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;GitHub Codespaces&lt;/strong&gt; – Launch cloud development environments.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;GitHub Repositories&lt;/strong&gt; – Browse repositories without cloning.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Settings Sync&lt;/strong&gt; – Synchronize settings and extensions across devices.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  ✅ Code Quality &amp;amp; Formatting
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;ESLint&lt;/strong&gt; – JavaScript and TypeScript linting.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Error Lens&lt;/strong&gt; – Displays errors directly inline.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;SonarQube for IDE&lt;/strong&gt; – Detects bugs, vulnerabilities, and code smells.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Better Comments&lt;/strong&gt; – Organize comments using visual highlights.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Code Spell Checker&lt;/strong&gt; – Finds spelling mistakes in code and documentation.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;DotENV&lt;/strong&gt; – Syntax highlighting for environment files.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🔌 API Testing &amp;amp; Debugging
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Thunder Client&lt;/strong&gt; – Lightweight API testing inside VS Code.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;REST Client&lt;/strong&gt; – Execute HTTP requests from text files.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Turbo Console Log&lt;/strong&gt; – Generate console logs instantly.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  ☁️ DevOps &amp;amp; Cloud
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Docker&lt;/strong&gt; – Manage containers and images.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Remote SSH&lt;/strong&gt; – Develop directly on remote servers.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Dev Containers&lt;/strong&gt; – Open projects inside containers.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Kubernetes&lt;/strong&gt; – Manage clusters and workloads.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Terraform&lt;/strong&gt; – Infrastructure as Code support.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;YAML&lt;/strong&gt; – Validation and IntelliSense for YAML files.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AWS Toolkit&lt;/strong&gt; – Access AWS services directly from VS Code.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Makefile Tools&lt;/strong&gt; – Work efficiently with Makefiles.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  📝 Documentation &amp;amp; Diagrams
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Markdown All in One&lt;/strong&gt; – Productivity tools for Markdown editing.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Markdown Preview Enhanced&lt;/strong&gt; – Rich Markdown preview and exports.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Mermaid Charts&lt;/strong&gt; – Create flowcharts and diagrams with Mermaid.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Draw.io Integration&lt;/strong&gt; – Build architecture and workflow diagrams.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;CodeSnap&lt;/strong&gt; – Create beautiful code screenshots.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;vscode-pdf&lt;/strong&gt; – View PDFs without leaving VS Code.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  ⚡ Productivity &amp;amp; Workflow
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Path IntelliSense&lt;/strong&gt; – Auto-complete file paths.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Project Manager&lt;/strong&gt; – Quickly switch between projects.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Bookmarks&lt;/strong&gt; – Save important code locations.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Todo Tree&lt;/strong&gt; – Organize TODO and FIXME comments.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;JSON Crack&lt;/strong&gt; – Visualize JSON structures.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Peacock&lt;/strong&gt; – Color-code workspaces.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pomodoro Timer&lt;/strong&gt; – Stay focused with timed work sessions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;WakaTime&lt;/strong&gt; – Track coding activity automatically.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;VSCodeVim&lt;/strong&gt; – Vim keybindings for VS Code users.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;One Dark Pro&lt;/strong&gt; – Popular developer-friendly theme.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Material Icon Theme&lt;/strong&gt; – Beautiful file and folder icons.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Color Highlight&lt;/strong&gt; – Preview colors directly in code.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Paste JSON as Code&lt;/strong&gt; – Generate typed models from JSON instantly.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  💡 Pro Tip
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Choose extensions based on your workflow, not popularity.&lt;/li&gt;
&lt;li&gt;Too many extensions can impact performance and increase resource usage.&lt;/li&gt;
&lt;li&gt;Keep your setup lean, fast, and productive. 🚀&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  What are your favorite VS Code extensions?
&lt;/h3&gt;

&lt;p&gt;Drop your recommendations in the comments and help other developers discover useful tools.&lt;/p&gt;

&lt;p&gt;Happy Coding! 💻&lt;/p&gt;

</description>
      <category>vscode</category>
      <category>extensions</category>
      <category>productivity</category>
      <category>programming</category>
    </item>
    <item>
      <title># AWS SES Setup Guide: Domain Verification, SMTP Configuration, DKIM, SPF &amp; DMARC</title>
      <dc:creator>Sai Praveen Sanapalli</dc:creator>
      <pubDate>Wed, 03 Jun 2026 18:55:53 +0000</pubDate>
      <link>https://dev.to/saipraveen446/-aws-ses-setup-guide-domain-verification-smtp-configuration-dkim-spf-dmarc-273j</link>
      <guid>https://dev.to/saipraveen446/-aws-ses-setup-guide-domain-verification-smtp-configuration-dkim-spf-dmarc-273j</guid>
      <description>&lt;p&gt;Email delivery is a critical component of modern applications. Whether you're sending OTPs, transactional notifications, account alerts, invoices, or marketing campaigns, reliable email delivery is essential.&lt;/p&gt;

&lt;p&gt;In this guide, we'll walk through the complete setup of Amazon Simple Email Service (AWS SES), including domain verification, DKIM, SPF, DMARC, SMTP credentials, and production access.&lt;/p&gt;




&lt;h2&gt;
  
  
  What is AWS SES?
&lt;/h2&gt;

&lt;p&gt;Amazon Simple Email Service (AWS SES) is a cloud-based email service that enables businesses and developers to send and receive emails securely and at scale.&lt;/p&gt;

&lt;h3&gt;
  
  
  Key Benefits
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Cost-effective email delivery&lt;/li&gt;
&lt;li&gt;High deliverability&lt;/li&gt;
&lt;li&gt;SMTP and API support&lt;/li&gt;
&lt;li&gt;Easy integration with applications&lt;/li&gt;
&lt;li&gt;Reputation monitoring&lt;/li&gt;
&lt;li&gt;Scalable infrastructure&lt;/li&gt;
&lt;li&gt;Security through SPF, DKIM, and DMARC&lt;/li&gt;
&lt;/ul&gt;




&lt;h1&gt;
  
  
  Step 1: Before You Start
&lt;/h1&gt;

&lt;p&gt;Before configuring AWS SES, complete the following prerequisites.&lt;/p&gt;

&lt;h3&gt;
  
  
  Login to AWS Console
&lt;/h3&gt;

&lt;p&gt;Sign in to your AWS account and select the correct region.&lt;/p&gt;

&lt;h3&gt;
  
  
  Select AWS Region
&lt;/h3&gt;

&lt;p&gt;For users in India, use:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Asia Pacific (Mumbai) – ap-south-1&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Important:&lt;br&gt;
SMTP credentials are region-specific.&lt;br&gt;
For SMTP and SMS credential generation, it is recommended to use the Mumbai (ap-south-1) region.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  Create Identity Using Your Domain
&lt;/h3&gt;

&lt;p&gt;Example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;alerts.yourcompany.com
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;AWS SES uses this domain identity for email authentication and reputation management.&lt;/p&gt;




&lt;h1&gt;
  
  
  Step 2: Create Domain Identity
&lt;/h1&gt;

&lt;ol&gt;
&lt;li&gt;Open AWS Console&lt;/li&gt;
&lt;li&gt;Search for SES&lt;/li&gt;
&lt;li&gt;Open Amazon Simple Email Service&lt;/li&gt;
&lt;li&gt;Navigate to Verified Identities&lt;/li&gt;
&lt;li&gt;Click Create Identity&lt;/li&gt;
&lt;li&gt;Select Identity Type → Domain&lt;/li&gt;
&lt;li&gt;Enter your domain&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;alerts.yourcompany.com
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;Enable Easy DKIM&lt;/li&gt;
&lt;li&gt;Click Create Identity&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;AWS SES will generate:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;TXT record for domain verification&lt;/li&gt;
&lt;li&gt;Three DKIM CNAME records&lt;/li&gt;
&lt;/ul&gt;




&lt;h1&gt;
  
  
  Step 3: Configure DNS Records
&lt;/h1&gt;

&lt;p&gt;Add the records generated by SES to your DNS provider.&lt;/p&gt;

&lt;h2&gt;
  
  
  TXT Record (Domain Verification)
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Type: TXT
Value: amazonses-verification-token
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  DKIM Records
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Type: CNAME
Count: 3
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;AWS provides these automatically.&lt;/p&gt;

&lt;h2&gt;
  
  
  SPF Record
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Type: TXT

Value:
v=spf1 include:amazonses.com -all
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;SPF authorizes Amazon SES to send emails on behalf of your domain.&lt;/p&gt;




&lt;h1&gt;
  
  
  Step 4: Route 53 Configuration (Optional)
&lt;/h1&gt;

&lt;p&gt;If your domain is hosted in Route 53:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open Route 53&lt;/li&gt;
&lt;li&gt;Select Hosted Zone&lt;/li&gt;
&lt;li&gt;Add TXT verification record&lt;/li&gt;
&lt;li&gt;Add DKIM CNAME records&lt;/li&gt;
&lt;li&gt;Save changes&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;DNS propagation generally completes within:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;5–15 minutes
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h1&gt;
  
  
  Step 5: Configure Custom MAIL FROM Domain
&lt;/h1&gt;

&lt;p&gt;Using a custom MAIL FROM domain improves deliverability and branding.&lt;/p&gt;

&lt;p&gt;Example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;mail.alerts.yourcompany.com
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Navigate to:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;SES → Verified Identities → Domain → MAIL FROM Domain
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Select:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Use Custom MAIL FROM Domain
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Add MX Record
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Type: MX

Value:
10 feedback-smtp.ap-south-1.amazonses.com
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Add SPF Record
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Type: TXT

Value:
v=spf1 include:amazonses.com -all
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h1&gt;
  
  
  Step 6: Create Configuration Set (Optional but Recommended for monitoring)
&lt;/h1&gt;

&lt;p&gt;Configuration Sets help monitor:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Deliverability&lt;/li&gt;
&lt;li&gt;Bounce rates&lt;/li&gt;
&lt;li&gt;Complaint rates&lt;/li&gt;
&lt;li&gt;Reputation metrics&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Steps:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open SES&lt;/li&gt;
&lt;li&gt;Navigate to Configuration Sets&lt;/li&gt;
&lt;li&gt;Click Create Configuration Set&lt;/li&gt;
&lt;li&gt;Enter a name&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;alerts-config
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;Enable Reputation Metrics&lt;/li&gt;
&lt;li&gt;Attach SNS or CloudWatch event destinations&lt;/li&gt;
&lt;/ol&gt;




&lt;h1&gt;
  
  
  Step 7: Request Production Access
&lt;/h1&gt;

&lt;p&gt;New AWS SES accounts start in Sandbox Mode.&lt;/p&gt;

&lt;p&gt;Sandbox restrictions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Can only send to verified email addresses&lt;/li&gt;
&lt;li&gt;Limited sending quotas&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;To move to production:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open SES Dashboard&lt;/li&gt;
&lt;li&gt;Select Request Production Access&lt;/li&gt;
&lt;li&gt;Fill in:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Use Case: Transactional Emails
Email Type: Transactional
Website: https://yourcompany.com
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Approval typically takes:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;2–24 hours
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h1&gt;
  
  
  Step 8: Create SMTP Credentials
&lt;/h1&gt;

&lt;p&gt;Navigate to:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;SES → SMTP Settings
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Click:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Create SMTP Credentials
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;AWS creates an IAM user and generates:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;SMTP Username&lt;/li&gt;
&lt;li&gt;SMTP Password&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  SMTP Endpoint (Mumbai Region)
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Host:
email-smtp.ap-south-1.amazonaws.com

Port:
587

Encryption:
TLS
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Important
&lt;/h3&gt;

&lt;p&gt;Always use the SMTP endpoint that matches the region where credentials were generated.&lt;/p&gt;




&lt;h1&gt;
  
  
  Step 9: Test Email Delivery
&lt;/h1&gt;

&lt;p&gt;You can test email delivery using:&lt;/p&gt;

&lt;h3&gt;
  
  
  Option 1
&lt;/h3&gt;

&lt;p&gt;SMTP integration from your application.&lt;/p&gt;

&lt;h3&gt;
  
  
  Option 2
&lt;/h3&gt;

&lt;p&gt;AWS SES test email functionality.&lt;/p&gt;

&lt;h3&gt;
  
  
  Option 3
&lt;/h3&gt;

&lt;p&gt;Python Boto3 SDK.&lt;/p&gt;

&lt;p&gt;After receiving the email:&lt;/p&gt;

&lt;p&gt;Open Gmail → Show Original&lt;/p&gt;

&lt;p&gt;Verify:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;SPF: PASS
DKIM: PASS
DMARC: PASS
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h1&gt;
  
  
  Step 10: Configure DMARC
&lt;/h1&gt;

&lt;p&gt;DMARC adds an additional layer of protection against email spoofing.&lt;/p&gt;

&lt;p&gt;Create:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Type: TXT

Host:
_dmarc.alerts.yourcompany.com

Value:
v=DMARC1; p=none; rua=mailto:admin@yourcompany.com;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;After monitoring reports, you can move from:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;p=none
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;to&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;p=quarantine
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;and eventually&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;p=reject
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;for stronger protection.&lt;/p&gt;




&lt;h1&gt;
  
  
  Email Deliverability Best Practices
&lt;/h1&gt;

&lt;h3&gt;
  
  
  Warm Up New Domains
&lt;/h3&gt;

&lt;p&gt;Start with:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;10–20 emails per day
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;and gradually increase volume.&lt;/p&gt;

&lt;h3&gt;
  
  
  Maintain Low Bounce Rates
&lt;/h3&gt;

&lt;p&gt;Recommended:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Bounce Rate &amp;lt; 5%
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Maintain Low Complaint Rates
&lt;/h3&gt;

&lt;p&gt;Recommended:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Complaint Rate &amp;lt; 0.1%
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Send Multipart Emails
&lt;/h3&gt;

&lt;p&gt;Always send:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;HTML version&lt;/li&gt;
&lt;li&gt;Plain text version&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Monitor Reputation Dashboard
&lt;/h3&gt;

&lt;p&gt;Review:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Delivery rates&lt;/li&gt;
&lt;li&gt;Bounce rates&lt;/li&gt;
&lt;li&gt;Complaint rates&lt;/li&gt;
&lt;li&gt;Reputation status&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;regularly.&lt;/p&gt;




&lt;h1&gt;
  
  
  High-Level Email Flow
&lt;/h1&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Application
      ↓
AWS SES
      ↓
Domain Verification
      ↓
SPF + DKIM + DMARC
      ↓
Recipient Inbox
      ↓
High Deliverability
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h1&gt;
  
  
  Conclusion
&lt;/h1&gt;

&lt;p&gt;AWS SES provides a reliable, scalable, and cost-effective solution for sending transactional and notification emails. By properly configuring Domain Verification, DKIM, SPF, DMARC, Custom MAIL FROM, and SMTP credentials, you can significantly improve email deliverability and protect your domain reputation.&lt;/p&gt;

&lt;p&gt;If you're building SaaS platforms, ERP systems, notification services, fintech applications, or customer communication platforms, AWS SES is one of the most efficient email delivery services available today.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>awsses</category>
      <category>cloud</category>
      <category>devops</category>
    </item>
  </channel>
</rss>
