Rapid
Payment Wallet
Rapid
Pay seemless
MFS
Agent
card
Bus Metro taxi shops delivery
PYTHON SCRIPT
CardNumbr: “IU22853N4T5H89485T”
EncryptionProcess(CardNumber) =>
EncriptedString:
“*@#*@HU#$(*H($*YH$#HDIU#$GI$#YUG@I#@*O#OI$@*YHRF”
NFC Card
Gets Encripted String from NFC card(EncriptedString)=>
Creates Object => data{
Type: “Payment”
Encripted auth id:EncriptedString
Performer: “BRTC-B18”
Amount: “120”
date_string : “120325D, 1204T”
special_data: {0}
}
Sends to server(CreatedObject)=>
wait((if Return === ‘True’{
Display(‘Success’)
})(else{
Display(‘error’) Nfc reader
}))
RecivesTheEncriptedString(EncriptedString)=>
Checks if the EncriptedString is valid and active
Authenticate(EncriptedString)=> if(returns === “true”){
Card_details
initiate_payment_process(Card_details ){
Check_payment_type =>
Procceed_payment(Payment_type, Performer, Card_details.Card, Amount) =>
if (Amount_is_enough){
Innit_payment()
}else{
decline_payment()
}
} NODEServer
}
Types of payment
Payment req MRT (Metro)
data{ data{
Type: “Payment” Type: “MRT”
Encripted auth id: “12OE8954GBITG38U0” Encripted auth id: “12OE8954GBITG38U0”
Performer: “BRTC-B18” Performer: “MRTD-L1”
Amount: “120” Amount: null
date_string : “120325D, 1204T” date_string : “120325D, 1204T”
special_data: {0} special_data: {B_Station: “L1S6”, D_Station: 0}
} }
Dynamic Encryption (NTAG 424 DNA)
PYTHON SCRIPT
CardNumbr: “IU22853N4T5H89485T”
EncryptionProcess(CardNumber) =>
EncriptedString:
“*@#*@HU#$(*H($*YH$#HDIU#$GI$#YUG@I#@*O#OI$@*YHRF”
HD20HIO3RFI8HURG4UH4GPOWQPO349239-UF4HIO9U34RF48
WE97Y3R49-U NKHU8E3D9U-SNKO9U03290UR48YHUHR4UHR8
RIU3UYRFEFPOIJ839Y54UGI43289GCRBUO2309UE2DHI0R90H9
Generates diffrent Encripted key every
times
data{
Type: “MRT”
Encripted auth id: “12OE8954GBITG38U0”
Performer: “MRTD-L1”
Amount: 0
date_string : “120325D, 1204T”
special_data: {B_Station: “L1S6”, D_Station: 0}
}
if the user is valid then checks the type
if the type is MRT then calls a function to handle MRT Transections
MRT function checks that users Boarding station and Depature station .
if boarding station have value but departure station doesn't have value then
it register this data in database with payment status hold once they exit the station
the device at station sends another request this time the req has departure station
value but no boarding station value. it triggers the MRT function to find the latest hold
payment with type “MRT” in it. after finding the desired row it will perform
transaction
card genarets dynamic encripted key
reciver
Checks if the encripted value is valid or not if
Backend
it is valid it performs the task that requires