Share
Explore

Fintech-Lite

Repo - https://github.com/cowrywise/flite

Introduction

is a wallet app built with
and
. It has a minimal docker set up and you can run the project with.
$ docker-compose up

Your Tasks

You are to make a fork of the repo →
and complete the following tasks:

Implement the the following resources.
Endpoints
0
Method
Resource
Description
1
GET
/users/:user_id
This resource gets the details of a given account.*
2
GET
/users
This resource gets a paginated list of created accounts. 'page' and 'limit' are optional query parameters.*
3
POST
/users/:user_id/deposits
Use this resource to fund a created account.*
4
POST
/users/:user_id/withdrawals
Use this resource to withdraw funds from a created account.*
5
POST
/account/:sender_account_id/transfers/:recipient_account_id
This resource handles money transfers between created accounts.
6
GET
/account/:account_id/transactions
Resource used to retrieve paginated list of transactions performed on a given account.
7
GET
/account/:account_id/transactions/:transaction_id
Use this Resource to retrieve a transaction
There are no rows in this table
You have the freedom to decide what the Request and Response data would look like. Feel free to install any extra packages and libraries you would find helpful (don’t forget to update the requirements.txt file)
You are also free to add any Models you would need and remove the ones that you think are not necessary.

NOTE*:

Endpoints 1 & 2 have already been created. You would need to update the tests if you make any additions to the endpoints.
For 3: Assume that once a POST is made to this endpoint, the account is credited.
For 4: You do not need to implement any withdrawal service. Assume that when this endpoint is called a withdrawal is made and balances are updated.

2. Write integration tests for each endpoint created in 1 above. The tests are in the module
flite.users.test.test_views

3. Update Documentation with how to set up the project and your assumptions made while working on the project.

Submission

Make a fork of this repository -
and submit a PR once you are done. You have a deadline of
4 days
from when you make a fork of the repo (or receive the assessment). If all the tests are passing you would be contacted.

Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.