Sie sind auf Seite 1von 4

Design Document for PG Downtime Scheduler

Version

Date

Author

Remarks

1.0

4 July 2016

Karan Chaudhri Draft Document

1.1

14 July 2016

Raghav Garg

Design Document

Requirement When certains bins are inactive from the issuing bank, we should be
able to alert the user that his payment might fail due to bank issues.
(For Netbanking Banks this is already implemented in web-services project, and a cron
in decision engine is used to incode the web service responsible to fetch inactive net
banking banks.)
Block/System Diagram

How would you keep compay and paydecisioneng cycles in sync? (to avoid 10 mins
gap)

Data Model:

API Details:
This command is used to retrieve the card bins for all banks which are observing
either full downtime or partial downtime at an instant. The information related to
full/partial downtime depends on the input parameter values.
Input Variables Description:

Parameter

Description

Sample Value

Var1

Bank Name code (To be


Provided by PayU) or
default

Default

var2

1 if you want to extract


information about
partially down bins as
well and 0 if you want
information about fully
down bins only

0/1

Array ( [0] => Array ( [issuing_bank] => KOTAK [status] => 0 [title] => KOTAK
MAHINDRA BANK LTD [bins_arr] => Array ( [0] => 429393 [1] => 416644 [2] =>
416645 [3] => 416643 [4] => 416646 [5] => 436390 ) ) [1] => Array ( [issuing_bank]
=> ALLBD [status] => 2 [title] => ALLAHABAD BANK [bins_arr] => Array ([0] =>
430450 [1] => 421337 ) ) )
The values referring to the array can be described below: [issuing_bank] => The
bank which is down or partially down [bins_arr] => The card bins array [status]
=> 0 if the issuing bank is completely down and 2 if it is partially down [title] =>
title of the bank

Sequence Diagram For the Solution -

Theoratical Theory 1) PaymentDecision Engine which serves as CRON will call Payment Web Services to
fetch all inactive bins from PAYUBIZ servers.
2) After fetching the bins, Payment Web Services will update the Couchbase with latest
Inactive Bins.

4) Couchbase will store inactive bins in key value pair like (INACTIVE_BINS, List[] of
inactive bins).
3) Every Payment Server will update the inactive bins in its memory from couchbase.
4) On recieving the requests from client in an existing ajax call (FetchBin Properties),
the client would know about the inactive issuing bank after typing bin of the card
number.
5) Similar will be for Saved Cards, when user will click saved card, a popup would show
the alert.
TTL?? 5min
Operational Matrix:
1. sUBMIT payment>> log whether it is yes or no from couchbase ( instant call),
script for grep// payment auditing (depends) //false alarm testing
2. How many users went away after showing pop up, omniture?? One on back and
other on red signal
3. Downtime track : from logs, zabbix-alerts
PayU down: normal flow
Couchbase down: logging and normal flow
FAQs
1. How is PayUBiz team identifying that some particular bin is down?

They are using some analytics at their end which includes polling bank
servers and other analytics
2.

Das könnte Ihnen auch gefallen