Схема базы данных шлюза оплаты криптовалюты - PullRequest
0 голосов
/ 05 февраля 2020

Я пытаюсь найти упрощенную схему базы данных для шлюза оплаты криптовалюты . Платежный процессор, позволяющий продавцам получать оплату в криптовалютах, таких как Bitcoin или Da sh, также поддерживающий обратные вызовы API уведомлений о платежах. Платежный шлюз создает кошелек для продавца, покупатель отправляет свою любимую валюту на кошелек, а затем продавец может вывести.

database schema

Вот что Я дошел до сих пор, состоя из таблицы user с информацией для входа в систему, таблицы расширения merchant для продавцов и, наконец, поддерживаемых валют.
Для финансовой части платежи 1: 1 связаны с транзакцией, содержащей соответствующую информацию о фактическом платеже, например, блокчейн tx_id и подтверждения. Я старался придерживаться общих правил, чтобы избежать жесткой связи с конкретной c монетой Суммы кошелька и информация о транзакции получены путем запроса блокчейна. Таблица транзакция существует, чтобы упростить контроль за движением средств, особенно для монет конфиденциальности.
Кошельки генерируются на отдельном сервере и индексируются в БД по адресу.

Сейчас Есть некоторые заметные проблемы и ограничения с этой архитектурой БД.

Прежде всего, эта схема базы данных , на данный момент не поддерживает внешние кошельки .
Учитывая, что монеты будут перемещаться в систему из внешнего кошелька (покупатель платит) и go во внешний кошелек (снятие купца), как я могу сопоставить эти транзакции в базе данных? Должна ли система отображать их, учитывая существование блокчейна?

Во-вторых, как обращаться с монетами конфиденциальности , где суммы кошельков и информация о транзакциях не публикуются c?

И, наконец, где должно отображаться возврат ? Транзакция, связанная с платежом или отдельной таблицей?

...