Skip to content

RicardoVercetti/rusppims

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rusppims

About

The PPI(dubbed prepaid payment instrument) is the RBI system to regulate limits in spendings on Indian government regulated financial transaction processors.

Overview

  • The rust implementation of something called a prepaid system(PPIMS).
  • PPI has hold of customer information, account information, spending, and the maximum amount the customer can possibly spend on a month based on the KYC of the customer.
  • The KYC is defined based on if the Aadhar, PAN number or Driving License is linked to the customer. Without/before any of these linking, the customer will have Min KYC(Y1) where they can spend upto 10K(Rupees) per month. Anything above will be declined.
  • If the customer links their aadhar or other government IDs, their account gets upgraded to Full-KYC(Y3) where they can spend upto 200k(Rupees).

Usage

  • Over 6 APIs are hosted for the purpose of maintaining the transaction guide line limits of RBI.
  • The Customer have to be on-boarded using the Add customer API and then transactions can be made for the customer for a specific KYC.
  • Here are 3 different KYC options available - Min KYC, New Min KYC & full KYC. Full KYC has no limits while the min KYC has max spend of 10_000 per month.
  • When any payment processors(CMS systems, core banking systems, etc.,) allow any type of payments, they have to call the Check customer limit PPIMS API, and after processing the transaction(i.e. post Credit or Debit), they have to call Update customer limit API to let the PPIMS know that a certain transaction is done against a customer.
  • This is useful for tracking spendings when the customer creates accounts and maintains balance in multiple Financial Institutions.

Available APIs

  1. Add customer
  2. Update customer
  3. Customer registration status
  4. Check customer KYC
  5. Check customer limit
  6. Update customer limit

The Goal

  • Have the basic PPIMS functionality to server as a dummy for DCMS(the project I'm working on professionally)
  • Test the smoothness of applications built in rust.
  • Tryout simple and minimal UI building
  • Try huge amount(in lakhs) of data using SQLite
  • Load test rust's Tokyo runtime(perhaps compare the resource usage of this Vs same application built in JS runtime) under heavy stress on low end devices

About

A concept miniature model of RBIs PPI system

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published