How to setup Custom Email Domain for sending Transaction emails and Marketing emails from your own domain

This article includes setting up AWS Access key and Secret key.

  • To begin, create an AWS account. Once created, log in. In the search box, type "IAM" (Identity and Access Manager) and click on it. This will lead you to the IAM dashboard, where you can manage user access and permissions for your AWS resources.

 

  • After accessing the IAM dashboard, proceed by selecting the "Users" tab. This section allows you to manage and configure user accounts, defining their permissions and access within your AWS environment.

  • Next, within the "Users" tab, locate and click on the "Create User" button. This step initiates the process of adding a new user to your AWS account, enabling you to specify their access rights and permissions.

  • Now, enter the desired "User name" for the new user you are creating. Once you've specified the user name, click on the "Next" button to proceed to the next step in the user creation process.

  • To create a policy for the user you just added, choose the option "Attach Policies directly." Afterward, click on "Create Policy."

  • After selecting "JSON," you'll find it in the "Policy Editor" window. To proceed, remove the entire existing JSON script from the editor. 

 

  • Copy the provided JSON script below. Go back to the Policy Editor window. Paste the copied JSON script into the Policy Editor.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"firehose:DescribeDeliveryStream",
"iam:PassRole",
"firehose:CreateDeliveryStream",
"s3:CreateBucket"
],
"Resource": [
"arn:aws:firehose:*:YOURAWS_ACC_ID:deliverystream/*",
"arn:aws:iam::YOURAWS_ACC_ID:role/*",
"arn:aws:s3:::*"
]
},
{
"Sid": "VisualEditor1",
"Effect": "Allow",
"Action": [
"ses:ListConfigurationSets",
"ses:CreateConfigurationSet",
"ses:SendEmail",
"ses:GetIdentityDkimAttributes",
"ses:GetSendQuota",
"ses:CreateConfigurationSetEventDestination",
"ses:GetSendStatistics",
"ses:SendRawEmail",
"ses:GetIdentityVerificationAttributes",
"ses:VerifyDomainDkim",
"ses:VerifyDomainIdentity"
],
"Resource": "*"
}
]
}
  • Replace "YOURAWS_ACC_IDD" with your AWS account ID, which you can find in your Dashboard. Scroll down and click on "Add Policy" as shown below

  • Provide a name and description for the policy you created for the role.

  • Scroll down and click the "Create Policy" button.

  • If you see a green pop-up prompt, it indicates that you have successfully created the policy.

  • Return to the "Roles" section, choose "Attach policies directly," search for the policies you created, select the desired policy, and click the "Next" button.

  • Click on "Create User.".

  • The user has been successfully created. Search for the user, and then click on the user's name.


Select "Security Credentials."


Click on "Create Access Key."

  • Choose the third-party service, confirm the prompt, and then click on "Next," as shown below.

  • Provide a name for the Description tag value, and then click on "Create Access Key."

  • The Access Key has been successfully created. Copy both the Access Key and Secret Access Key. After that, click on "Done."

  • Navigate to your Admin Dashboard, then go to "Settings" and select "Custom Email Domain."

  • Click on "Connect AWS," and then paste both the AWS Access Key and AWS Secret Key in the respective fields.

 

Now in the next article, we will Create a role for ARN for SES to Firehose and then Firehose to S3. And Email Domain.