GH GambleHub

Swish Швеція: мобайл-платежі

1) Що таке Swish

Swish - національна шведська система мобільних A2A-платежів (оператор Getswish AB) з миттєвими переказами 24/7. Користувач підтверджує операції через BankID (SCA). Підтримуються сценарії P2P (на телефон), P2M для бізнесу (онлайн і офлайн), донати і виплати.

Ключові властивості:
  • Адресація за номером телефону (або мерчантським номером/QR), без IBAN в UX.
  • Миттєве зарахування на банківський рахунок одержувача; фінальність банківського переказу.
  • Низьке тертя: App2App/QR, підтвердження в BankID.
  • Широке покриття банків і висока популярність в роздробі/онлайні.

2) Ролі та продукти

Getswish (схема) - правила, каталоги і бренд.
Банки-учасники - випускають/підключають Swish, застосовують ліміти і антифрод.
PSP/еквайєри - підключають мерчантів (Swish Handel/Swish Företag), надають API/SDK, звіти, settlement.

Продукти:
  • Swish P2P - перекази між приватними особами.
  • Swish Företag - прийом платежів в офлайні (вітрина/POS).
  • Swish Handel (Swish for e-commerce) - онлайн-чекаут (QR/App2App/Link).
  • Swish Donations - короткі номери/аліаси для пожертвувань.
  • Swish Payouts/Disbursements - масові виплати (через банк/PSP).

3) Потоки платежів

3. 1 P2P (push)

1. Відправник вибирає контакт по телефону → вводить суму/повідомлення.
2. Підтверджує в BankID (Face/Touch/код).
3. Отримувач миттєво бачить кредит на рахунку і повідомлення в додатку.

3. 2 P2M: e-commerce (Swish Handel)

Два канали UX:
  • App2App/Deeplink: на чекауті відкриваємо додаток Swish/BankID → підтвердження → повернення в мерчанта.
  • QR per-order: генерується динамічний QR (сума, orderId, merchant reference); клієнт сканує камерою Swish → підтверджує в BankID.

3. 3 POS/офлайн (Företag)

Динамічний QR на касі або статичний Swish-номер (сума вручну).
Підтвердження в BankID; чек - у мерчанта і в додатку клієнта.

3. 4 Request-to-Рау/Інвойси

Мерчант відправляє платіжне посилання/запит (в email/SMS/месенджері); клієнт підтверджує в BankID.

3. 5 Виплати (Payouts)

Бізнес відправляє клієнту грошовий переказ на телефонний номер через банк/PSP; застосовується антифрод і ліміти на вихідні.

4) Статуси і таймінги

Типові статуси: `initiated` → `pending` → `success` / `failed` / `canceled` / `expired`.
Для веб-чекауту можливі затримки відповіді програми/BankID → тримайте таймаути і повтор статусу (polling + webhooks).
Settlement для мерчанта - банківський кредит в реальному часі/в найближчий операційний слот в залежності від банку/PSP (для звітності все одно робіть денний recon).

5) Ліміти та ризик-політики

Ліміти задають банки/PSP і вони розрізняються за профілем і каналом:
  • Per-transaction, per-day/24h; іноді weekly/monthly.
  • Новий одержувач/новий мерчант - знижені пороги/витримка.
  • Канальні ліміти: P2P, e-commerce (App2App/QR), POS, payouts.
  • Velocity/девайс/гео-правила і ризик-скоринг на стороні банку.
💡 Практика: не «вшивайте» жорсткі суми. Ведіть довідник лімітів по банках/каналах, оновлюйте; в UI показуйте ясну причину відмови («ліміт банку/каналу») і пропонуйте альтернативи (розбити чек, інший метод).

6) Економіка та комісії

Вартість для мерчанта зазвичай нижче класичного карткового MDR, але умови залежать від банку/PSP (фікс/низький відсоток, плата за QR/SDK/звіти).
Закладіть витрати на підтримку'pending/expired', диспути, recon і моніторинг SLA.

7) Повернення і диспути (ODR)

Chargeback як в картах відсутній. Повернення - окрема кредитова операція від мерчанта клієнту (підтримуються partial refunds).
Терміни - банківські (як правило T + 0/T + 1).
Диспути - за процедурами банку/PSP: зберігайте логи замовлення, підтвердження надання послуги/доставки, відповідність реквізитів клієнта.

8) Безпека та відповідність

SCA через BankID, device binding, перевірка сім/пристрою банком.
PII-мінімізація: зберігайте тільки необхідні атрибути (телефон/референси), шифруйте PII; доступ - за принципом найменших привілеїв.
Webhooks: HMAC/nonce, захист від replay, тайм-штампи і дедуп подій.
Відповідність PSD2/GDPR та локальним вимогам Finansinspektionen.

9) Інтеграція мерчанта

Варіанти

1. Hosted/Embedded від PSP - швидкий старт, App2App/QR з коробки, статуси і помилки.
2. Server-to-Server + App2App/QR - власний UX, динамічний QR per-order, глибока обробка помилок/повторів.
3. Pay-by-Link/Invoice - відправка посилання/запиту; зручно для сервісів і B2B.

Обов'язкові бекенд-компоненти:
  • API: 'createPayment','refund','requestToPay'( якщо доступно у PSP),'webhook','reconcile'.
  • Ідемпотентність ('orderId'+ ключ), експоненціальні ретраї, дедуп подій.
  • Recon: daily auto-recon + періодичний full-recon; зберігати UTR/банківську референцію.
  • SLA-дашборди: конверсія, «pending→success/expired», латентність до зарахування.

10) Звірка і звітність

Логіруйте: 'paymentId/transactionId'провайдера,'orderId', канал (App2App/QR/Link/POS), номер одержувача, статус, сума/валюта, timestamp, UTR.
З PSP/банку: реєстри зарахувань/повернень/корекції, пізні оновлення статусів.
Увімкніть алерти по розсинхронах і аномаліях (подвійні списання, підвислі'pending').

11) UX-патерни

Mobile-first: автопропозиція App2App; на десктопі - великий динамічний QR з таймером.
Прозорі помилки: ліміт, відмова BankID, таймаут; безпечний повтор і альтернатива (карта/SEPA/A2A іншого провайдера).
Квитанція: сума, час,'transactionId', канал, UTR, контакти саппорта.
Таймер дії для QR/запитів і сценарій відновлення після закінчення.

12) Рекуррент і мандати

Базовий Swish - one-off з SCA. Для підписок застосовують зв'язку: перший платіж Swish → e-mandate/Autogiro/Open-Banking PIS для подальших списань (ліміт/періодичність/повідомлення, екран управління мандатом).

13) Високоризикові вертикалі (включаючи iGaming)

Доступність каналів і ліміти залежать від політики банку/PSP і місцевого права.
Очікуйте знижені пороги, розширений KYC і можливі hold'и.
Плануйте альтернативні рейки (карти, SEPA, інші PIS) і smart-routing по ризику/банку/каналу.

14) Архітектура «Swish Gateway»

API-шар (REST/GraphQL) для каси та бекофісу.
Черги подій: статус-івенти → білінг/CRM/аналітика.
Security: vault для секретів, IP-allowlist PSP, сувора валідація redirect-URI, анти-replay токени.
Observability: конверсія по каналах (App2App/QR/POS/Link), частка'pending→expired', час до settlement/повернення.

15) Чек-лист виведення в прод

1. Підключіть PSP/банк зі Swish Handel/Företag; узгодьте тарифи/SLA і канали (App2App/QR/POS/Link).
2. Реалізуйте'createPayment'+ динамічний QR/App2App, екрани помилок/лімітів.
3. Підключіть webhooks, ідемпотентність, ретраї і дедуп подій.
4. Налаштуйте recon (daily + full), зберігання UTR/фін-референцій.
5. Увімкніть partial/full refunds і процедури ODR.
6. Запустіть SLA-дашборди і алерти по конверсії/латентності/підвислим статусам.
7. Проведіть e2e-тести з основними банками/пристроями, POS (якщо актуально).


Картка орієнтирів по лімітах

Реальні пороги задають банк/PSP і розрізняються за сценаріями.

Per-txn / 24h / 7d: зберігати в конфігу і перевіряти до запуску.
Нові одержувачі/мерчанти: знижені пороги/витримка.
Канали: окремі ліміти для P2P, e-commerce (App2App/QR), POS, payouts.
Velocity/ризик: антифрод банку може м'яко відхиляти/уповільнювати операції.


Резюме

Для онлайну - App2App + динамічний QR, для офлайну - QR/POS (Företag), для переказів - P2P на телефон.
Поділяйте онлайн-підтвердження та фінальний кредит у бізнес-логіці; будуйте навколо webhooks + recon і partial refunds.
Не фіксуйте суми: підтримуйте конфіги лімітів по банках/каналах з регулярною актуалізацією.
Для підписок - зв'язка перший Swish → мандат з прозорим управлінням і повідомленнями.

Contact

Зв’яжіться з нами

Звертайтеся з будь-яких питань або за підтримкою.Ми завжди готові допомогти!

Розпочати інтеграцію

Email — обов’язковий. Telegram або WhatsApp — за бажанням.

Ваше ім’я необов’язково
Email необов’язково
Тема необов’язково
Повідомлення необов’язково
Telegram необов’язково
@
Якщо ви вкажете Telegram — ми відповімо й там, додатково до Email.
WhatsApp необов’язково
Формат: +код країни та номер (наприклад, +380XXXXXXXXX).

Натискаючи кнопку, ви погоджуєтесь на обробку даних.