Опис проєкту
ПерекладНайважливіше для мене — часткове списання при оформленні замовлення. Коли покупець вводить код карти в кошик, система повинна застосувати доступний залишок до суми замовлення, покрити його частково або повністю, залишити залишок до сплати звичайними способами і зберегти невитрачений залишок на карті на майбутнє. Можливість використовувати кілька карт в одному замовленні була б плюсом. Кожна зміна залишку повинна фіксуватися як незмінна запис журналу, щоб я завжди міг відновити історію: суму випуску, кожне списання, повернення і ручні коригування. Коди повинні генеруватися так, щоб їх було важко підібрати, випускатися однократно та безпечно відправлятися листом. Правила терміну дії повинні налаштовуватися, а весь процес обов'язаний витримувати подвійні клікання та гонки без ризику списати карту двічі.
Адмін-панель повинна дозволяти моїй команді випускати карти вручну, знаходити будь-яку карту по коду або покупцю, бачити повну історію залишку, замороджувати або анулювати карту, повторно відправляти лист, коригувати залишок з указанням причини і вивантажувати звіти. Прошу дотримуватися візуального стилю і прийнятих у магазині угод за кодом, писати чистий і задокументований код і покрити логіку залишку і списань тестами перед здачею.
— Покупка: вибір суми, шаблону і тексту привітання; оплата через існуючий шлюз
— Доставка отримувачу по email з унікальним, важкопідбіркою кодом
— Залишок по кожній карті з незмінним журналом операцій
— Часткове списання при оформленні, залишок оплачується звично; невитрачене зберігається
— Налаштовуваний термін дії та статуси (активна, заморожена, анульована, використана)
— Адмін-панель: випуск, пошук, коригування, заморозка, повторна відправка, експорт звітів
— Захист від гонок; тести логіки залишку і списань