# Rozliczanie SMS

Sekcja ta zawiera szczegółowe informacje dotyczące sposobu naliczania kosztów wiadomości SMS. Koszt wysyłki jest ściśle powiązany z długością wiadomości oraz rodzajem użytych w niej znaków.

{% hint style="info" %}
**Ważne:** Poniższe zasady dotyczą wszystkich wiadomości SMS wysyłanych przez platformę – zarówno tych tworzonych ręcznie w kreatorze kampanii, jak i tych wysyłanych automatycznie poprzez API.
{% endhint %}

## Zasady naliczania wiadomości SMS

Długość pojedynczego SMS-a zależy od standardu kodowania, który system dobiera automatycznie na podstawie treści wiadomości. Choć poniższe limity są globalnym standardem, w rzadkich przypadkach mogą występować minimalne różnice zależne od operatora komórkowego odbiorcy.

### Wiadomość ze znakami standardowymi (kodowanie GSM-7)

Twoja wiadomość jest kodowana w standardzie GSM-7, jeśli zawiera wyłącznie znaki z podstawowego alfabetu łacińskiego (A-Z, 0-9) oraz podstawowe znaki interpunkcyjne.

* **Limit dla 1 SMS-a:** **160** znaków.
* **Wiadomości łączone (dłuższe niż 160 znaków):** Jeśli przekroczysz limit, system musi połączyć wiadomości w jedną całość. Odbywa się to kosztem kilku znaków technicznych (nagłówek UDH). W takim przypadku każda część wiadomości mieści 153 znaki.

#### **Tabela znaków GSM-7 (liczone jako 1 znak)**

Poniższe znaki są bezpieczne i zajmują tylko 1 znak w limicie wiadomości.

| Znak    | Opis / Nazwa       | Znak       | Opis / Nazwa    | Znak    | Opis / Nazwa     |
| ------- | ------------------ | ---------- | --------------- | ------- | ---------------- |
| @       | Małpa              | SP         | Spacja          | !       | Wykrzyknik       |
| "       | Cudzysłów          | #          | Hash/Kratka     | %       | Procent          |
| &       | Ampersand          |            | Apostrof        | (       | Nawias otw.      |
| )       | Nawias zam.        | \*\*\*\*\* | Gwiazdka        | +       | Plus             |
| ,       | Przecinek          | -          | Myślnik         | .       | Kropka           |
| /       | Slash              | :          | Dwukropek       | ;       | Średnik          |
| <       | Mniej niż          | =          | Równa się       | >       | Więcej niż       |
| ?       | Pytajnik           | \_         | Podkreślnik     | ¡       | Odwr. wykrzyknik |
| £       | Funt               | $          | Dolar           | ¥       | Jen              |
| §       | Paragraf           | ¿          | Odwr. pytajnik  | ¤       | Waluta           |
| **A-Z** | **Wielkie litery** | **a-z**    | **Małe litery** | **0-9** | **Cyfry**        |

**Wielkie litery greckie i niektóre symbole specjalne (GSM-7):** Poniższe znaki również należą do podstawowego zestawu GSM-7 i są liczone jako 1 znak, choć ich wyświetlanie zależy od urządzenia odbiorcy:

`Δ` `Φ` `Γ` `Λ` `Ω` `Π` `Ψ` `Σ` `Θ` `Ξ` `Ä` `ä` `Ö` `ö` `Ñ` `ñ` `Ü` `ü` `à` `ò` `ù` `å` `Å` `è` `é` `É` `ì` `ç` `Ø` `ø` `Æ` `æ` `ß`

#### **Tabela znaków rozszerzonych (GSM-7 Extension - liczone jako 2 znaki)**

{% hint style="info" %}
**Uwaga!** Poniższe znaki, mimo że nie zmieniają kodowania na Unicode, zajmują 2 bajty. Oznacza to, że każdy z nich zabiera 2 znaki z dostępnego limitu (160) .
{% endhint %}

| Znak | Nazwa znaku                   | Liczba znaków w SMS |
| ---- | ----------------------------- | ------------------- |
| ^    | Daszek (caret)                | 2                   |
| {    | Nawias klamrowy otwierający   | 2                   |
| }    | Nawias klamrowy zamykający    | 2                   |
| \\   | Backslash (ukośnik wsteczny)  | 2                   |
| \[   | Nawias kwadratowy otwierający | 2                   |
| \~   | Tylda                         | 2                   |
| ]    | Nawias kwadratowy zamykający  | 2                   |
| \|   | Pionowa kreska (pipe)         | 2                   |
| €    | Symbol Euro                   | 2                   |

#### Naliczanie SMS-ów dla znaków GSM-7

| Liczba znaków | Liczba SMS-ów |
| ------------- | ------------- |
| 1 - 160       | 1             |
| 161 - 306     | 2             |
| 307 - 459     | 3             |
| 460 - 612     | 4             |
| 613 - 765     | 5             |
| 766 - 918     | 6             |
| 919 - 1071    | 7             |
| 1072 - 1224   | 8             |
| 1225 - 1377   | 9             |

### Wiadomość ze znakami specjalnymi (kodowanie Unicode)

Użycie w treści choćby jednego znaku, który nie znajduje się w powyższych tabelach (np. polskiego znaku diakrytycznego lub emoji), powoduje automatyczną zmianę kodowania całej wiadomości na Unicode (UCS-2). Zmienia to drastycznie limit znaków.

**Przykłady znaków zmieniających kodowanie na Unicode:**

* Polskie znaki: `ą`, `ć`, `ę`, `ł`, `ń`, `ó`, `ś`, `ź`, `ż`.
* Języki Środkowoeuropejskie: czeskie/słowackie (`č`, `š`, `ž`, `ř`), węgierskie "długie" umlauty (`ő`, `ű`), rumuńskie (`ș`, `ț`).
* Pułapki w językach zachodnich: francuskie "daszki" (`â`, `ê`, `î`), hiszpańskie/portugalskie akcenty (`á`, `í`, `ó`, `ú`, `ã`). (Pamiętaj: znaki takie jak é, è, ñ, ç są bezpieczne i nie zmieniają kodowania).
* Inne alfabety: Cyrylica (np. `Д`, `ж`), Hebrajski (np. `ש`, `ל`), Arabski (np. `م`, `ل`).
* Emoji: np. 🙂, 🔥, ❤️, 👍.

**Limity dla Unicode:**

* **Limit dla 1 SMS:** 70 znaków.
* **Wiadomości łączone (powyżej 70 znaków):** Każda część wiadomości łączonej mieści 67 znaków.

#### Naliczanie SMS-ów dla znaków Unicode

| Liczba znaków | Liczba SMS-ów |
| ------------- | ------------- |
| 1 - 70        | 1             |
| 71 - 134      | 2             |
| 135 - 201     | 3             |
| 202 - 268     | 4             |
| 269 - 335     | 5             |
| 336 - 402     | 6             |
| 403 - 469     | 7             |
| 470 - 536     | 8             |
| 537 - 603     | 9             |

{% hint style="info" %}

#### Ważne informacje o personalizacji

Jeśli używasz dynamicznych parametrów (np. `{{imie}}` w kreatorze lub zmiennych w API), ostateczna długość SMS-a może być inna dla każdego odbiorcy.

* Przykład: Załóżmy, że Twój szablon wiadomości (Unicode) ma **65 znaków**.
  * Dla imienia "Anna" (4 znaki) – wiadomość ma łącznie **69 znaków**. Mieści się w limicie 70. -> Koszt: **1 SMS**.
  * Dla imienia "Katarzyna" (9 znaków) – wiadomość ma łącznie **74 znaki**. Przekracza limit 70. -> **Koszt: 2 SMS**.

**Dobra praktyka:** Planując budżet kampanii, zawsze uwzględniaj margines znaków na najdłuższe dane z Twojej bazy (np. długie nazwiska czy nazwy miast), aby uniknąć niespodziewanego podwojenia kosztów wysyłki.

Zawsze sprawdzaj też licznik znaków w edytorze kampanii. Nasz system na bieżąco informuje, z ilu części będzie składał się Twój SMS.
{% endhint %}
