Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

ex-banking

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ex-banking

An example banking app public api written in typescript

  • 1.0.1
  • latest
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

Node.js CI

ExBanking :bank:

ExBanking is a minimal public facing interface of a banking application written in Typescript

Installation

This package requires Node.js v12+. To install, run npm install ex-banking

Usage

Initializing with Typescript

import ExBanking from 'ex-banking'

const exBanking = new ExBanking();

Initializing with Javascript

var ExBanking = require('ex-banking').default;

const exBanking = new ExBanking();

Creating users

New users can be created by calling the createUser function. This will also create an empty wallet for the user.

const response = exBanking.createUser('peeter')

// response = { success: true }

Deposits

Money deposits can be made into a user's wallet for a given currency.

  • If the currency does not exist, a new currency is created.
  • If the user has no wallet in such currency, a new wallet in that currency is created for the user.
const response = exBanking.deposit('peeter', 200, 'EUR');

// response = { success: true, newBalance: 200 }

Withdrawals

Withdrawals can be made on a user's wallet.

  • The user must have a wallet in that currency
  • The wallet balance must be at least the amount specified for withdrawal
const response = exBanking.withdraw('peeter', 200, 'EUR');

// response = { success: true, newBalance: 0 }

Wallet balance

  • The user must have a wallet in that currency
const response = exBanking.getBalance('peeter', 'EUR');

// response = { success: true, balance: 500 }

Transfers

A user can send money from their wallet to another user.

  • Both the sender and receiver must exist
  • The sender must have sufficient balance in the specified currency
  • If the receiver has no wallet in the specified currency, a new wallet will be created for the user in that currency.
const response = exBanking.send('peeter', 'olga', 400, 'EUR');

// response = { success: true, fromUsernameBalance: 100, toUsernameBalance: 400 }

Application error

A typical error would be returned in the following format;

{
  success: false,
  code: ***,
  message: 'An error occurred',
}

// Error codes
// 1 -> Wrong argument
// 2 -> User already exists
// 3 -> User does not exist
// 4 -> Not enough money
// 5 -> Sender does not exist
// 6 -> Receiver does not exist

Build

npm run build

Test

npm run test

FAQs

Package last updated on 28 May 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc