---
title: AWS Communication Developer Services Consulting
description: We build on AWS Communication Developer Services: SES email, End User Messaging SMS and RCS, and WhatsApp, with Bedrock agents behind an approval gate.
url: https://www.joinhorizon.co/services/aws-communication-developer-services/
category: email
updated: 2026-10-28
---

# AWS Communication Developer Services Consulting

> Email, SMS, RCS, and WhatsApp on AWS, chosen per job and wired to one event path. We build on AWS Communication Developer Services and keep the AI agent on the reply path, not on the refund button.

## What AWS Communication Developer Services covers

AWS Communication Developer Services (CDS) is AWS's name for the channels a business uses to reach customers:

| Channel | AWS service | Typical job |
| --- | --- | --- |
| Email | [Amazon SES](https://www.joinhorizon.co/services/aws-ses/) | Receipts, policies, long answers, newsletters |
| SMS | AWS End User Messaging SMS | One-time passcodes, RCS fallback |
| RCS | AWS End User Messaging (RCS for Business, launched 31 March 2026) | Branded order updates with suggested replies |
| WhatsApp | AWS End User Messaging Social | Replies inside an open customer thread |

Push is an End User Messaging channel too, but it sits outside the CDS list. FactualMinds builds on these services. We do not hold a CDS designation, and this page does not claim one.

The deep dives are in our six-part series: the [channel decision hub](https://www.joinhorizon.co/blog/aws-communication-developer-services-2026/), [RCS](https://www.joinhorizon.co/blog/aws-end-user-messaging-rcs-guide-2026/), [SMS and 10DLC](https://www.joinhorizon.co/blog/aws-end-user-messaging-sms-guide-2026/), [WhatsApp](https://www.joinhorizon.co/blog/aws-end-user-messaging-whatsapp-guide-2026/), the [SES agent skill](https://www.joinhorizon.co/blog/amazon-ses-ai-agent-skill-2026/), and the [production agent architecture](https://www.joinhorizon.co/blog/aws-cds-agentic-ai-architecture/). The dedicated engagement pages are [WhatsApp Business API on AWS](https://www.joinhorizon.co/services/aws-whatsapp-business-api/) and [RCS Business Messaging on AWS](https://www.joinhorizon.co/services/aws-rcs-messaging/).

## Architecture we build

1. **Send path per job.** Each job gets its own origination identity and registration. OTP uses Notify or a dedicated OTP registration. Order status uses an RCS agent and a same-use-case SMS number in one phone pool. Promotions get their own registration. Email goes through SES configuration sets.
2. **Event path.** Every channel writes delivery and inbound events to Amazon SNS, EventBridge, or Firehose. Configuration sets are attached before the first send, because event destinations do not backfill.
3. **Filter before the model.** A Lambda function drops delivery, read, and status events. Only customer messages reach the model.
4. **Agent.** Amazon Bedrock answers with tools scoped to reads: order lookup, delivery window, policy text. For production runtime, identity, and memory we use [Amazon Bedrock AgentCore](https://www.joinhorizon.co/services/amazon-bedrock-agentcore/).
5. **Approval gate.** Refunds, address changes, and price changes become a proposal a named person approves. The same rule is in [human-in-the-loop approvals](https://www.joinhorizon.co/blog/human-in-the-loop-ai-agents-ecommerce-2026/).
6. **Consent.** STOP and HELP keywords, opt-out lists, WhatsApp template categories, and the SES suppression list are configured and tested before go-live.

Between the channels and the agent sits an application layer we build and you own: one internal event contract for every channel, dedup on the provider message ID, one ordered queue per conversation, and a channel adapter per send path that keeps each channel's registration, template, and opt-out rules. The agent never calls a send API or a write API directly. The engineering detail, including evaluation and failure handling, is in [production agentic AI on AWS CDS and AgentCore](https://www.joinhorizon.co/blog/aws-cds-agentic-ai-architecture/).

## Engagement phases

| Phase | Output |
| --- | --- |
| Channel plan (week 1) | One row per job in the [channel planner CSV](https://www.joinhorizon.co/examples/architecture-blog-2026/aws-cds-channel-planner/channel-planner.csv), with the registration blocker named |
| Registration | 10DLC or toll-free, RCS testing and country launch forms, WhatsApp Business account link, SES identity and DKIM |
| Event path | SNS or EventBridge destinations, Lambda filter, CloudWatch alarms on failed deliveries |
| Agent | Bedrock agent on the reply path with read-only tools and an approval queue |
| Launch | Production sends per channel, opt-out tests, cost check against the list-price model |

## What the bill looks like before anyone replies

US list prices from the [End User Messaging pricing page](https://aws.amazon.com/end-user-messaging/pricing/), read 29 September 2026. These are AWS list prices, not a client bill:

- US Rich RCS text: **$0.01194** per delivered 160-byte segment. A rich card: **$0.02949** per delivered message.
- WhatsApp: AWS charges a per-message fee and Meta charges its own on top, by country and message type. See the [WhatsApp Business API page](https://www.joinhorizon.co/services/aws-whatsapp-business-api/) for current rates.
- US SMS: registration fees plus a per-carrier rate published as a CSV on the same page.

## What could go wrong

- **One registration for everything.** Carriers review use cases. A password reset and a discount on the same RCS agent invites a denial.
- **A testing agent treated as a launch.** An RCS test agent delivers only to enrolled phones. Customers get nothing.
- **Paying the model for receipts.** WhatsApp delivery and read events share the topic with user messages. Filter first.
- **WhatsApp budget from the AWS fee only.** The invoice includes Meta's fee.
- **The agent decides refunds.** Keep money movement out of the tool list.

## Who this is for

**Good fit if:**

- You send customer messages from your own product or store and want sending, events, and billing in your AWS account.
- You have more than one message job (for example OTP, order status, and receipts) and today each one goes through a different vendor.
- Your team can own an application and an AWS account, and needs help with registrations, event wiring, and a cost model.
- You operate in countries where RCS or WhatsApp is a realistic option, or you need SES and SMS sorted out first.

**Not a fit if:**

- You want a campaign tool with a drag-and-drop editor and a marketing team that never touches AWS. A marketing platform is a better tool for that.
- You need to send to a country AWS does not cover for the channel you want. Check current country support for each channel before you plan.
- You need a launch date that ignores carrier and Meta review times. Registrations set the schedule.
- You want us to hold your consent records or act as the sender of record. Those stay with you.

## Choosing a channel per job

| Job | Starting channel | Why | What to check first |
| --- | --- | --- | --- |
| One-time passcode | SMS (or WhatsApp Authentication template) | Reaches any phone, short, expected immediately | Registration for the OTP use case in each country |
| Order and delivery updates | RCS with SMS fallback, or WhatsApp if the customer opted in there | Branded sender, suggested replies | RCS country and carrier status, WhatsApp opt-in |
| Replies to a customer question | The channel the customer used | The thread is already open | WhatsApp 24-hour window |
| Receipts, policies, long answers | Email through [Amazon SES](https://www.joinhorizon.co/services/aws-ses/) | Room for long content and attachments | Domain authentication, suppression handling |
| Promotions | Whichever channel has a separate opt-in and registration | Carriers and Meta review promotional use separately | Consent source, a separate registration |
| Live agent conversation | [Amazon Connect](https://www.joinhorizon.co/services/amazon-connect/) with WhatsApp or chat | Agents see contact history in one workspace | Connect instance, linked number |

## How the pieces fit together

- **Origination identities.** SMS uses phone numbers, sender IDs, or pools of them. RCS uses an RCS agent. WhatsApp uses a phone number linked to a WhatsApp Business Account. SES uses a verified domain or address. We keep one identity per use case so a carrier or Meta review of one job does not hold up another.
- **Phone pools.** A pool containing an RCS agent and a dedicated SMS number tries RCS first and falls back to SMS. AWS documents that shared SMS routes are not used for RCS fallback, so the pool needs a dedicated number or sender ID.
- **Configuration sets and event destinations.** A configuration set is attached when you send. It points to event destinations such as Amazon SNS, Amazon CloudWatch Logs, or Amazon Data Firehose (up to five per configuration set for SMS). Events from before a destination was attached are not replayed, so we set these up before the first production send.
- **Amazon Connect.** Used when people, not code, answer. WhatsApp can be linked to a Connect instance so agents take WhatsApp contacts next to voice and chat.
- **Your application.** Owns consent, templates' variable data, and the rules for which job uses which channel.

## Deliverables and engagement boundaries

**We deliver:**

- A channel plan with one row per message job, the identity it uses, and the registration blocker
- Registration support for SES identities, SMS registrations, RCS agents and launches, and the WhatsApp account link, including preparing the forms for your sign-off
- Event destinations, a filtering function, alarms for failed deliveries, and a runbook for opt-out and complaint handling
- A list-price cost worksheet per channel, with AWS fees and Meta fees on separate lines
- Handover documentation and a walkthrough with your engineers

**You or third parties own:**

- Your company details, brand assets, opt-in language, privacy policy, and the right to message each recipient
- Carrier decisions on SMS and RCS, and Meta decisions on WhatsApp accounts and templates. We prepare submissions, we do not control outcomes or timing.
- Message content, legal review of it, and the production application that calls the APIs
- The AWS bill, including Meta charges that appear on it for WhatsApp

## Prerequisites and limits

- An AWS account with permission to create the messaging resources. Regional availability differs between SES, End User Messaging SMS and RCS, and End User Messaging Social, so we confirm the Region for each before design.
- RCS country launches are supported in a defined list of countries (22 at the time we checked the AWS docs on 27 October 2026), and each carrier in a country reviews your agent independently. A country can be partially active while some carriers are still pending.
- Not every device receives RCS. AWS lists older Android devices and iPhones earlier than iOS 18 as unable to receive it, which is one reason SMS fallback is part of the design.
- WhatsApp messaging through End User Messaging Social is not available to customers located in China.
- SMS delivery receipts can take up to 72 hours.
- Prices and country lists change. We re-check them against the AWS pages at the start of every engagement.

## Related guides and services

- [Channel decision hub](https://www.joinhorizon.co/blog/aws-communication-developer-services-2026/)
- [SMS and 10DLC guide](https://www.joinhorizon.co/blog/aws-end-user-messaging-sms-guide-2026/)
- [WhatsApp guide](https://www.joinhorizon.co/blog/aws-end-user-messaging-whatsapp-guide-2026/)
- [RCS guide](https://www.joinhorizon.co/blog/aws-end-user-messaging-rcs-guide-2026/)
- [Production agent architecture: events, permissions, evaluation](https://www.joinhorizon.co/blog/aws-cds-agentic-ai-architecture/)
- [WhatsApp Business API on AWS](https://www.joinhorizon.co/services/aws-whatsapp-business-api/)
- [RCS Business Messaging on AWS](https://www.joinhorizon.co/services/aws-rcs-messaging/)
- [Amazon SES consulting](https://www.joinhorizon.co/services/aws-ses/)
- [Amazon Connect](https://www.joinhorizon.co/services/amazon-connect/)

## Next step

Bring your OTP, order-status, promotion, and receipt flows. We will return the channel plan, the registration schedule, and the list-price cost model. [Contact us](https://www.joinhorizon.co/contact-us/).

## Features

### Channel Selection per Job
OTP, where-is-my-order, promotion, and receipt each get the channel and registration that fits them. Receipts and long answers go to SES, not into an SMS.

### Registration Program
US 10DLC and toll-free, RCS testing and country launch, WhatsApp Business account linking, and SES identity verification run as one schedule with named blockers.

### One Inbound Event Path
Inbound messages and delivery events land on Amazon SNS or EventBridge. Lambda drops receipts before any model call, so you do not pay to analyze a read receipt.

### Bedrock Agent Replies
Amazon Bedrock (AgentCore for production runtime) answers order-status and policy questions in the same thread. Refunds, address changes, and price changes go to a person.

### Consent and Opt-Out
STOP and HELP handling, opt-out lists, WhatsApp template categories, and SES suppression lists set before the first production send.

### Cost Model Before Launch
List-price worksheet per channel: RCS segments vs rich media, WhatsApp AWS fee plus the separate Meta fee, SMS registration fees, SES plan breakpoints.

## Why FactualMinds

### Published Channel Research
Our six-part Communication Developer Services series documents prices, registration steps, and failure modes from AWS sources, with a reproducible channel planner CSV.

### SES at Production Scale
Our published TargetBay case study covers 200M+ emails per month on Amazon SES. Email is the part of this stack we have run at volume.

### Agents With an Approval Gate
The customer-facing agent may look up an order. It may not refund. That rule is written into the tool list, not left to the prompt.

### AWS Select Tier Services Partner
50+ AWS certifications on staff. We do not hold a Communication Developer Services designation, and we will not claim one.

## FAQ

### What is AWS Communication Developer Services?
It is the name AWS uses for the customer send path: AWS End User Messaging for SMS and RCS, AWS End User Messaging Social for WhatsApp, and Amazon SES for email. Push notifications are an End User Messaging channel, but the September 2026 CDS partner hackathon rules list push as outside CDS usage.

### Is FactualMinds an AWS Communication Developer Services partner?
No. FactualMinds is an AWS Select Tier Services Partner and AWS Marketplace seller with 50+ AWS certifications. We build on Communication Developer Services, but we hold no designation for it, and we have no published SMS, RCS, or WhatsApp engagement yet. Our production messaging proof is on Amazon SES.

### Which channel should a customer-facing agent use first?
If the customer already has an open WhatsApp thread, answer there. If not, and a verified brand on the phone matters, send through a phone pool that tries RCS and falls back to a dedicated SMS number registered for the same use case. Use SES for receipts and long answers.

### How do inbound messages reach a Bedrock agent?
Inbound SMS, RCS, and WhatsApp messages are published to an event destination such as an Amazon SNS topic. A Lambda function filters out delivery and read events, calls the model for real customer messages only, and sends the reply back on the same channel. AWS publishes a sample of this pattern for SMS and WhatsApp.

### How long does registration take?
An RCS test agent can reach your own enrolled phone the same day. RCS country launch is a separate carrier review per country, and the AWS launch guide says to plan for several months. US 10DLC needs a company, a campaign, and a number. WhatsApp needs a WhatsApp Business account linked through Meta. Plan the launch date around registration, not around code.

### What could go wrong?
The common failures are mixing OTP and promotions on one registration, connecting a model to a testing RCS agent and calling it a launch, budgeting WhatsApp from the AWS fee alone, and letting a prompt decide whether a refund is allowed. Each one is avoidable with a channel plan, separate registrations, and a tool list that excludes money movement.

### Do we need all four channels?
No. Most teams start with two: email through SES for receipts and long answers, plus one phone channel for time-sensitive messages. We add RCS or WhatsApp when a specific job needs it, such as a branded order update or replies inside a thread the customer already opened. Each added channel brings its own registration, so adding one without a job for it only adds schedule risk.

### How do opt-outs work across channels?
They do not share one list. For SMS, AWS End User Messaging SMS adds a number to an opt-out list when it replies STOP, and it does not attempt sends to numbers on the list tied to the origination identity or pool (you can switch to self-managed opt-outs). Email uses the SES suppression list. WhatsApp requires an opt-in before template messages. We keep one consent record in your system and map it to each channel.

### Can delivery events be used to confirm a message arrived?
For SMS, carrier delivery receipts can take up to 72 hours, and after that the service reports an UNKNOWN status if no final event arrived. Use events for reporting and alerting, not as a real-time proof of delivery. For anything time critical, such as an OTP, give the user a resend path.

### What do you need from us to start?
A list of the message jobs you send today (or plan to), the countries you send to, your sending domains, an AWS account (or permission to create one), and someone who can approve company details for carrier and Meta registrations. Legal text such as opt-in language and privacy policy URLs must come from your side.

---

*Source: https://www.joinhorizon.co/services/aws-communication-developer-services/*
