Open jakubsrnka opened 1 month ago
...
pravdepodobne mate zmatek v nazvoslovi ale kdyz uplne odstranite tabulku clients tak to teprve zacne davat smysl (ale vztahy budou porad spatne), tj. jak bych to videl ja:
NEJPRVE
A PAK
TO ZNAMENA
Upravil jsem Úvod
a přidal jsem Popis stakeholderů a názvosloví
.
Rozdíl mezi normálním QR kódem a QR kódem pro okamžitou platbu je příznak pro okamžitou QR platbu, vizte upravený Úvod
.
Do DB schámatu jsem přidal tabulku users, kam patří všichni admin
a client
entity (aby mohla kavárna mít třeba dva managery, kteří spravují oba dva tu stejnou kavárnu). Zároveň toto zjednodušuje přístup a kódování adminů, kteří mají přístup ke všem klientům.
Doufám, že to takto dává větší smysl.
srnj01 - Zadávací dokumentace
Úvod
Tato webová aplikace slouží pro podniky, které nechtějí přijímat platby kartou, ale chtějí mít i možnost bezhotovostní platby ve svých pobočkách. Využívá funkce českého internetového bankovnictví a konkrétně funkce
okamžitá platba
v podáníQR kódů
.Momentálně je na trhu pro generování QR kódů prakticky jen služba
qr-platba.cz
, která v tuto chvíli nepodporuje generování QR kódu s okamžitou platbou. V dokumentaci od České bankovní asociace možnost příznaku pro okamžitou platbu existuje, ale v aplikaci odqr-platba.cz
není možnost využití tohoto příznaku, tudíž součástí této aplikace je i vlastní generátorQR kódů
dle specifikace ČBA.Popis stakeholderů a názvosloví
Jelikož v aplikaci figurují stakeholdeři jiní, než v běžných aplikacích, je potřeba popis jednotlivých rolí:
Popis základních funkcí
Jak bude fungovat platba?
Cílem aplikace je hlavně jednoduchost rozhraní pro prodejce a jejich generování platebního QR kódu. Jednoduchý formulář, který dovolí několik možností pro generování:
Po vygenerování QR kódu má prodejce možnost platbu zrušit kliknutím na tlačítko (tím se v systému zaznamená jako zrušená, ale její variabilní symbol znovu již nebude pro stejné číslo účtu k dispozici), nebo počká, než kupující QR kód naskenuje svým internetovým bankovnictvím, platbu pošle a v aplikaci prodejce se ukáže rovnou platba jako zaplacená (tato výměna by měla za normálních okolností trvat do 30 sekund). Aplikace má propojení na FIO banku, momentálně prakticky jedinou banku v ČR, která poskytuje dobré API.
Celý tento interface je možný po otevření odkazu s tajným hashem, který si může prodejce uložit například na domovskou obrazovku nebo do záložek na svém mobilním telefonu, aby měl rozhraní vždy k dispozici.
Admin pro klienty
Každý klient si může otevřít svůj vlastní admin panel, díky kterému může spravovat odkazy pro své prodejce (například pobočky, ale klidně i pro jednotlivé zaměstnance), čísla účtů a má přehled o přijatých platbách na svůj účet a celkový poplatek (ve výši 0,5 % přijatých plateb).
V admin panelu je možné vytvořit propojení s FIO bankou, kam má možnost přidat až 15 API klíčů pro každý účet (FIO banka limituje svůj přístup na jeden za 30 sekund pro každý API token, takže každým dalším se zrychlí prodejní proces).
Do admin panelu je možný lokální login a OAuth.
Admin panel na správu klientů
Admin panel pro správce samotné aplikace. Možnosti vypsání klientů a jejich celkových poplatků.
Architektura
Stránky
Diagramy
Usecase diagram
Procesní diagram (Část pro prodejce)
Sekvenční diagram (Admin pro klienty)
Databáze
Zdroje
https://cbaonline.cz/format-pro-sdileni-platebnich-udaju-v-czk-qr-kody
https://qr-platba.cz/pro-vyvojare/restful-api/