Skip to content

artemowkin/payment_system

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Проект на защиту практики, сделанный за 2 ночи

Это своего рода платежная система, доступная только в тестовом режиме. На 2 ночь разработки очень и очень малофункциональна. Зато в ней я заюзал метаклассы и в принципе интересненько так поигрался

Запуск

Чтобы запустить все это чудо надо зайти из под линукса (или wsl), куда установить make, docker compose plugin, ну сам docker

Когда вся эта петрушка установлена - можно запускать

.env файлик в репе чисто с тестовыми кредами, так что не прикопаться. На серваке у меня будут другие значения переменных окружения, а писать отдельную доку по переменным окружения после бессонной ночи и двух выпитых энергосов не особо то и хочется.

Так что вот команда для запуска:

$ make dev

Запустил, зашел на http://localhost:8080/ и кайфуешь

Дока по апихе (swagger) лежит на http://localhost:8080/api/docs/. Для любителей ReDoc - http://localhost:8080/api/redoc/. Можно потестить интеграцию платежки на http://localhost:8080/example_integration, но там надо в ExampleIntegrationView.vue менять public key, генерировать где-нибудь hmac для body. В общем - мне было впадлу писать бек под это все дело, а sha под JS в 3 часа ночи найти не особо получилось. Так шо от чистого сердца преподношу вам к ознакомлению кодовую базу (удачи!)

Ну и про алгоритм подписи при создании транзакции:

  1. Берем request body на создание транзакции (см. в доке к апихе)
  2. Сортируем ключи по алфавиту и собираем их значения в строчку
  3. Полученную строчку хешируем при помощи hmac sha256 с использованием merchant private key в качестве hmac ключа
  4. Собственно, подпись готова - теперь просто добавляем ее в payload и отправляем запрос

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors