首页 » 博客 » 巴西短信最佳实践、合规性和功能

巴西短信最佳实践、合规性和功能

巴西短信市场概览

区域设置名称: 巴西
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)
  • 支持葡萄牙语退出命令
  • 实施适当的错误处理和监控

下一步

  1. 审核 LGPD 合规性要求 意大利电话号码
  2. 建立适当的同意管理系统
  3. 在允许的时间内实施消息调度
  4. 在所有主要运营商上进行测试交付 。
滚动至顶部