Under de senaste decennierna har SMS varit de obestridda ryggraden i digital kommunikation. Dess enkelhet och nära 100-procentiga räckvidd har alltid varit dess styrka. Men i takt med att användarnasförväntningar förändras, räcker ren text inte alltid till. Här kommer RCS (Rich Communication Services) in i bilden – en uppgradering som förvandlar meddelande-appen till en interaktiv plattform.
Men hur fungerar det tekniskt, och hur kan jag säkerställa att mitt budskap når ut på marknader som fortfarande inte rullat ut fullt stöd av RCS? Vi reder ut begreppen.
Vad är RCS och Universal Profile?
RCS är ofta beskrivet som ”SMS 2.0”,
men det är tekniskt sett en mer omfattande arkitektur. För att meddelanden ska
se likadana ut oavsett operatör eller telefonmodell, har branschorganisationen
GSMA tagit fram Universal Profile (UP).
- Universal Profile: En gemensam teknisk standard som säkerställer att funktioner som högupplösta bilder, läskvitton och gruppchatt fungerar sömlöst mellan olika nätverk.
- Status 2026: Medan RCS är den globala standarden, befinner sig marknaden fortfarande i en övergångsfas. I Sverige innebär det i praktiken att Android-enheter har fullt stöd för RCS, medan iPhone-användare i de svenska näten i dagsläget tar emot kommunikationen via SMS
A2P och MaaP: När företag pratar med kunder
Inom kommunikationsbranschen skiljer vi på privatpersoners chattande (P2P) och företagsmeddelanden (A2P – Application-to-Person). För RCS används begreppet MaaP (Messaging as a Platform).
Genom ett API som hanterar MaaP kan företag gå bortom bara text och använda:
- Rika Payloads: Istället för en enkel länk kan vi skicka komplexa JSON-strukturer som renderas som interaktiva karuseller eller knappar direkt i telefonens meddelande-app.
- Verifierad identitet: Till skillnad från SMS, där avsändaren ofta är ett dolt nummer eller ett namn (som kan kapas), erbjuder RCS en verifierad profil. Kunden ser företagets logotyp, varumärkesfärger och en verifieringsikon, vilket ökar både trygghet och engagemang.
Kan jag använda RCS redan idag?
Ja, absolut! De tekniska framstegen fortlöper med fler och fler operatörer som lägger till stöd för RCS världen över. När det kommer till svenska operatörer så finns redan idag fullständigt stöd för RCS till Android-enheter. I och med lanseringen av meddelandekryptering mellan Android och iOS-enheter i iOS version 26.5 för privatpersoner finns det också tydliga tecken på att världen är mogen för en ny modern meddelande-standard.
Hur når jag en mottagare vars telefon inte har stöd för RCS?
När du skickar ett meddelande via våra API:er kan du använda dig av endpointen för capability check, som i sin tur svara med en status som talar om ifall enheten du vill skicka till har stöd för RCS eller inte. Med hjälp av denna status kan du senare implementera en fallback som skickar SMS till de enheter som inte ännu har stöd för RCS-tekniken.
- Capability Check: Systemet gör en snabb förfrågan för att se om mottagarens telefon och operatör har en aktiv RCS-anslutning.
- Smart Routing: Om mottagaren har en aktiv RCS-profil (t.ex. en Android-användare i ett stöttat nät) levereras det interaktiva meddelandet med bilder och knappar.
- Fallback till SMS: Om mottagaren inte kan ta emot RCS (t.ex. en iPhone-användare i Sverige eller någon med tillfälligt dålig datatäckning) routas meddelandet om till vårt SMS API och skickas som ett vanligt textmeddelande. På så sätt bryts aldrig kommunikationskedjan.
Kodexempel: Skicka RCS med SMS Fallback
using System.Net.Http.Json;
var apiKey = "DIN_API_NYCKEL";
var rcsUrl = "https://api.ip1.net/v3";
var smsUrl = "https://api.ip1sms.com/v2";
using var client = new HttpClient();
client.DefaultRequestHeaders.Add("Authorization", $"Bearer {apiKey}");
async Task SendTransactionalMessage(string number, string text)
{
var recipients = new[] { number };
try
{
// 1. Capability Check för det specifika numret
var cap = await client.GetFromJsonAsync<CapResponse>($"{rcsUrl}/phones/{number}/capabilities");
if (cap?.capable == true)
{
// 2. Skicka transaktionell RCS
var response = await client.PostAsJsonAsync($"{rcsUrl}/bundles", new
{
brand = "min-butik-ab",
agent = "DIN_AGENTS_ID",
content = text,
recipients = recipients
});
if (response.IsSuccessStatusCode) return;
}
}
catch
{
// Logga felet internt men fortsätt till SMS-fallback
}
// 3. Fallback till SMS
await client.PostAsJsonAsync($"{smsUrl}/messages", new
{
sender = "Verifiera",
body = text,
recipients = recipients
});
}
public record CapResponse(bool capable);
// Exempel på anrop:
await SendTransactionalMessage("46700123456", "Din kod är: 123456. Giltig i 10 minuter.");
using System.Net.Http.Json;
var apiKey = "DIN_API_NYCKEL";
var rcsUrl = "https://api.ip1.net/v3";
var smsUrl = "https://api.ip1sms.com/v2";
using var client = new HttpClient();
client.DefaultRequestHeaders.Add("Authorization", $"Bearer {apiKey}");
async Task SendSmartMessages(string[] recipients, string text)
{
var rcsRecipients = new List<string>();
var smsRecipients = new List<string>();
// 1. Loopa igenom och sortera mottagarna baserat på capability
foreach (var number in recipients)
{
try
{
var cap = await client.GetFromJsonAsync<CapResponse>($"{rcsUrl}/phones/{number}/capabilities");
if (cap?.capable == true)
rcsRecipients.Add(number);
else
smsRecipients.Add(number);
}
catch
{
smsRecipients.Add(number);
}
}
// 2. Skicka RCS till alla som kan ta emot
if (rcsRecipients.Any())
{
var rcsResponse = await client.PostAsJsonAsync($"{rcsUrl}/bundles", new
{
brand = "min-butik-ab",
agent = "DIN_AGENTS_ID",
content = text,
recipients = rcsRecipients.ToArray()
});
}
// 3. Skicka SMS till resten
if (smsRecipients.Any())
{
var smsResponse = await client.PostAsJsonAsync($"{smsUrl}/messages", new
{
sender = "MittForetag",
body = text,
recipients = smsRecipients.ToArray()
});
}
}
public record CapResponse(bool capable);
var myNumbers = new[] { "46700123456", "46700987654", "456189040623" };
await SendSmartMessages(myNumbers, "Hej! Detta är ett smart meddelande.");
Sammanfattning
Att framtidssäkra sin kommunikation handlar om att förbereda sig för den interaktiva framtiden utan att förlora dagens räckvidd. Genom att förstå samspelet mellan RCS-teknikens möjligheter och använda sig av SMS-protokollets räckvidd till dess att fullt stöd på marknaden finns, kan företag bygga en stabil och modern kunddialog som fungerar för alla – oavsett vilken telefon de har i fickan.
Vill du veta mer om hur din verksamhet kan dra nytta av MaaP-arkitekturen? Genom att börja bygga med RCS-stöd idag är du redo när marknaden når full mognad, samtidigt som en fallback-logik garanterar att dina budskap alltid når fram här och nu.