Skip to content

Instantly share code, notes, and snippets.

@EvanBrightside
Last active May 11, 2023 22:29
Show Gist options
  • Select an option

  • Save EvanBrightside/547b93fa250a088730998b4f8b5b7fa0 to your computer and use it in GitHub Desktop.

Select an option

Save EvanBrightside/547b93fa250a088730998b4f8b5b7fa0 to your computer and use it in GitHub Desktop.
Написать микросервис, который принимает 2 запроса:
1) на создание входящего платежа
2) на его подтверждение
После чего сервис должен сохранять транзакцию (возможно обновлять статус транзакции)
и подсчитывать конечный счет пользователя.
Пример эндпоинтов:
POST /api/transactions - создание
PUT /api/transactions/:transaction_id или /api/transactions/confirm
Баланс пользователя обновляется после подтверждения транзакции.
Запросы принимаются в json формате.
Пример запроса на создание:
{
account_id: 1,
amount: 200,
description: ‘some description’
from_card: {
pan: ‘123456783456’,
holder: ‘John Doe’,
expiration_date: ’03/30’
},
}
пример запроса на подтверждение:
{
transaction_id: 1
}
или может быть пустым, в зависимости от архитектуры
Подтверждение это простое изменение статуса транзакции, например с new на confirmed
Все остальное на усмотрение разработчика
Стек: Ruby on Rails, Postgres, RSpec
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment