telkit

Use case

SMS and email for online shops

Customers want to know the order arrived, when the parcel ships and when it can be collected. The shop wants the messages to come from its own name and domain, and the replies to land where someone sees them.

Last reviewed 14 October 2026

The problem

The shop platform may send email, but SMS, letters and customer replies are often three other services, with three contracts and three places to look when something goes wrong.

With telkit your system sends email from your domain, SMS from your name and a letter when a customer does not pay. Statuses and replies come back as events, and every message is listed with its price in the dashboard.

The services that do the job

Three channels, one key and one balance.
  • Email from your domainVerify the domain with the DNS records you are given, and send order confirmations from an approved sender. Templates with fields such as {{ordrenummer}} (order number) are made in the dashboard.
  • SMS from the shop's nameShipping and pickup notices from an approved sender name, or from a number if the customer should be able to reply.
  • Campaigns with STOPPSend an offer to the customers who said yes. When someone replies STOPP, the profile sends no more SMS to that number, and you get sms.optedOut.
  • Payment reminders as lettersSend the reminder as a PDF. It goes to Digipost when the customer has it, and on paper otherwise. You see both prices before you send.

Example flows

Three messages most online shops send.

Order and shipping

  1. The customer pays. The shop sends the order confirmation by email with the template and the order number.
  2. When the parcel is handed to the carrier, an SMS with the tracking link goes out.
  3. email.status and sms.status say whether the messages arrived.

Click and collect

  1. The order is picked. The shop system sends a pickup notice by SMS.
  2. From a number, the customer can reply «coming tomorrow». The reply lands in a thread in the dashboard.
  3. The shop answers in the same thread, and the customer sees one conversation.

An unpaid invoice

  1. The invoice is unpaid after the due date. The system makes the reminder as a PDF.
  2. telkit delivers it to Digipost if the customer has it, and prints and posts it otherwise.
  3. letter.status says how it was delivered: digitally or on paper.

What the request looks like

The order confirmation from a template, the SMS when the order is ready, and the event when a customer replies STOPP.
POST /v1/emailbash
curl https://api.telkit.no/v1/email \  -H "Authorization: Bearer $TELKIT_API_KEY" \  -H "Idempotency-Key: ordre-10482-bekreftelse" \  -H "Content-Type: application/json" \  -d '{    "profile": "nettbutikken",    "to": "kari@eksempel.no",    "templateId": "…",    "variables": {      "navn": "Kari",      "ordrenummer": "10482"    }  }'
The template is an email template of the profile. If a variable the template needs is missing, the API refuses the send.
POST /v1/smsbash
curl https://api.telkit.no/v1/sms \  -H "Authorization: Bearer $TELKIT_API_KEY" \  -H "Idempotency-Key: ordre-10482-klar" \  -H "Content-Type: application/json" \  -d '{    "profile": "nettbutikken",    "to": "+4791234567",    "text": "Hei Kari! Ordre 10482 er klar til henting i butikken i Storgata. Hilsen Nettbutikken",    "sender": {      "kind": "text",      "name": "Nettbutikk"    }  }'
A sender name is 3 to 11 characters without æ, ø and å, and we approve it before its first use.
Webhook: sms.optedOutjson
{  "object": "event",  "id": "evt_…",  "type": "sms.optedOut",  "api_version": "1",  "occurred_at": "2026-10-14T08:00:03Z",  "data": {    "eventId": "evt_…",    "mode": "live",    "profileId": "…",    "phone": "+4791234567",    "sourceMessageId": "…"  }}
Remove the number from your marketing list. telkit already stops SMS from the profile to the number.

What to watch out for

An order confirmation and an offer are two different messages in Norwegian law.
  • Section 15 of the Norwegian Marketing Control Act requires prior consent before you send marketing by SMS or email to private individuals. Messages about an order the customer placed are not marketing.
  • If the customer bought from you and gave you the address at the purchase, you may market similar products of your own without new consent. The customer must then be able to opt out easily and free of charge, both when the address was collected and in every message.
  • Say in the offer that the recipient can reply STOPP. telkit takes the word and stops further SMS from the profile.
  • Set up your domain before the first email. Without verified DNS records, no email goes from the domain.

What it costs

Every message is drawn from the balance. The prices below are per message or per SMS unit.
Email sent
NOK 0.01
Email received
NOK 0.01
SMS sent, per unit
NOK 0.75
SMS received, per unit
NOK 0.75
Letter delivered to Digipost
NOK 5
Paper letter within Norway
NOK 19

3,000 orders a month with one email and one one-unit SMS each cost NOK 2,280 excl. VAT.

Prices exclude VAT.

Questions from online shops

Can the email come from my own domain?

Yes. You add the DNS records we give you, and once the domain is verified you send from an approved sender on it.

Can the customer reply to the SMS?

Yes, when you send from the reply number or a dedicated number. Nobody can reply to a sender name.

What happens when a customer replies STOPP?

The profile can no longer text the number, and you get the sms.optedOut event. If the customer replies START, you can send again.

Can I reach customers abroad?

SMS goes to Norwegian mobile numbers. Email can be sent to addresses abroad. telkit sends letters only to Norwegian addresses.

Do I have to use the API?

No. You can send campaigns and single messages from the dashboard. The API is for when the shop should send on its own.

Read more about the services

Send your first order confirmation

Register your company, verify your domain and send an order confirmation to yourself.