Giter Club home page Giter Club logo

trny's Introduction

trny

๐Ÿ›  A newer version of this package is in the works

A javascript package that extracts transactional info like account number, money spent, balance and type of transaction from a string

Demo here

Note: After developing this I was very excited and tested it on some bank alerts. The results were disappointing(I should have seen this coming).

The parsing logic is weak. There are soooo many different formats of bank alerts out there.

So if you want to improve this or doing something like this you may find the following steps useful

  1. Collect as much varied data as you can.
  2. Then work on parsing logic.

Data is king here. Without that your parser/engine will fail.

Installation

npm install trny

Usage

import { getTransactionInfo } from "trny";

const message = "Your a/c XX0413 is debited on 15/12/2020 by INR 3,211.00 towards purchase. Avl Bal: INR 5,603.54.";

const info = getTransactionInfo(message);
 
/* 
info = {     
   account: {
    type: "account",
    no: "0413"
   },
   balance: 5603.54,
   money: 3211.00,
   typeOfTransaction: "debited" 
}
*/

Methods

  1. getTransactionInfo
  2. getAccount
  3. getMoneySpent
  4. getBalance

getTransactionInfo

import { getTransactionInfo } from "trny";

const message = "Dear Customer, Rs.248,759.00 is debited from A/c XXXX6791 for BillPay/Credit Card payment via Example Bank NetBanking. Call XXXXXXXX161XXX if txn not done by you";

const info = getTransactionInfo(string: string)
/*
{
    account: {type: "account", no: "6791"},
    balance: "",
    money: "248759.00",
    typeOfTransaction: "debited"
}, 
*/

getAccount

import { getAccount } from "trny";

const message = "INR Rs. 399 debited from A/c no. 098900 on Avl Bal-INR Rs. 57575";

const account = getAccount(message);
// "098900"

getMoneySpent

import { getMoneySpent } from "trny";

const message = "Your sb a/c XXX00981 is debited for rs.80 on 22-02-2021 by transfer avl bal rs:6802.04";

const money = getMoneySpent(message);
// "00981"

getBalance

import { getBalance } from "trny";

const message = "Avbl Bal for A/c XXXX0377  as on 30-06-2019 is INR 21719.25. Combined Avbl Bal is INR 21719.25. Use Mobile Banking App to track A/c (app.kotak.com)";

const balance = getBalance(message);
// "21719.25"

Contribute

Please submit a PR

Visitors

visitor badge

trny's People

Contributors

kartikeyvaish avatar minimal-scouser avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

trny's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.