Banking
Banking Details | Bank Account 1 | Key Mapping | Remarks |
Bank Name | HDFC Bank Ltd. | Lapp.ecs_bank | |
Bank IFSC Code | HDFC0001563 | Lapp.ecs_ifsc_code | |
MICR Code | 654321 | Lapp.ecs_micr_code | |
Account No. | 123456789 | Lapp.ecs_bank_acc_no | |
Type of Account | < Savings / Current > | Lapp.ecs_account_type | |
Account Holder Name | Rajesh K. | Lapp.ecs_cust_name | |
Address Line | 1001, Tower 12, Amrit Society | Lapp.ecs_customer_address | New Key (Button to fetch and store current address details from lapp) |
Kalyaninagar, Pune – 411006 | |||
Contact No. | 9970665990 | Lapp.ecs_customer_contact_no | New key |
Statement Start Date | 01-10-2019 | Runtime: fetch from bank_statement | |
Statement End Date | 31-03-2020 | Runtime: fetch from bank_statement | |
Tenure of Bank Statement (months) | 6.00 | Runtime: fetch from bank_statement | |
Is the Address as per Bank Statement, same as Current Residence address | < Yes / No > | Runtime: compare lapp.ecs_customer_address with lapp.current_address_line1 and line 2 | |
Bank Statement File Type / Source | pdf, jpeg, jpg, etc. | Runtime: fetch from file | |
Bank Statement password | Lapp.bs_password |
Bank Statement Analysis | Bank Account 1 | |
Tenure (months) | 3 months | |
Instances of Cheque Bounce | ||
Top 20 Credits | SELECT `txn_date`,`description`,`debit`,`credit`,`balance` FROM `bank_statement` where object_id=’APP1660398105608685′ and credit>0 and DATEDIFF (curdate(),CAST(txn_date as date))<=90 order by CAST(credit AS UNSIGNED) desc limit 20 | |
Top 20 Debits | SELECT `txn_date`,`description`,`debit`,`credit`,`balance` FROM `bank_statement` where object_id=’APP1660239898684120′ and debit>0 and DATEDIFF (curdate(),CAST(txn_date as date))<=90 order by CAST(debit AS UNSIGNED) desc limit 20 | |
Top 10 Keywords | [mysqli.fetch.rows o.set=template.keyword_data] SELECT description FROM bank_statement where object_id='[env.@lapp.lapp.lapp_id/]’ and DATEDIFF (curdate(),str_to_date(txn_date,’%d-%m-%Y’))<=90 [/mysqli.fetch.rows] [php.common_words p1='{template.keyword_data.rows}’ o.set=”template.keywords_arr” c.not_empty=”template.keyword_data.rows”/] [template.set table.rows=”/] [loop.@a template.keywords_arr] [if.less_equal lhs={@a.index} rhs=’11’] [template.set_array table.rows.new category=”{@a.key}” total=”{@a.item}”/] [/if.less_equal] [/loop.@a] [template.set keywords] [template.set table.column=” /] [template.set_array table.column.new label=”Keyword” meta_key=”category”/] [template.set_array table.column.new label=”Total” meta_key=”total”/] [ui.table dataset=”{template.table}” args=”{template.table}” /] [/template.set] | |
EMI outflow | SELECT `txn_date`,`description`,`debit`,`credit`,`balance` FROM `bank_statement` where object_id='[env.@lapp.lapp.lapp_id/]’ and category=’Bounce’ and DATEDIFF (curdate(),CAST(txn_date as date))<=90 order by txn_date desc | |
Last 20 IMPS Credits | SELECT `txn_date`,`description`,`debit`,`credit`,`balance` FROM `bank_statement` where object_id='[env.@lapp.lapp.lapp_id/]’ and description like “%IMPS%” and (debit-credit) > 0 and DATEDIFF (curdate(),CAST(txn_date as date))<=90 order by txn_date desc limit 20 | |
Last 20 IMPS Debits | SELECT `txn_date`,`description`,`debit`,`credit`,`balance` FROM `bank_statement` where object_id='[env.@lapp.lapp.lapp_id/]’ and description like “%IMPS%” and (credit-debit) > 0 and DATEDIFF (curdate(),CAST(txn_date as date))<=90 order by txn_date desc limit 20 |
Bank Statement Analysis | Bank Account 1 | |
Tenure (months) | 6 months | |
Instances of Cheque Bounce | ||
Top 20 Credits | SELECT `txn_date`,`description`,`debit`,`credit`,`balance` FROM `bank_statement` where object_id=’APP1660398105608685′ and credit>0 and DATEDIFF (curdate(),CAST(txn_date as date))<=180 order by CAST(credit AS UNSIGNED) desc limit 20 | |
Top 20 Debits | SELECT `txn_date`,`description`,`debit`,`credit`,`balance` FROM `bank_statement` where object_id=’APP1660239898684120′ and debit>0 and DATEDIFF (curdate(),CAST(txn_date as date))<=180order by CAST(debit AS UNSIGNED) desc limit 20 | |
Top 10 Keywords | [mysqli.fetch.rows o.set=template.keyword_data] SELECT description FROM bank_statement where object_id='[env.@lapp.lapp.lapp_id/]’ and DATEDIFF (curdate(),str_to_date(txn_date,’%d-%m-%Y’))<=180 [/mysqli.fetch.rows] [php.common_words p1='{template.keyword_data.rows}’ o.set=”template.keywords_arr” c.not_empty=”template.keyword_data.rows”/] [template.set table.rows=”/] [loop.@a template.keywords_arr] [if.less_equal lhs={@a.index} rhs=’11’] [template.set_array table.rows.new category=”{@a.key}” total=”{@a.item}”/] [/if.less_equal] [/loop.@a] [template.set keywords] [template.set table.column=” /] [template.set_array table.column.new label=”Keyword” meta_key=”category”/] [template.set_array table.column.new label=”Total” meta_key=”total”/] [ui.table dataset=”{template.table}” args=”{template.table}” /] [/template.set] | |
EMI outflow | SELECT `txn_date`,`description`,`debit`,`credit`,`balance` FROM `bank_statement` where object_id='[env.@lapp.lapp.lapp_id/]’ and category=’Bounce’ and DATEDIFF (curdate(),CAST(txn_date as date))<=180 order by txn_date desc | |
Last 20 IMPS Credits | SELECT `txn_date`,`description`,`debit`,`credit`,`balance` FROM `bank_statement` where object_id='[env.@lapp.lapp.lapp_id/]’ and description like “%IMPS%” and (debit-credit) > 0 and DATEDIFF (curdate(),CAST(txn_date as date))<=180 order by txn_date desc limit 20 | |
Last 20 IMPS Debits | SELECT `txn_date`,`description`,`debit`,`credit`,`balance` FROM `bank_statement` where object_id='[env.@lapp.lapp.lapp_id/]’ and description like “%IMPS%” and (credit-debit) > 0 and DATEDIFF (curdate(),CAST(txn_date as date))<=180 order by txn_date desc limit 20 |
Sum of Credits / Inflow (Monthly) | Bank Account 1 |
Mar-20 | 65,000 |
Feb-20 | 67,000 |
Jan-20 | 69,000 |
Dec-19 | 89,000 |
Nov-19 | 91,000 |
Oct-19 | 93,000 |
Average Monthly Credit / Inflow | 79,000 |
Inflow Query
SET TRANSACTION ISOLATION LEVEL READ COMMITTED;
drop temporary table if exists bank_data;
create temporary table bank_data
with
q0 as (select object_id, txn_month from `bank_statement` where object_id=’APP1660045463328628′ group by txn_month),
q1 as (select bs.txn_month, DATE_FORMAT(bs.txn_date, ‘%b-%y’) as label, truncate(sum(credit),2) as balance from q0 join bank_statement as bs on q0.object_id=bs.object_id and q0.txn_month=bs.txn_month and bs.credit > 0 group by bs.txn_month order by txn_date)
select label, balance from q1;
(select label, balance from bank_data)
union
(select ‘Average Bank Balance’ as label, truncate(avg(balance),2) as balance from bank_data)
Bank Account 1 | Dates | Average | ||||||
Bank Balance Analysis | 3rd | 5th | 7th | 10th | 15th | 20th | 25th | |
Mar-20 | 2,000 | 3,000 | 4,000 | 5,000 | 6,000 | 7,000 | 8,000 | 5,000 |
Feb-20 | 60,000 | 63,000 | 66,000 | 69,000 | 72,000 | 75,000 | 78,000 | 69,000 |
Jan-20 | 70,000 | 73,000 | 76,000 | 79,000 | 82,000 | 85,000 | 88,000 | 79,000 |
Dec-19 | 85,000 | 88,000 | 91,000 | 94,000 | 97,000 | 1,00,000 | 1,03,000 | 94,000 |
Nov-19 | 65,000 | 68,000 | 71,000 | 74,000 | 77,000 | 80,000 | 83,000 | 74,000 |
Oct-19 | 90,000 | 93,000 | 96,000 | 99,000 | 1,02,000 | 1,05,000 | 1,08,000 | 99,000 |
Average Bank Balance | 62,000 | 64,667 | 67,333 | 70,000 | 72,667 | 75,333 | 78,000 | 70,000 |
Query for Bank Balance Analysis
SET TRANSACTION ISOLATION LEVEL READ COMMITTED;
drop temporary table if exists btm;
create temporary table btm
with
q0 as (select max(id) as row_id, bank_id, object_id from `bank_statement` where object_id=’APP1660045463328628′ group by bank_id ),
q1 as (select min(row_id) as row_id, bank_id, object_id from q0 ),
q2 as (select bs.object_id, txn_month, bs.bank_id from q1 join bank_statement as bs on q1.object_id=bs.object_id and q1.bank_id=bs.bank_id group by txn_month )
select * from q2;
drop temporary table if exists 3rd_day;
create temporary table 3rd_day (
`day` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`label` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`balance` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`txn_date` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL
);
insert ignore into 3rd_day(day, label, balance, txn_date)
with
q0 as (select max(id) as row_id from bank_statement as bs join btm on bs.object_id=btm.object_id and bs.txn_month=btm.txn_month and bs.bank_id=btm.bank_id and txn_date <> ” and date_format(date(txn_date),’%d’)<=3 group by bs.txn_month),
q1 as (select truncate(balance, 2) as balance, ‘3rd’ as day, bs.txn_date, DATE_FORMAT(bs.txn_date, ‘%b-%y’) as label, 1 as order_type from q0 join bank_statement as bs on q0.row_id=bs.id where bs.txn_date <> ”)
select day, label, balance, txn_date from q1 order by txn_date, order_type;
drop temporary table if exists 5th_day;
create temporary table 5th_day(
`day` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`label` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`balance` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`txn_date` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL
);
insert ignore into 5th_day(day, label, balance, txn_date)
with
q0 as (select max(id) as row_id from bank_statement as bs join btm on bs.object_id=btm.object_id and bs.txn_month=btm.txn_month and bs.bank_id=btm.bank_id and txn_date <> ” and date_format(date(txn_date),’%d’)<=5 group by bs.txn_month),
q1 as (select truncate(balance, 2) as balance, ‘5th’ as day, bs.txn_date, DATE_FORMAT(bs.txn_date, ‘%b-%y’) as label, 2 as order_type from q0 join bank_statement as bs on q0.row_id=bs.id where bs.txn_date <> ”)
select day, label, balance, txn_date from q1 order by txn_date, order_type;
drop temporary table if exists 7th_day;
create temporary table 7th_day(
`day` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`label` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`balance` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`txn_date` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL
);
insert ignore into 7th_day(day, label, balance, txn_date)
with
q0 as (select max(id) as row_id from bank_statement as bs join btm on bs.object_id=btm.object_id and bs.txn_month=btm.txn_month and bs.bank_id=btm.bank_id and txn_date <> ” and date_format(date(txn_date),’%d’)<=7 group by bs.txn_month),
q1 as (select truncate(balance, 2) as balance, ‘7th’ as day, bs.txn_date, DATE_FORMAT(bs.txn_date, ‘%b-%y’) as label, 3 as order_type from q0 join bank_statement as bs on q0.row_id=bs.id where bs.txn_date <> ”)
select day, label, balance, txn_date from q1 order by txn_date, order_type;
drop temporary table if exists 10th_day;
create temporary table 10th_day(
`day` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`label` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`balance` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`txn_date` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL
);
insert ignore into 10th_day(day, label, balance, txn_date)
with
q0 as (select max(id) as row_id from bank_statement as bs join btm on bs.object_id=btm.object_id and bs.txn_month=btm.txn_month and bs.bank_id=btm.bank_id and txn_date <> ” and date_format(date(txn_date),’%d’)<=10 group by bs.txn_month),
q1 as (select truncate(balance, 2) as balance, ’10th’ as day, bs.txn_date, DATE_FORMAT(bs.txn_date, ‘%b-%y’) as label, 4 as order_type from q0 join bank_statement as bs on q0.row_id=bs.id where bs.txn_date <> ”)
select day, label, balance, txn_date from q1 order by txn_date, order_type;
drop temporary table if exists 15th_day;
create temporary table 15th_day(
`day` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`label` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`balance` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`txn_date` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL
);
insert ignore into 15th_day(day, label, balance, txn_date)
with
q0 as (select max(id) as row_id from bank_statement as bs join btm on bs.object_id=btm.object_id and bs.txn_month=btm.txn_month and bs.bank_id=btm.bank_id and txn_date <> ” and date_format(date(txn_date),’%d’)<=15 group by bs.txn_month),
q1 as (select truncate(balance, 2) as balance, ’15th’ as day, bs.txn_date, DATE_FORMAT(bs.txn_date, ‘%b-%y’) as label, 5 as order_type from q0 join bank_statement as bs on q0.row_id=bs.id where bs.txn_date <> ”)
select day, label, balance, txn_date from q1 order by txn_date, order_type;
drop temporary table if exists 20th_day;
create temporary table 20th_day(
`day` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`label` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`balance` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`txn_date` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL
);
insert ignore into 20th_day(day, label, balance, txn_date)
with
q0 as (select max(id) as row_id from bank_statement as bs join btm on bs.object_id=btm.object_id and bs.txn_month=btm.txn_month and bs.bank_id=btm.bank_id and txn_date <> ” and date_format(date(txn_date),’%d’)<=20 group by bs.txn_month),
q1 as (select truncate(balance, 2) as balance, ’20th’ as day, bs.txn_date, DATE_FORMAT(bs.txn_date, ‘%b-%y’) as label, 6 as order_type from q0 join bank_statement as bs on q0.row_id=bs.id where bs.txn_date <> ”)
select day, label, balance, txn_date from q1 order by txn_date, order_type;
drop temporary table if exists 25th_day;
create temporary table 25th_day(
`day` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`label` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`balance` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`txn_date` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL
);
insert ignore into 25th_day(day, label, balance, txn_date)
with
q0 as (select max(id) as row_id from bank_statement as bs join btm on bs.object_id=btm.object_id and bs.txn_month=btm.txn_month and bs.bank_id=btm.bank_id and txn_date <> ” and date_format(date(txn_date),’%d’)<=25 group by bs.txn_month),
q1 as (select truncate(balance, 2) as balance, ’25th’ as day, bs.txn_date, DATE_FORMAT(bs.txn_date, ‘%b-%y’) as label, 7 as order_type from q0 join bank_statement as bs on q0.row_id=bs.id where bs.txn_date <> ”)
select day, label, balance, txn_date from q1 order by txn_date, order_type;
select * from 3rd_day
union
select * from 5th_day
union
select * from 7th_day
union
select * from 10th_day
union
select * from 15th_day
union
select * from 20th_day
union
select * from 25th_day;
Bureau
Complete data is extracted from XML of CIBIL and CRIF
Bureau Report Analysis | CIBIL | CRIF | |
Customer Name | Capture as per Bureau | Capture as per Bureau | |
Dual PAN | <Yes / No> | <Yes / No> | |
–Customer PAN No. as per our system | |||
–Dual PAN No. | |||
Credit Score | 712 | 689 | |
Bureau Start date | 01-10-2009 | 01-10-2013 | |
Bureau Vintage (Years) | 11 | 7 | |
Current Residence Address updated in Bureau | <Yes / No> | <Yes / No> | To be auto captured, based on comparison of Current Address and Bureau reported addresses in Contactability sheet Not possible as bureau does not provide the required data |
Date on which Address is updated | same as above | ||
No. of enquiries | |||
— last 30 Days | 2 | 1 | |
— last 3 Months | 4 | 3 | To be calculated based on the enquiry table at the end of CIBIL report |
— last 6 Months | 6 | 5 | To be calculated based on the enquiry table at the end of CIBIL report |
— last 12 Months | 6 | 5 | To be calculated based on the enquiry table at the end of CIBIL report |
Total High Credit Sanction | 44,72,393 | 41,55,274 | |
No. of Active accounts | 9 | 12 | |
–Housing Loan / Property Loans | 6 | 10 | |
–Car Loans / Two-Wheeler Loans / Loan against Shares | – | – | |
–Gold Loans | – | – | |
–Personal Loans / Consumer Durable Loans | 1 | 1 | |
–Credit Cards | 2 | 1 | |
Total Current outstanding | 27,03,353 | 29,84,624 | Balances (Current) to be used |
–Housing Loan / Property Loans | 23,57,853 | 26,39,124 | |
–Car Loans / Two-Wheeler Loans / Loan against Shares | – | – | |
–Gold Loans | – | – | |
–Personal Loans / Consumer Durable Loans | 2,35,000 | 2,35,000 | |
–CC O/s | 1,10,500 | 1,10,500 | |
Default instances (DPDs in last 24 months) | |||
–Housing Loan / Property Loans | |||
–Car Loans / Two-Wheeler Loans / Loan against Shares | |||
–Gold Loans | |||
–Personal Loans / Consumer Durable Loans | |||
–Credit Cards | |||
Default instances (Any Write-offs observed) | |||
–Housing Loan / Property Loans | |||
–Car Loans / Two-Wheeler Loans / Loan against Shares | |||
–Gold Loans | |||
–Personal Loans / Consumer Durable Loans | |||
–Credit Cards | |||
Current Overdue amount | 8,250 | 8,250 | |
Additional Information | |||
–UAN No. | |||
–Aadhaar Card No. | |||
–Voter ID | |||
–Driving License No. | |||
–Passport No. | U123456 | U123456 |
Details of Borrowing in last 3 / 6 / 9 / 12 months | CIBIL | CRIF | |||
Active Accounts | Outstanding Amount | Active Accounts | Outstanding Amount | Based on the Drop Down option selected, below details to be populated (Row 45 to 49) | |
–Housing Loan / Property Loans | |||||
–Car Loans / Two-Wheeler Loans / Loan against Shares | |||||
–Gold Loans | |||||
–Personal Loans / Consumer Durable Loans | |||||
–Credit Cards | |||||
Total | – | – | – | – |
CANNOT ADD SUPPORT FOR NON BUREAU LOAN DETAILS
Final Monthly Obligation to be considered | ||
Obligation as per CIBIL / CRIF | Either G70 or G89, based on whichever is Higher | |
Additional Obligation not captured | G110 | |
Total monthly obligation | – |
Higher Monthly Obligation amongst CIBIL & CRIF | CIBIL / CRIF | ||||||||
Additional Loans taken by Borrower not captured in above Bureau Analysis | |||||||||
Type of Loan | Loan Ending on | Outstanding Amount | Tenure | EMI stated | EMI as per LT FOIR % | Amount to be considered for FOIR (Higher of Column E & F) | Type of Borrower (Ownership) | Whether to be considered in FOIR | |
Housing Loan / Property Loans | Fully Editable for Input fields | ||||||||
–HL 1 | Individual, Joint, Guarantor | Yes / No | |||||||
–HL 2 | Individual, Joint, Guarantor | Yes / No | |||||||
Car Loans / Two-Wheeler Loans / Loan against Shares | |||||||||
–CL 1 | Individual, Joint, Guarantor | Yes / No | |||||||
–TL 1 | Individual, Joint, Guarantor | Yes / No | |||||||
–LS 1 | Yes / No | ||||||||
Gold Loans | Individual, Joint, Guarantor | ||||||||
–GL 1 | Individual, Joint, Guarantor | Yes / No | |||||||
Personal Loans / Consumer Durable Loans | |||||||||
–PL 1 | Individual, Joint, Guarantor | Yes / No | |||||||
–PL 2 | Individual, Joint, Guarantor | Yes / No | |||||||
Credit Cards | |||||||||
–CC 1 | Individual, Joint, Guarantor | Yes / No | |||||||
–CC 2 | Individual, Joint, Guarantor | Yes / No | |||||||
Total Monthly obligation |
Contactability
Current Residence | |||
Address Line 1 | 1001, Tower 12, Amrit Society | Lapp.home_addr_line1 | |
Address Line 2 | 1001, Tower 12, Amrit Society | Lapp.home_addr_line2 | |
City | Pune | Lapp.home_city | |
PIN Code | 411006 | Lapp.home_zipcode | |
Address Proof Document | Passport | Lapp.address_proof | |
Current Residence Status | Owned | Lapp.home_ownership_type | |
No. of Years at Current Residence | ( < 1 yr, 1 to 3, 3 to 5, > 5 yrs) | Lapp.years_at_current_residence |
Permanent Residence | |||
Address Line 1 | 1001, Tower 12, Amrit Society | Lapp.permanent_addr_line1 | |
Address Line 2 | 1001, Tower 12, Amrit Society | Lapp.permanent_addr_line2 | |
City | Pune | Lapp.permanent_city | |
PIN Code | 411006 | Lapp.permanent_zipcode | |
Address Proof Document | Passport | Lapp.permanent_address_proof | |
Permanent Residence Status | Owned | Lapp.permanent_ownership_type | |
Name of Contact Person | Mr. X | Lapp.permanent_address_contact_person | New Key |
Contact No. of abovementioned person | 9765123456 | Lapp.permanent_address_contact_number | New Key |
Employer Address | ||
Address Line 1 | Lapp.office_addr_line1 | |
Address Line 2 | Lapp.office_addr_line2 | |
City | Pune | Lapp.office_city |
PIN Code | 411006 | Lapp.office_zipcode |
Deputation Address | To be made applicable 3rd party employees / Contractors / Consultants | ||
Address Line 1 | lapp.employee_deputation_address_line1 | ||
Address Line 2 | lapp.employee_deputation_address_line2 | ||
City | Mumbai | lapp.employee_deputation_city | |
PIN Code | 400001 | Lapp.employee_deputation_zipcode |
References | |||
Name | Mobile No. | ||
Lapp.ref.name | Lapp.ref.mobile_number | CPA Input | |
CPA Input |
Telephone | |||
Current Contact Number | 9970665990 | Lapp.mobile_number | |
Truecaller check | Auto Capture, this number’s TrueCaller name | ||
Is it the WhatsApp no. | Yes | CPA Input via Drop Down (Yes / No) | We can do this automatic |
Whatsapp Delivery Status | If Whatsapp no. is Yes, then auto trigger a Welcome message and check if it is Deliverable (Success / Failure) | No thoughts have been given in this by doc provider | |
Alternate Contact no. | CPA Input |
Personal E-mail Id | User / CPA input | Lapp.personal_email |
Delivery Status of Personal E-mail Id | Success / Failure Output to be displayed | Lapp.personal_email_deliverable_status |
Official Email Id | User / CPA input | Lapp.official_email |
Delivery Status of Official E-mail Id | Success / Failure Output to be displayed | Company_mca.email_delivery_status |
Social Media Contactability | ||
Facebook URL | Manual stored in system in lapp. | Lapp.facebook_url |
Count of Facebook Friends | <to be added later> | |
Facebook Activation date | Not possible to get this | |
Linkedin URL | Manual stored in system in lapp. | Lapp.linkedin_url |
Count of Linkedin Connections | <to be added later> | |
Linkedin Activation date | Not possible to get this |
FETCH BELOW DATA FROM XML OF CRIF AND CIBIL
Bureau Updation Block | CIBIL | CRIF | |
Bureau details with Current address | |||
Date on which Current address is firstly updated | 25-01-2019 | 07-02-2019 | Bureau Report |
Count of Loans taken at this Address | 3 | 2 | To be calculated based on dates |
Amount of Loans | 3,00,000 | 2,00,000 | Loans factored, based on above date range calculation; Sanction Amt of those Loans |
Address Variations | ||||
Count of Address variations | 2 | 2 | ||
1002, Tower 8, Kalyan Society, Pune 411006 | 14-10-2017 | 04-10-2017 | Bureau Report | We need checkboxes to Select Duplicate addresses, and option to delete those line items (i.e., Typo error duplicacy would be avoided) |
602, A1 Wing, Rajat Heights, Pune 411018 | 01-10-2012 | 04-12-2014 | Bureau Report |
Telephone / Mobile details | |||
Date of updation in CRIF | 04-12-2014 | 04-12-2014 | Bureau Report |
Contact No. Variation | |||
Count of Mobile variations | 2 | 2 | Bureau Report |
9970123456 | 24-02-2019 | 24-02-2019 | Bureau Report |
9980123456 | 01-10-2018 | 01-10-2018 | Bureau Report |
E-mail Id variations | |||
Count of E-mail Id variations | 3 | 4 | Bureau Report |
abc@gmail.com | 24-02-2019 | Bureau Report | |
test@hotmail.com | 24-09-2017 | Bureau Report | |
test@loantap.in | 01-10-2018 | Bureau Report |
Employer Details
Employer Details | ||||
Employer Name | Tata Consultancy Services Ltd. | Lapp.employer_name | Data will be populated from Company Database based on MCA ID entered by CPA | |
Employer MCA Id | L22210MH1995PLC084781 | Lapp.company_mca_id | MCA ID will be the unique key | |
Sector of Employer | IT /ITeS | Will get by mca_id | Product team will provide it | |
Company domain as per database | CS@tcs.com | Extract form Lapp.official_email | In case of new employer, CPA to update MCA iD and email as per MCA Portal | |
Employer Category | Cat A | Company_mca.employer_category | ||
Paid Up Capital | Company_mca.paidup_capital |
Additional Details wrt Employment | ||||
Official E-mail Id | abc@tcs.com | Lapp.official_email | CPA Input | |
Delivery Status of Official E-mail Id | new key: Lapp.official_email_deliverable_status | Status to be displayed with Conditional formatting | ||
Is Official E-mail Domain same as Employer E-mail Domain? | Output to be displayed based on domain comparison between Row 6 & Row 12, with Conditional formatting | Product team will provide it | ||
Domain Name Creation Date | 11-10-1998 | Company_mca.domain_creation_date | Auto Capture (ge it from MCA Table) | |
Designation | New_key employee_designation | CPA Input | Text field CPA input | |
No. of years with Current employer | 2 to 3 years | Lapp.employment_duration | CPA Input | Drop Down as per Annexure I, List 1 |
No. of years with Current employer as per Linkedin | 2 to 3 years | Auto Capture | Will be done later | |
Overall Work Experience | > 3 years | Lapp.employment_year | CPA Input | Drop Down as per Annexure I, List 1 |
Salary Account No. | Lapp.salary_account_no | |||
Salary Bank Name | Lapp.salary_bank_name | |||
Count of Linkedin Connections | Lapp.linkedin_connection_count | Auto Capture |
Will be Added Soon Linkedin Presence of Employer Is the Company on Linkedin? < Yes / No > Auto Capture Employee Strength / Company Size Auto Capture Count of Employees active on Linkedin Auto Capture Headquarters Auto Capture Type of Company Auto Capture Commencement Date (Founded) Auto Capture | Will be Added Soon Glassdoor Presence of Employer Is the Company on Glassdoor? < Yes / No > Auto Capture Employee Strength / Company Size Auto Capture Count of Employees active on Linkedin Auto Capture Headquarters Auto Capture Type of Company Auto Capture Commencement Date (Founded) Auto Capture |
Employer Address | |||
Address Line 1 | Lapp.office_addr_line1 | CPA Input | |
Address Line 2 | Lapp.office_addr_line2 | CPA Input | |
City | Pune | Lapp.office_city | CPA Input |
PIN Code | 411006 | Lapp.office_zipcode | CPA Input |
Deputation Address | To be made applicable for 3rd party employees / Contractors / Consultants | |||
Deputation Employer Name | New key : Lapp.employee_deputation_name | CPA Input new key | New field as discussed with product team added | |
Deputation Email | New key : Lapp.employee_deputation_email | CPA Input new key | New field as discussed with product team added | |
Address Line 1 | New key : Lapp.employee_deputation_address_line1 | CPA Input new key | Address at which Employee is currently working | |
Address Line 2 | New key : Lapp.employee_deputation_address_line2 | CPA Input new key | Address at which Employee is currently working | |
City | Mumbai | New key :Lapp.employee_deputation_city | CPA Input new key | |
PIN Code | 400001 | New key: Lapp.employee_deputation_zipcode | CPA Input new key |
Salary Income Details
Customer Type | Applicant | Label |
Employer Name | Lapp.employer_name |
Salary details | |||||
Particulars | Jan-20 | Feb-20 | Mar-20 | Average | |
Salary Credit Date | 31-01-2020 | 28-02-2020 | 31-03-2020 | Bank Statement Reader | |
Net Salary as per Salary Slip | 85,000 | 85,000 | 92,000 | 87,333 | to be filled by CPA |
Amount Credited in Bank Statement | 85,000 | 85,000 | 92,000 | 87,333 | Bank Statement Reader |
Variable Component (NSA, Bonus, OT, Advance, Arrear, Reimbursement) | – | – | 7,000 | 2,333 | to be filled by CPA |
Fixed Component | 85,000 | 85,000 | 85,000 | 85,000 | Auto |
Query to fetch credit amount and month from the Bank statement Table:
with
q0 as (SELECT DATE_FORMAT(CAST(txn_date as DATE),”%d-%m-%Y”) as credit_date, txn_date, DATE_FORMAT(txn_date, ‘%b-%y’) as month, credit FROM bank_statement WHERE object_id=[esc.str @single.lapp.lapp_id/] AND category = ‘Salary’ group by txn_month Limit 0,3)
select credit_date, month, credit from q0 order by txn_date
Values of fields:
1. Net Salary as per Salary Slip
- Lapp.salary_1
- Lapp.salary_2
- Lapp.salary_3
2. Variable Component
- Lapp.salary_variable_component_1
- Lapp.salary_variable_component_2
- Lapp.salary_variable_component_3
3. Fixed Component
- Lapp.salary_1 – Lapp.salary_variable_component_1
- Lapp.salary_2 – Lapp.salary_variable_component_2
- Lapp.salary_13- Lapp.salary_variable_component_3
Variable Income | Amount | Frequency | Monthly amount | ||
Bonus | 50,000 | Annually | 4,167 | Editable | These are Credits from Employer observed in BS or from Salary Slip |
Incentive | 7,000 | Quarterly | 2,333 | Editable | |
Additional Variable income considered | 6,500 |
1. Bonus
- Lapp.annual_bonus
- Lapp.annual_bonus_frequency
2. Incentive
- Lapp.incentive
- Lapp.incentive_frequency
Customer Type | Co-Applicant |
Employer Name | Lapp.coapp.name |
Salary details | |||||
Particulars | Jan-20 | Feb-20 | Mar-20 | Average | |
Salary Credit Date | 31-01-2020 | 28-02-2020 | 31-03-2020 | Bank Statement Reader | |
Net Salary as per Salary Slip | 45,000 | 45,000 | 45,000 | 45,000 | to be filled by CPA |
Amount Credited in Bank Statement | 45,000 | 45,000 | 45,000 | 45,000 | Bank Statement Reader |
Variable Component (NSA, Bonus, OT, Advance, Arrear, Reimbursement) | – | – | – | – | to be filled by CPA |
Fixed Component | 45,000 | 45,000 | 45,000 | 45,000 | Auto |
Note: Red marked fields are not be supposed to be developed, as we are not going to read statement of Co Applicants.
Values of fields:
1. Net Salary as per Salary Slip
- Lapp.coapp.salary_1
- Lapp.coapp.salary_2
- Lapp.coapp.salary_3
2. Variable Component
- Lapp.coapp.salary_variable_component_1
- Lapp.coapp.salary_variable_component_2
- Lapp.coapp.salary_variable_component_3
3. Fixed Component
- Lapp.coapp.salary_1 – Lapp.coapp.salary_variable_component_1
- Lapp.coapp.salary_2 – Lapp.coapp.salary_variable_component_2
- Lapp.coapp.salary_13- Lapp.coapp.salary_variable_component_3
4. Salary Credit Date
- Lapp.coapp.salary_credit_date_1
- Lapp.coapp.salary_credit_date_2
- Lapp.coapp.salary_credit_date_3
5. Amount Credited in Bank Statement
- Lapp.coapp.salary_credit_bank_statement_1
- Lapp.coapp.salary_credit_bank_statement_2
- Lapp.coapp.salary_credit_bank_statement_3
Variable Income | Amount | Frequency | Monthly amount | ||
Bonus | 15,000 | Annually | 1,250 | Editable | These are Credits from Employer observed in BS or from Salary Slip |
Incentive | – | Quarterly | – | Editable | |
Additional Variable income considered | 1,250 |
1. Bonus
- Lapp.coapp.annual_bonus
- Lapp.coapp.annual_bonus_frequency
2. Incentive
- Lapp.coapp.incentive
- Lapp.coapp.incentive_frequency
Income to be appraised | Amount | Comments |
Average Fixed Salary (Last 3 months) | 1,30,000 | Sum of field from particular’s table:Fixed Component |
Variable Income | 7,750 | Sum of field from variable income’s table:monthly amount |
Other Income (Any other income to be considered) | – | |
Monthly Income to be appraised | 1,37,750 | Sum of avg fixed income + variable income |
Business Details
Business Details | Key | Description | ||
Channel Name | Metro Cash & Carry | Lapp.channel_code | CPA / Sales / API Input, Drop Down as per Annexure I, List I | |
Merchant No. with Channel | Lapp.smart_id | CPA / Sales / API Input | We have key lapp.smart_id | |
Relationship Vintage with Channel | New Key Lapp.business_channel_vintage | CPA / Sales / API Input | Please explain this Need to add new key for api or partner ask with channel partner if they can provide it Date format editable | |
Merchant Name | Lapp.business_name | CPA / Sales / API Input | Business name | |
Nature of Business | Lapp.nature_of_business | CPA / Sales / API Input, drop down to be made available | Nature of Business(List Provided by product team) Kirana / Grocery / Provision Store Mobile Store Medical Store Restaurant / Café Small Manufacturing unit Retailer / Trader (i.e., catering to End consumer) Professional Service Provider (Individual CA, Advocate, Architecture, etc.) Other Service Provider Others | |
Business Address & Stability | ||||
Address Line 1 | Lapp.business_addr_line1 | CPA / Sales / API Input | ||
Address Line 2 | Lapp.business_addr_line2 | CPA / Sales / API Input | ||
Landmark | New key Lapp.business_addr_landmark | CPA / Sales / API Input | ||
City | Lapp.business_city | CPA / Sales / API Input, All city drop downs to be made available | CAP Input | |
Pin Code | Lapp.business_zipcode | CPA / Sales / API Input | ||
Owned / Rented | Lapp.business_ownership_type | CPA / Sales / API Input | ||
Proof of Property Ownership | New key : Lapp.business_property_ownership_proof | CPA / Sales / API Input with Drop Down | Need to provide list of documents Index II Property Tax Receipt Copy of Sale Deed | |
Business Vintage document | New key : Lapp.business_proof | CPA / Sales / API Input, Drop Down as per Annexure I, List II | Business Vintage document(List Provided by product team) Shop Act / Gumasta License ITR Copy GST Registration Certificate Bank Statement Udyog Aadhaar | |
Business Commencement Date | New Key :Lapp.date_of_formation | CPA / Sales / API Input | Starting date of business | |
Business Vintage (Years) | Auto Calculated from Business Commencement Date | Calculated by Lapp.business_commencement_date | ||
GST Registration No. | Lapp.business_gst_number | CPA / Sales / API Input | ||
4 Shop Photos | < Yes / No > | Answer to be auto-captured, based on uploading of 4 Shop Photos | Count uploaded photo with name shop_photo.* | |
Google Location Link of Shop | Lapp.business_google_location_link | Customer to share with Sales / Credit Team, and they will upload | CPA Input |
Config Array for Dropdown
[nature_of_business]
[options new label="Kirana / Grocery /
Provision Store" value="kirana-grocery-provision-store"/]
[options new label="Mobile Store"
value="mobile-store"/]
[options new label="Medical
Store" value="office-colleague"/]
[options new label="Restaurant /
Cafe" value="restaurant-cafe"/]
[options new label="Small
Manufacturing unit" value="small-manufacturing-unit"/]
[options new label="Retailer /
Trader (i.e., catering to End
consumer)" value="retailer-trader"/]
[options new label="Professional
Service Provider (Individual CA, Advocate, Architecture, etc.)"
value="professional-service-provider"/]
[options new label="Other Service
Provider" value="other-service-provider"/]
[options new label="Others"
value="others"/]
[/nature_of_business]
[business_property_ownership_proof]
[options new label="Index II"
value="index-II"/]
[options new label="Property Tax
Receipt" value="property-tax-receipt"/]
[options new label="Copy of Sale
Deed" value="copy-of-sale-deed"/]
[/business_property_ownership_proof]
[business_proof]
[options new label="Shop Act / Gumasta
License" value="shop-act-gumasta-license"/]
[options new label="ITR Copy"
value="itr-copy"/]
[options new label="GST Registration
Certificate" value="gst-registration-certificate"/]
[options new label="Bank
Statement" value="bank-statement"/]
[options new label="Udyog
Aadhaar" value="udyog-aadhaar"/]
[/business_proof]
Credit Card Details
No Possible to read credit card
Latest CC Statement details | |||
CC Issuing Bank Name | HDFC Bank Ltd. | Lapp.credit_card_issuing_bank (new key) | CPA Input |
Date of Issuance | 27-03-2016 | Lapp.credit_card_issue_date | CPA Input |
Date of Expiry | 31-03-2021 | Lapp.credit_card_exp_date (new key) | CPA Input |
Credit Card Limit | 70,000 | Lapp.credit_card_limit | CPA Input |
Credit Card Statement Date | 12-03-2020 | Lapp.credit_card_statement_date (new key) | CPA Input |
Total Amount due as per CC Statement | 62,500 | Lapp.credit_card_amount_due (new key) | CPA Input |
Total Amount due as per CC Statement (Opening Balance) | 42,500 | Lapp.credit_card_opening_bal (new key) | CPA Input |
Total Amount paid as per CC Statement | 42,500 | Lapp.credit_card_amount_paid (new key) | CPA Input |
Ratio of Amount paid to Amount due | 100% | Lapp.credit_card_opening_paid / Lapp.credit_card_opening_bal | Auto Calculate |
Whether Ratio of Amount paid to Amount due satisfies LoanTap norms (i.e., > 70%) | LoanTap norms satisfied | When above ratio is more than, 0.7, then noms satisfied else no | Auto Captured |
Complete data is extracted from XML of CIBIL and CRIF
Additional Credit Card Details | CIBIL | CRIF | Auto Capture from Bureau |
CC 1 | |||
High Credit | 57,800 | 57,800 | |
Current Balance | 34,500 | 34,500 | |
Credit Limit | 60,000 | 60,000 | |
CC 2 | |||
High Credit | 35,000 | 35,000 | |
Current Balance | 17,000 | 17,000 | |
Credit Limit | 42,000 | 42,000 | |
CC 3 | |||
High Credit | 90,000 | 90,000 | |
Current Balance | 84,000 | 84,000 | |
Credit Limit | 1,00,000 | 1,00,000 | |
Summary | |||
Count of Active Credit Cards | 3 | 3 | |
High Credit | 1,82,800 | 1,82,800 | |
Current Balance | 1,35,500 | 1,35,500 | |
Credit Limit | 2,02,000 | 2,02,000 | |
Latest CC Statement details |