西班牙短信市场概览
区域设置名称: | 西班牙 |
---|---|
ISO 代码: | ES |
地区 | 欧洲 |
移动国家代码 (MCC) | 214 |
拨号代码 | +34 |
市场状况:西班牙拥有高度发达的移动市场,短瑞士 whatsapp 数据信使用十分广泛。该国的主要移动运营商包括 Movistar、沃达丰和 Orange,共为超过 5500 万移动用户提供服务。虽然 WhatsApp 等 OTT 消息应用程序在个人通信中非常受欢迎,但短信对于商业通信仍然至关重要,尤其是用于身份验证、通知和营销。移动市场显示 Android(约 80%)和 iOS(约 20%)用户之间的分配相对均衡,智能手机普及率超过 80%。
西班牙的主要短信功能和能力
西班牙提供全面的短信功能,包括双向消息、串联消息以及对国诺福克岛短信最佳实践、合规性和功能内和国际消息的全面支持以及各种发件人 ID 选项。
双向短信支持
是的,西班牙完全支持双向短信通信。除了获得用户同意和维护退出机制的标准合规要求外,没有其他具体限制。
串联消息(分段短信)
支持:是的,西班牙网络完全支持串联。
消息长度规则:
- GSM-7 编码:单条短信 160 个字符,串联短信每段 153 个字符
- Unicode/UCS-2:单条短信 70 个字符,连接消息每段 67 个字符
编码注意事项:标准拉丁字母优先使用 GSM-7,而特殊字符和西班牙语特定字符(ñ、á、é、í、ó、ú)则需要使用 UCS-2。
MMS 支持
MMS 消息会自动转换为 SMS,并嵌入 URL 链接以访问多媒体领导孟加拉国搜索引擎优化内容。这确保了所有设备的兼容性,同时保持了共享丰富媒体内容的能力。
收件人电话号码兼容性
号码可携性
西班牙提供号码可携性,允许用户在更换运营商时保留自己的电话号码。由于西班牙电信基础设施可以高效处理号码可携性,因此此功能不会对短信发送或路由产生重大影响。
向固定电话发送短信
西班牙不支持向固定电话号码发送短信。尝试向固定电话号码发送短信将导致发送失败,并且通常会通过 SMS API 生成 400 响应错误(错误代码 21614)。消息不会显示在日志中,也不会向帐户收取这些尝试的费用。
西班牙短信合规与监管指南
西班牙的短信通信由两个主要机构监管:西班牙数据保护局 (AEPD) 和国家市场与竞争委员会 (CNMC)。这两个机构分别负责执行 GDPR 合规性和电信法规。
同意和选择加入
明确同意要求:
- 发送营销信息前,获得收件人的书面或电子确认
- 明确披露消息目的、频率和公司身份
- 对不同类型的通信(营销、交易等)分别同意
- 记录何时、如何以及给予何种同意
- 能够证明同意是自愿且具体的
HELP/STOP 和其他命令
必填关键字:
- STOP/ALTO(西班牙语对应)用于选择退出
- BAJA(取消订阅)
- AYUDA/HELP 寻求帮助
- 所有命令必须支持西班牙语和英语
- 响应信息必须与收到的命令使用相同的语言
请勿致电/请勿打扰登记
西班牙设有 Lista Robinson,这是一个全国性的营销传播退出登记处。最佳做法包括:
- 定期检查 Lista Robinson 数据库
- 维护内部抑制名单
- 立即处理退出请求(24 小时内)
- 在活动启动前主动筛选注册号码
时区敏感度
西班牙对商业短信有特定的时间限制:
- 允许时间:上午 8:00 至晚上 9:00(当地时间)
- 时区:考虑加那利群岛(比西班牙大陆晚 1 小时)
- 例外:紧急或关键服务消息
- 节假日注意事项:避免在国家和地方节假日期间发送
西班牙的电话号码选项和短信发件人类型
字母数字发件人 ID
运营商网络能力:全面支持所有主要网络 注册要求:无需预先注册,但支持动态使用 发件人 ID 保存:是的,发件人 ID 按规定保存 特殊注意事项:自 2024 年 6 月 6 日起,受 MEF 保护的发件人 ID 需要授权书 (LOA)
长代码
国内与国际:均支持
- 国内:仅限于国内短信
- 国际:全面支持跨境信息发送 者ID保存:是,所有主要运营商均保留 配置时间:立即至24小时 使用案例:
- 国内:客户服务、通知
- 国际:全球通信,漫游支持
短代码
支持:在西班牙全面可用 配置时间:12-14 周 用例:
- 大规模营销活动
- 双重身份验证
- 客户参与计划
- 优质费率服务
受限制的短信内容、行业和用例
禁止内容:
- 大麻相关内容(严格禁止)
- 未经适当许可进行赌博
- 成人内容
- 未经授权的金融服务
- 未进行适当披露的政治信息
内容过滤
运营商过滤规则:
- 限制行业相关关键词
- 来自可疑域的 URL
- 高频重复信息
- 未提供适当退订信息的消息
避免过滤的最佳做法:
- 避免在敏感行业中使用 URL 缩短器
- 包含清晰的发件人身份信息
- 保持一致的发送模式
- 使用受监管行业认可的模板
在西班牙发送短信的最佳做法
信息传递策略
- 尽可能将消息控制在 160 个字符以内
- 包含明确的号召性用语
- 使用收件人姓名或相关数据进行个性化
- 保持一致的品牌声音
发送频率和时间
- 每位收件人每月最多可发送 2-4 条消息
- 尊重西班牙营业时间(9:00-14:00,16:00-19:00)
- 考虑午睡时间(14:00-16:00)
- 避开周日和国家法定节假日
本土化
- 默认为普通观众提供西班牙语
- 在相关地区提供加泰罗尼亚语、巴斯克语或加利西亚语选项
- 使用正确的西班牙语日期格式 (DD/MM/YYYY)
- 考虑区域文化敏感性
退出管理
- 24 小时内处理退出
- 维护集中退出数据库
- 通过最后一条消息确认退出
- 定期审核退出名单
测试和监控
- 在 Movistar、Vodafone 和 Orange 网络上进行测试
- 监控承运商的运送费率
- 按一天中的时间跟踪参与度指标
- 定期对消息内容进行 A/B 测试
西班牙的 SMS API 集成
Twilio
Twilio 提供了强大的 REST API,用于向西班牙发送短信。身份验证使用帐户 SID 和身份验证令牌。
import { Twilio } from 'twilio';
// Initialize client with environment variables
const client = new Twilio(
process.env.TWILIO_ACCOUNT_SID,
process.env.TWILIO_AUTH_TOKEN
);
async function sendSMSToSpain() {
try {
// Send message with Spanish number formatting
const message = await client.messages.create({
body: 'Hola! Este es un mensaje de prueba.',
from: '+34XXXXXXXXX', // Spanish sender number
to: '+34XXXXXXXXX', // Spanish recipient number
// Optional parameters for delivery tracking
statusCallback: 'https://your-callback-url.com/status'
});
console.log(`Message sent successfully! SID: ${message.sid}`);
} catch (error) {
console.error('Error sending message:', error);
}
}
辛奇
Sinch 提供了带有承载令牌认证的简单 REST API。
import axios from 'axios';
const SINCH_API_TOKEN = process.env.SINCH_API_TOKEN;
const SINCH_SERVICE_PLAN_ID = process.env.SINCH_SERVICE_PLAN_ID;
async function sendSinchSMS() {
try {
const response = await axios.post(
`https://sms.api.sinch.com/xms/v1/${SINCH_SERVICE_PLAN_ID}/batches`,
{
from: 'YourBrand', // Alphanumeric sender ID
to: ['+34XXXXXXXXX'],
body: 'Su mensaje de confirmación',
// Optional delivery report flag
delivery_report: 'summary'
},
{
headers: {
'Authorization': `Bearer ${SINCH_API_TOKEN}`,
'Content-Type': 'application/json'
}
}
);
console.log('Batch ID:', response.data.id);
} catch (error) {
console.error('Sinch API error:', error.response?.data);
}
}
信息鸟
MessageBird 提供功能丰富的 API,支持各种消息类型。
import messagebird from 'messagebird';
const client = messagebird(process.env.MESSAGEBIRD_API_KEY);
function sendMessageBirdSMS() {
const params = {
originator: 'CompanyName',
recipients: ['+34XXXXXXXXX'],
body: 'Mensaje importante de su empresa',
// Spanish language indicator
language: 'es',
// Enable delivery status updates
reportUrl: 'https://your-webhook.com/delivery-status'
};
client.messages.create(params, (err, response) => {
if (err) {
console.error('MessageBird error:', err);
return;
}
console.log('Message sent successfully:', response.id);
});
}
普利沃
Plivo 提供强大的 API,支持大容量消息传递。
import plivo from 'plivo';
const client = new plivo.Client(
process.env.PLIVO_AUTH_ID,
process.env.PLIVO_AUTH_TOKEN
);
async function sendPlivoSMS() {
try {
const response = await client.messages.create({
src: '+34XXXXXXXXX', // Your Plivo Spanish number
dst: '+34XXXXXXXXX', // Destination Spanish number
text: 'Su mensaje de texto',
// Optional URL tracking
url: 'https://your-callback-url.com/status',
// Optional message type
type: 'sms'
});
console.log('Message UUID:', response.messageUuid);
} catch (error) {
console.error('Plivo error:', error);
}
}
API 速率限制和吞吐量
- 标准限制:
- Twilio:每秒 100 条消息
- Sinch:50 条消息/秒
- MessageBird:每秒 60 条消息
- Plivo:每秒 80 条消息
吞吐量管理策略:
- 实现队列系统(Redis/RabbitMQ)
- 使用批处理 API 进行批量发送
- 实施指数退避重试
- 监控速率限制标头
错误处理和报告
- 实施全面日志记录
- 监控送货回执
- 跟踪常见错误代码:
- 21614:数字格式无效
- 30003:无法到达目的地
- 30007:载波滤波
- 存储消息状态更新
- 设置故障阈值警报
回顾和其他资源
关键要点:
- 合规第一:始终获得明确同意并尊重选择退出
- 时间问题:尊重西班牙的营业时间和文化考虑
- 语言支持:提供西班牙语和地区语言的信息
- 技术实现:使用可靠的 API 并进行适当的错误处理
- 监控:跟踪交付率和参与度指标。