巴西短信市场概览
区域设置名称: | 巴西 |
---|---|
ISO 代码: | 巴西雷亚尔 |
地区 | 南美洲 |
移动国家代码 (MCC) | 724 |
拨号代码 | +55 |
市场状况:巴西拥有蓬勃发展的移动市场,智能手机普及率高(截至 2021 年为 75.6%),短信使用率高,同时还有 WhatsApp 等热门 OTT 应用。该国的主要移动运营商包括 Vivo、TIM、Claro 和 Oi。Android 设备占据市场主导地位,约占移动设备的 85%,而 iOS 设备约占 15%。电子商务行业尤其活跃,企业大量使用短信进行客户沟通和身份验证。
巴西的主要短信功能和能力
巴西提供全面的短信功能,包括双向消息、串联消息以及 MMS 到 SMS 的转换,并得到所有主要运营商的大力支持。
双向短信支持
巴西全面支持所有主要运营商的双向短信服务。除了标准合规性要求外,没有其他具体限制,非常适合互动短信活动和客户支持。
串联消息(分段短信)
支持:是的,大多数运营商都支持串联,但某些发件人 ID 类型存在一些限制。
消息长度规则:
- NEXTEL:每段 140 个字符
- 所有其他运营商:每段 160 个字符
编码注意事项:GSM-7 编码是标准,而除 Oi、NEXTEL 和 CTBC(Algar)外,大多数运营商都支持 UCS-2。
MMS 支持
MMS 消息会自动转换为带有内嵌 URL 链接的 SMS。这确保了与所有运营商的兼容性,同时仍允许通过链接资源有效地共享丰富的媒体内容。
收件人电话号码兼容性
号码可携性
号码可携性在巴西已全面开放。此功能让用户在切换不同网络提供商时可以保留自己的电话号码,而不会影响短信发送或路由。
向固定电话发送短信
巴西不支持向固定电话号码发送短信。尝试通过 REST API 向固定电话号码发送消息将导致 400 响应错误(代码 21614),并且不会记录消息或收取费用。
巴西短信合规与监管指南
巴西的短信通信受《巴西通用数据保护法》(LGPD)管辖,并由国家电信局(ANATEL)监督。这些法规强调数据隐私、消费者权利和透明的通信实践。
同意和选择加入
明确同意要求:
- 发送营销信息前必须获得书面或数字确认
- 必须保留同意记录并方便获取
- 在选择加入时必须明确说明沟通目的
- 不同类型的通信需要分别征得同意
征得同意的最佳做法:
- 使用双重选择加入验证
- 维护详细的同意日志,包括时间戳和方法
- 提供明确的条款和条件
- 允许轻松访问隐私政策
HELP/STOP 和其他命令
- 所有短信活动都必须支持标准退出关键字:
- “PARE”(停止)
- “SAIR”(退出)
- “AJUDA”(帮助)
- 信息必须使用葡萄牙语
- 对帮助/停止命令的响应必须立即且免费
- 必须在 24 小时内发送退出确认信息
请勿致电/请勿打扰登记
巴西没有中央化的 DND 登记处。但是,企业必须:
- 维护自己的抑制名单
- 24 小时内尊重退出请求
- 保留屏蔽号码的记录
- 实施主动过滤系统,以防止向选择退出的用户发送消息
时区敏感度
时间限制:
- 当地时间 9:00-22:00 以外禁止发送营销信息
- 周日禁止发布营销信息
- 巴西横跨三个时区 – 必须遵守每个时区的当地时间
- 紧急和交易信息不受时间限制
巴西的电话号码选项和短信发件人类型
字母数字发件人 ID
运营商网络能力:支持(可选)
注册要求:
- TIM、CLARO 和 VIVO 网络可进行预注册
- 10 周的配置时间
- 建议使用大写发件人 ID(VIVO 必需)
发件人 ID 保存:是,在支持的网络上保存
长代码
国内与国际:
- 国内:仅支持 P2P 消息传递
- 国际:不直接支持
发件人ID保存: - 国内:是
- 国际:否,可能会被随机代码覆盖
配置时间:国内号码立即可用
用例:人与人之间的通信、客户服务
短代码
支持:所有主要运营商的全面支持
配置时间:2-4 周
用例:
- 营销活动
- 双重身份验证
- 客户通知
- 大量消息传递
受限制的短信内容、行业和用例
禁止内容:
- 成人内容
- 赌博服务
- 政治信息
- 宗教内容
- 管制物质
- 大麻相关内容
- 比赛促销
- 电信服务
内容过滤
运营商过滤规则:
- Oi、NEXTEL 和 CTBC (Algar) 不支持 Unicode
- 重音字符自动转换为 ASCII
- 尽力处理 M2M 号码
避免阻塞的提示:
- 使用不带特殊字符的纯文本
- 避免使用 URL 缩短器
- 将消息长度保持在运营商限制范围内
- 使用已注册的发件人 ID
- 保持一致的发送模式
在巴西发送短信的最佳做法
信息传递策略
- 尽可能将消息控制在 160 个字符以内
- 包含明确的号召性用语
- 策略性地使用个性化令牌
- 保持一致的品牌声音
发送频率和时间
- 每位收件人每周最多可收到 2-3 条消息
- 尊重时区差异
- 除非必要,避免重大节假日
- 分散批量活动以防止网络拥塞
本土化
- 所有消息默认为葡萄牙语
- 使用正式葡萄牙语(“você”而不是“tu”)
- 考虑区域语言差异
- 提供语言偏好选项
退出管理
- 实时处理退出
- 维护集中退出数据库
- 向用户确认退出状态
- 定期审核退出名单
测试和监控
- 在所有主要运营商上进行测试(Vivo、TIM、Claro、Oi)
- 监控承运商的运送费率
- 跟踪参与度指标
- 定期测试选择退出功能
巴西的 SMS API 集成
Twilio
Twilio 提供强大的 SMS API,专门支持巴西的消息传递要求。身份验证使用帐户 SID 和身份验证令牌凭据。
import { Twilio } from 'twilio';
// Initialize Twilio client
const client = new Twilio(
process.env.TWILIO_ACCOUNT_SID, // Your Account SID
process.env.TWILIO_AUTH_TOKEN // Your Auth Token
);
// Function to send SMS to Brazil
async function sendSMSToBrazil(
to: string,
message: string
): Promise<void> {
try {
// Create message with Brazil-specific formatting
const response = await client.messages.create({
to: `+55${to}`, // Brazil country code
from: process.env.TWILIO_PHONE_NUMBER,
body: message,
// Optional: Schedule message within allowed hours (9:00-22:00)
scheduleType: 'fixed',
sendAt: new Date('2024-01-01T13:00:00-03:00') // Brazil timezone
});
console.log(`Message sent successfully: ${response.sid}`);
} catch (error) {
console.error('Error sending message:', error);
}
}
辛奇
Sinch 在巴西提供直接运营商连接,并支持大容量消息传递。
import { SinchClient } from '@sinch/sdk-core';
// Initialize Sinch client
const sinch = new SinchClient({
servicePlanId: process.env.SINCH_SERVICE_PLAN_ID,
apiToken: process.env.SINCH_API_TOKEN,
smsRegion: 'br' // Specify Brazil region
});
// Function to send batch SMS
async function sendBatchSMS(
recipients: string[],
message: string
): Promise<void> {
try {
const response = await sinch.sms.batches.create({
body: message,
recipients: recipients.map(num => `+55${num}`),
deliveryReport: 'summary', // Get delivery statistics
parameters: {
// Support for Brazilian Portuguese characters
encoding: 'auto'
}
});
console.log(`Batch ID: ${response.id}`);
} catch (error) {
console.error('Batch sending failed:', error);
}
}
信息鸟
MessageBird 在巴西提供可靠的短信传递服务,支持字母数字发件人 ID。
import { MessageBird } from 'messagebird';
// Initialize MessageBird client
const messagebird = new MessageBird(process.env.MESSAGEBIRD_API_KEY);
// Function to send SMS with delivery tracking
async function sendTrackedSMS(
recipient: string,
message: string
): Promise<void> {
const params = {
originator: 'YourBrand', // Alphanumeric sender ID
recipients: [`+55${recipient}`],
body: message,
reportUrl: 'https://your-webhook.com/delivery-reports'
};
try {
const response = await new Promise((resolve, reject) => {
messagebird.messages.create(params, (err, response) => {
if (err) reject(err);
else resolve(response);
});
});
console.log('Message sent:', response);
} catch (error) {
console.error('Sending failed:', error);
}
}
普利沃
Plivo 提供高级 SMS 功能,支持 Unicode 和连接消息。
import { Client } from 'plivo';
// Initialize Plivo client
const client = new Client(
process.env.PLIVO_AUTH_ID,
process.env.PLIVO_AUTH_TOKEN
);
// Function to send Unicode SMS
async function sendUnicodeSMS(
to: string,
message: string
): Promise<void> {
try {
const response = await client.messages.create({
src: process.env.PLIVO_PHONE_NUMBER,
dst: `+55${to}`,
text: message,
type: 'unicode', // Support for Portuguese special characters
url: 'https://your-webhook.com/status' // Status callback
});
console.log('Message UUID:', response.messageUuid);
} catch (error) {
console.error('Message sending failed:', error);
}
}
API 速率限制和吞吐量
- 默认速率限制因提供商而异(通常为每秒 1-10 条消息)
- 实现重试逻辑的指数退避算法
- 使用批处理 API 进行大量发送
- 高峰时段排队消息
吞吐量管理策略:
- 实现消息队列系统 意大利 whatsapp 数据
- 尽可能使用批处理 API
- 监控投递率并调整发送速度
- 在多个发送者 ID 之间分配负载
错误处理和报告
- 实施全面日志记录 专业服务的数字营销策略与其他行业有何不同?
- 监控送货回执
- 跟踪承运商的回应
- 设置错误阈值的自动警报
回顾和其他资源
关键要点:
- 发送营销信息前获得明确同意
- 尊重时区限制(当地时间 9:00-22:00)
- 支持葡萄牙语退出命令
- 实施适当的错误处理和监控
下一步:
- 审核 LGPD 合规性要求 意大利电话号码
- 建立适当的同意管理系统
- 在允许的时间内实施消息调度
- 在所有主要运营商上进行测试交付 。