Fintech · Płatności
Platforma płatnicza dla sprzedawców
Platforma płatności online dla sprzedawców. Współtworzyłem od podstaw panel sprzedawcy, ekrany dostawców płatności i moduł wykrywania podejrzanych płatności.
- Branża
- Płatności online (fintech)
- Okres
- 09.2023 – 12.2025
- Rola
- Fullstack Engineer, w zespole
- Stack
- TypeScript · React · React Router · Mantine · Zod · Hasura/GraphQL · PostgreSQL · Node.js
Kontekst
Platforma pośredniczy w płatnościach online między sprzedawcami a dostawcami płatności. Sprzedawca podpina swój sklep, wybiera metody płatności i obsługuje sprzedaż z panelu. Pracowałem w zespole, który budował ten panel od podstaw, i przy części backendu.
Problem
Sprzedawca musi widzieć wszystko w jednym miejscu: zamówienia, zwroty, klientów, vouchery, subskrypcje i pieniądze w różnych walutach. Operator platformy musi z kolei wyłapywać nadużycia: tego samego klienta pod różnymi kontami, serie odrzuconych płatności, ryzykowne adresy IP.
Co zrobiłem
Panel sprzedawcy
Współtworzyłem panel od podstaw: zamówienia, zwroty i chargebacki, klienci, vouchery, marże walutowe i generator linków płatności. Dashboard z analityką sprzedaży stoi na widokach SQL, więc liczby liczy baza, nie przeglądarka. Filtry list zapisują się w ciasteczkach i zostają między wizytami.
Dostawcy i metody płatności
Uczestniczyłem w integracji platformy z API dostawców płatności. Po stronie panelu zbudowałem ekrany konfiguracji dostawców i metod płatności dla projektów sprzedawców, a w backendzie relacje i uprawnienia, które je obsługują.
Podejrzane płatności
Współtworzyłem moduł podejrzanych płatności. Widoki SQL łączą klientów po fingerprincie urządzenia, adresie IP i odrzuconych płatnościach. Ryzyko adresu IP ocenia zewnętrzna usługa (Scamalytics).
Subskrypcje
Rozwijałem moduł subskrypcji po stronie backendu i panelu: produkty w subskrypcji, zmiany cen z historią, generowanie pozycji zamówień.
Efekt
Sprzedawca obsługuje sprzedaż, zwroty i subskrypcje z jednego panelu. Operator dostaje gotową listę powiązanych kont i ryzykownych płatności zamiast szukać ich ręcznie w danych.