telkit SMS

Norsk SMS, bygd for utviklere

Send og motta SMS i Norge bak ett REST-API. Alfanumeriske avsender-ID-er uten registrering, toveis-dialog, leveringsrapporter — og gjennomsiktig pris per segment i EUR. Vi fakturerer aldri SMS operatøren filtrerte bort.

Send, motta, bekreft

Send, motta og spor hver melding

Ett endepunkt for utgående A2P-SMS, ett for innkommende. Hver melding går gjennom en tydelig statusmaskin, og hver overgang sendes som en signert hendelse til webhooken din — ingen polling.

Utgående A2P

Engangskoder, varsler og bekreftelser. Idempotency-Key gjør retry trygt, og segmenter + koding beregnes på serveren og returneres i svaret.

Innkommende & toveis

Innkommende meldinger til et telkit-nummer blir til en message.received-hendelse med from, to og body. Svar fra samme nummer for ekte toveis-dialog.

Leveringsrapporter

queued → sent → delivered, eller failed / undelivered med en error_code. Hver overgang er en webhook- og SSE-hendelse.

send-sms.tsts
import { Telkit } from "@telkit/sdk"; const telkit = new Telkit({ apiKey: process.env.TELKIT_API_KEY }); // Alfanumerisk avsender-ID — ingen forhåndsregistrering i Norge.const message = await telkit.messages.create({  from: "Telkit",  to: "+4791234567",  body: "Hei! Koden din er 4821. Gyldig i 5 minutter.",  idempotencyKey: "otp-4821",}); message.id;        // "msg_8Kp2Qf9aR"message.status;    // "queued"message.segments;  // 1message.encoding;  // "GSM-7"
Send en SMS med den typesikre SDK-en.
webhook.jsonjson
// Leveringsrapport — signert med Ed25519. Verifiser før du stoler.{  "type": "message.delivered",  "data": { "id": "msg_8Kp2Qf9aR", "status": "delivered", "billed": true }} // Filtrert av operatøren → aldri fakturert.{  "type": "message.undelivered",  "data": { "id": "msg_9Lr3Tw0bS", "status": "undelivered",            "error_code": "carrier_filtered", "billed": false }}
Leveringsrapporter kommer som signerte hendelser.
Norge-native

Ingen amerikansk byråkrati

Norge regulerer SMS vennligere enn USA. Vi har bygd telkit rundt reglene som faktisk gjelder her — så du er live på minutter, ikke uker.

Alfanumeriske avsender-ID-er

Ingen forhåndsregistrering i Norge: opptil 11 tegn (A–Z, 0–9), bevart slik du sendte dem. Dynamisk bruk er tillatt — materielt raskere enn amerikansk 10DLC.

URL-tillatelsesliste, håndtert

Telenor, Telia og Ice filtrerer SMS med lenker. Vi gir deg en avsender-ID- og URL-tillatelsesliste; meldinger med ikke-godkjente lenker avvises ved innsending (422) — aldri belastet, aldri stille forkastet.

Ingen kortkoder å jage

Norge har ingen kortkoder eller nasjonale langkoder. Vi ruter via internasjonale langkoder, og throughput-grenser eksponeres i headere + 429 så du kan dosere store utsendinger.

Framtidssikret: ECC beveger seg mot obligatoriske avsender-ID-registre. Vi bygger avsender-ID-administrasjon nå, så strengere regler blir en konfigurasjonsendring — ikke en omskriving.

Toveis & samtykke

Toveis-dialog, og STOPP håndtert ærlig

Ekte SMS er en samtale. telkit håndterer opt-out- og samtykke-mekanikken for deg — men eierskapet til samtykket blir hos deg. Vi sender vaktbøylene, ikke smutthullet.

  • Toveis-samtaler

    Innkommende svar dukker opp som message.received. Svar fra samme nummer og hold tråden — perfekt for bekreftelser, support og avtaler.

  • STOP / STOPP

    Vi oppdager opt-out-nøkkelord automatisk, registrerer fravalget, undertrykker videre sendinger (konfigurerbart) og sender message.opt_out så systemet ditt holder seg i synk.

  • Reservasjonsregisteret & §15

    Markedsføring krever opt-in (Markedsføringsloven §15 + Reservasjonsregisteret). Vi leverer vaktbøyler og en AUP; gambling- og lotteritrafikk blokkeres.

  • Stilletimer

    Unngå ikke-essensielle sendinger ~20:00–08:00. Vi hjelper deg å respektere stilletimene, så meldingene dine lander velkomment.

opt-out.jsonjson
// Innkommende «STOPP» → opt-out registreres og sendinger undertrykkes.{  "type": "message.received",  "data": { "from": "+4791234567", "to": "Telkit", "body": "STOPP" }} {  "type": "message.opt_out",  "data": { "number": "+4791234567", "scope": "sender:Telkit", "source": "keyword" }}
Et innkommende «STOPP» blir til en opt-out, automatisk.

Samtykke-eierskapet er ditt. telkit håndhever STOPP, stilletimer og tillatelseslister som standard — men du eier opt-in-en og bruken.

Pris

Gjennomsiktig pris per segment — i EUR

Du betaler per segment, alt-i-ett i EUR, uten plattformavgift. Innkommende prises separat. Og det viktigste: vi fakturerer aldri en melding operatøren filtrerte bort.

SMS

Til Norge
0,04 €–0,06 € / segment
Innkommende
Låg / gratis
Lokalt nummer
1 €–2 € / mnd
KYC-pakke
Gratis

Anslag vist «fra» — se hele prislisten for detaljer.

Segmenter og koding, forklart

GSM-7 (standard tekst)160 tegn · 153 sammenkjedet
UCS-2 (emoji / spesialtegn)70 tegn · 67 sammenkjedet

En ren tekstmelding bruker GSM-7-koding og får plass til 160 tegn. Ett tegn utenfor GSM-7 (for eksempel en emoji) bytter hele meldingen til UCS-2 med 70 tegn. Lengre meldinger deles i sammenkjedede segmenter, og hvert segment faktureres. Bruk pricing/preview for å se segmenter og pris før du sender.

Vi fakturerer aldri filtrert SMS

Der operatøren skiller filtrert eller hard-feilet fra levert, belaster vi ikke den meldingen. Årsaken ligger i error_code og i hendelsen — så du betaler kun for det som faktisk nådde fram.

Se full prisliste
Spørsmål

Vanlige spørsmål om SMS

Det utviklere som regel lurer på før de sender den første meldingen.

Klar til å sende din første SMS?

Få en API-nøkkel og send en melding på minutter. Gratis nivå, ingen kort kreves.