Przejdź do treści
Oplac

Bezpieczeństwo płatności internetowych i ochrona danych w Oplac

Bezpieczeństwo płatności internetowych w Oplac zaczyna się od architektury: dane kart wpisuje klient w formularzu licencjonowanego dostawcy płatności, zdarzenia mają podpis HMAC, klucze API mają zakres, a dostęp do panelu chronią 2FA, role, SSO SAML i log audytu.

Czytaj dokumentację

Kto odpowiada za które zabezpieczenie

Bezpieczeństwo płatności to kilka warstw, a każdą z nich zabezpiecza ktoś inny. Oplac jest oprogramowaniem, a nie instytucją płatniczą, więc nie przyjmuje ani nie przechowuje środków. Przepływ opisujemy szczegółowo na stronie jak działa Oplac.

Dane kart i autoryzacja

Kto zabezpiecza
dostawca płatności
Jak
formularz dostawcy, wymogi PCI DSS, silne uwierzytelnianie klienta

Środki klientów

Kto zabezpiecza
dostawca płatności
Jak
nadzór KNF albo organu nadzoru w UE

Integracja i zdarzenia

Kto zabezpiecza
Oplac
Jak
podpisy HMAC, idempotencja, TLS

Dostęp do panelu

Kto zabezpiecza
Oplac i Twoja firma
Jak
2FA, role, SSO SAML, log audytu

Klucze API na Twoich serwerach

Kto zabezpiecza
Twoja firma
Jak
przechowywanie poza repozytorium kodu, rotacja

Dane kart w formularzu dostawcy płatności

Na stronie płatności Oplac pole karty pochodzi od licencjonowanego dostawcy płatności: jako osadzone pola formularza (hosted fields) albo jako przekierowanie na stronę dostawcy. Numer karty, data ważności i kod CVC trafiają bezpośrednio do dostawcy, a Oplac dostaje wyłącznie token i ostatnie cyfry karty do wyświetlenia w panelu. Dzięki temu dane kart nie trafiają ani na Twoje serwery, ani na serwery Oplac. Licencjonowani dostawcy płatności podlegają wymogom standardu PCI DSS, a płatności kartą w Europejskim Obszarze Gospodarczym wymagają silnego uwierzytelniania klienta (SCA) zgodnie z dyrektywą PSD2, na przykład przez 3D Secure albo potwierdzenie w aplikacji banku.

Podpisy webhooków HMAC

Każde zdarzenie, które Oplac wysyła do Twojego systemu, ma nagłówek z podpisem HMAC SHA256 wyliczonym z treści i znacznika czasu. Twój serwer liczy podpis sekretem webhooka i odrzuca zdarzenie, którego podpis się nie zgadza albo którego znacznik czasu jest starszy niż ustawione okno. Chroni to przed podszyciem się pod Oplac i przed powtórzeniem starego zdarzenia. Gotowy kod weryfikacji w PHP, Node i Pythonie oraz format nagłówka opisuje dokumentacja API.

Klucz idempotencji w żądaniach do API sprawia, że ponowione żądanie nie tworzy drugiej płatności ani drugiego zwrotu. Szerzej o ponowieniach i idempotencji piszemy w artykule webhooki płatności.

PHP
$podpis = hash_hmac('sha256', $znacznikCzasu . '.' . $trescZdarzenia, $sekretWebhooka);
if (hash_equals($podpis, $podpisZNaglowka) === false) {
    http_response_code(400);
    exit;
}

Klucze API z zakresem

  • Osobne klucze testowe i produkcyjne, rozpoznawalne po przedrostku.
  • Zakres klucza: na przykład tylko tworzenie płatności, tylko odczyt raportów albo tylko zwroty.
  • Rotacja klucza z okresem przejściowym, w którym działają stary i nowy klucz.
  • Lista adresów IP, z których klucz może wywoływać API.
  • Natychmiastowe unieważnienie klucza w panelu, gdy podejrzewasz wyciek.

Dostęp do panelu z 2FA, rolami, SSO i logiem audytu

Logowanie do panelu Oplac chroni uwierzytelnianie dwuskładnikowe z aplikacją generującą kody. W planie Platforma i Enterprise dochodzą role i uprawnienia (na przykład osoba z finansów widzi raporty, ale nie widzi kluczy API), logowanie przez SSO SAML z dostawcą tożsamości Twojej firmy oraz log audytu. Log audytu zapisuje, kto i kiedy utworzył klucz, zmienił ustawienia webhooka, zlecił zwrot albo dodał osobę do zespołu. Wpisy z logu eksportujesz do własnego systemu monitoringu.

Szyfrowanie, RODO i umowa powierzenia

Cała komunikacja ze stroną płatności, panelem i API odbywa się wyłącznie przez HTTPS z TLS. Dane osobowe Twoich klientów, takie jak imię, adres e-mail i dane do faktury, Oplac przetwarza w Twoim imieniu jako podmiot przetwarzający w rozumieniu RODO, na podstawie umowy powierzenia przetwarzania danych. W planie Enterprise warunki umowy powierzenia i SLA są negocjowane. Zakres danych, które przechowujemy, ograniczamy do tego, czego potrzebują płatności, subskrypcje i faktury. Szczegóły są w polityce prywatności.

Ciągłość działania i awarie dostawcy

Awaria jednego dostawcy płatności nie musi zatrzymać sprzedaży. W planie Skala i wyższych smart routing przełącza płatności na innego podpiętego dostawcę, gdy pierwszy nie odpowiada. Plan Platforma obejmuje SLA 99,9 procent dostępności oprogramowania Oplac.

Ochrona przed nadużyciami i oszustwami płatniczymi

Ocenę ryzyka transakcji kartowych i BLIK prowadzi dostawca płatności, który widzi sygnały z całej swojej sieci. Oplac dokłada kontrole po stronie oprogramowania, które ustawiasz w panelu dla swojego konta.

  • Limity kwoty pojedynczej płatności i dziennej sumy dla linków do płatności.
  • Termin ważności linku, po którym link przestaje przyjmować płatności.
  • Blokada wielu nieudanych prób z jednej sesji na stronie płatności.
  • Powiadomienie e-mail o nietypowej serii zwrotów zleconych z jednego konta w panelu.

Zgłoszenie podatności

Jeśli znajdziesz lukę w bezpieczeństwie Oplac, napisz na [email protected] z opisem i krokami do odtworzenia. Nie testuj luk na danych innych kont i nie publikuj szczegółów przed naprawą.

Najczęstsze pytania

Wszystkie pytania

Czy Oplac ma dostęp do numerów kart moich klientów?

Nie, numery kart wpisuje klient w formularzu licencjonowanego dostawcy płatności. Oplac dostaje token i ostatnie cyfry karty.

Czy muszę spełniać wymogi PCI DSS, jeśli używam Oplac?

Zakres Twoich obowiązków zależy od tego, jak przyjmujesz karty i od wymagań Twojego dostawcy płatności. Gdy dane kart wpisuje klient w formularzu dostawcy, zakres po Twojej stronie jest mniejszy, bo numery kart nie trafiają na Twoje serwery. Szczegóły ustala z Tobą dostawca płatności.

Jak sprawdzić, że webhook naprawdę wysłał Oplac?

Policz podpis HMAC treści zdarzenia sekretem webhooka i porównaj go z podpisem z nagłówka. Zdarzenie bez zgodnego podpisu odrzuć.

Który plan ma SSO SAML i log audytu?

SSO SAML, role i uprawnienia oraz log audytu są w planie Platforma za 2 999 zł miesięcznie netto i w planie Enterprise. Uwierzytelnianie dwuskładnikowe jest w każdym planie.

Co się dzieje, gdy wycieknie klucz API?

Unieważniasz klucz w panelu, tworzysz nowy i podmieniasz go na serwerze. Log audytu pokazuje, kto utworzył klucz, a lista adresów IP ogranicza, skąd mógł być użyty.

Sprawdź podpisy webhooków w piaskownicy

Załóż konto, utwórz klucz testowy z zakresem i odbierz pierwsze podpisane zdarzenie.

Czytaj dokumentację

BLIK, karty, subskrypcje i KSeF w jednym panelu.