[2026-08-25 10:23:41] INFO: evaluate.received {"batch_id":"aecd4604-a4ca-4c3d-86b9-80119d887d13","has_file":true,"filename":"temp_2026-08-25_10:22:29_1787633549_co_lending_loan_decision.xlsx","size":17406,"mime":null,"ip":null} [2026-08-25 10:23:41] INFO: import.sheet_parsed {"batch_id":"aecd4604-a4ca-4c3d-86b9-80119d887d13","rows_seen":4,"rows_kept":4,"rows_skipped":0} [2026-08-25 10:23:41] INFO: evaluate.excel_parsed {"batch_id":"aecd4604-a4ca-4c3d-86b9-80119d887d13","row_count":4} [2026-08-25 10:23:41] INFO: policy.request {"batch_id":"aecd4604-a4ca-4c3d-86b9-80119d887d13","url":"http://localhost:7000/api/live/policy/policy-d9204242"} [2026-08-25 10:23:43] INFO: policy.response {"batch_id":"aecd4604-a4ca-4c3d-86b9-80119d887d13","ok":false,"http_status":500,"duration_ms":1431,"response":" sqlalchemy.exc.OperationalError: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query') [SQL: SELECT live_config.id AS live_config_id, live_config.api_key AS live_config_api_key, live_config.api_secret_hash AS live_config_api_secret_hash, live_config.ip_whitelist AS live_config_ip_whitelist, live_config.enabled AS live_config_enabled, live_config.updated_at AS live_config_updated_at FROM live_config WHERE live_config.id = %(pk_1)s] [parameters: {'pk_1': 1}] (Background on this error at: https://sqlalche.me/e/20/e3q8) // Werkzeug Debugger

OperationalError

sqlalchemy.exc.OperationalError: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query') [SQL: SELECT live_config.id AS live_config_id, live_config.api_key AS live_config_api_key, live_config.api_secret_hash AS live_config_api_secret_hash, live_config.ip_whitelist AS live_config_ip_whitelist, live_config.enabled AS live_config_enabled, live_config.updated_at AS live_config_updated_at FROM live_config WHERE live_config.id = %(pk_1)s] [parameters: {'pk_1': 1}] (Background on this error at: https://sqlalche.me/e/20/e3q8)

Traceback (most recent call last)

sqlalchemy.exc.OperationalError: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query') [SQL: SELECT live_config.id AS live_config_id, live_config.api_key AS live_config_api_key, live_config.api_secret_hash AS live_config_api_secret_hash, live_config.ip_whitelist AS live_config_ip_whitelist, live_config.enabled AS live_config_enabled, live_config.updated_at AS live_config_updated_at FROM live_config WHERE live_config.id = %(pk_1)s] [parameters: {'pk_1': 1}] (Background on this error at: https://sqlalche.me/e/20/e3q8)

This is the Copy/Paste friendly version of the traceback.

The debugger caught an exception in your WSGI application. You can now look at the traceback which led to the error. If you enable JavaScript you can also use additional features such as code execution (if the evalex feature is enabled), automatic pasting of the exceptions and much more.
Brought to you by DON'T PANIC, your friendly Werkzeug powered traceback interpreter.

Console Locked

The console is locked and needs to be unlocked by entering the PIN. You can find the PIN printed out on the standard output of your shell that runs the server.

PIN:

","error":"Non-2xx response from policy API"} [2026-08-25 10:23:43] ERROR: evaluate.aborted_policy_unavailable {"batch_id":"aecd4604-a4ca-4c3d-86b9-80119d887d13","http_status":500,"error":"Non-2xx response from policy API"} [2026-08-25 11:17:21] INFO: evaluate.received {"batch_id":"c91690ef-a313-4c89-8c7f-a75238371333","has_file":true,"filename":"temp_2026-08-25_10:56:39_1787635599_co_lending_loan_decision.xlsx","size":17406,"mime":null,"ip":null} [2026-08-25 11:17:21] INFO: import.sheet_parsed {"batch_id":"c91690ef-a313-4c89-8c7f-a75238371333","rows_seen":4,"rows_kept":4,"rows_skipped":0} [2026-08-25 11:17:21] INFO: evaluate.excel_parsed {"batch_id":"c91690ef-a313-4c89-8c7f-a75238371333","row_count":4} [2026-08-25 11:17:21] INFO: policy.request {"batch_id":"c91690ef-a313-4c89-8c7f-a75238371333","url":"http://localhost:7000/api/live/policy/policy-d9204242"} [2026-08-25 11:17:21] INFO: policy.response {"batch_id":"c91690ef-a313-4c89-8c7f-a75238371333","ok":false,"http_status":500,"duration_ms":64,"response":" sqlalchemy.exc.OperationalError: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query') [SQL: SELECT live_config.id AS live_config_id, live_config.api_key AS live_config_api_key, live_config.api_secret_hash AS live_config_api_secret_hash, live_config.ip_whitelist AS live_config_ip_whitelist, live_config.enabled AS live_config_enabled, live_config.updated_at AS live_config_updated_at FROM live_config WHERE live_config.id = %(pk_1)s] [parameters: {'pk_1': 1}] (Background on this error at: https://sqlalche.me/e/20/e3q8) // Werkzeug Debugger

OperationalError

sqlalchemy.exc.OperationalError: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query') [SQL: SELECT live_config.id AS live_config_id, live_config.api_key AS live_config_api_key, live_config.api_secret_hash AS live_config_api_secret_hash, live_config.ip_whitelist AS live_config_ip_whitelist, live_config.enabled AS live_config_enabled, live_config.updated_at AS live_config_updated_at FROM live_config WHERE live_config.id = %(pk_1)s] [parameters: {'pk_1': 1}] (Background on this error at: https://sqlalche.me/e/20/e3q8)

Traceback (most recent call last)

sqlalchemy.exc.OperationalError: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query') [SQL: SELECT live_config.id AS live_config_id, live_config.api_key AS live_config_api_key, live_config.api_secret_hash AS live_config_api_secret_hash, live_config.ip_whitelist AS live_config_ip_whitelist, live_config.enabled AS live_config_enabled, live_config.updated_at AS live_config_updated_at FROM live_config WHERE live_config.id = %(pk_1)s] [parameters: {'pk_1': 1}] (Background on this error at: https://sqlalche.me/e/20/e3q8)

This is the Copy/Paste friendly version of the traceback.

The debugger caught an exception in your WSGI application. You can now look at the traceback which led to the error. If you enable JavaScript you can also use additional features such as code execution (if the evalex feature is enabled), automatic pasting of the exceptions and much more.
Brought to you by DON'T PANIC, your friendly Werkzeug powered traceback interpreter.

Console Locked

The console is locked and needs to be unlocked by entering the PIN. You can find the PIN printed out on the standard output of your shell that runs the server.

PIN:

","error":"Non-2xx response from policy API"} [2026-08-25 11:17:21] ERROR: evaluate.aborted_policy_unavailable {"batch_id":"c91690ef-a313-4c89-8c7f-a75238371333","http_status":500,"error":"Non-2xx response from policy API"} [2026-08-25 11:34:59] INFO: evaluate.received {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","has_file":true,"filename":"temp_2026-08-25_10:56:39_1787635599_co_lending_loan_decision.xlsx","size":17406,"mime":null,"ip":null} [2026-08-25 11:34:59] INFO: import.sheet_parsed {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","rows_seen":4,"rows_kept":4,"rows_skipped":0} [2026-08-25 11:34:59] INFO: evaluate.excel_parsed {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row_count":4} [2026-08-25 11:34:59] INFO: policy.request {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","url":"http://localhost:7000/api/live/policy/policy-d9204242"} [2026-08-25 11:35:00] INFO: policy.response {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","ok":true,"http_status":200,"duration_ms":887,"response":{"grade":{"rules":{"Blacksoil-Navdhan":{"rule":[{"description":["Blacksoil Age >=21 and <=60 pass else reject"],"key":"age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Borrower Maturity Age"],"key":"borrower_maturity_age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 2"],"key":"co_applicant_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 1"],"key":"co_applicant_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil gender Male - \"Male - approve, If female then check marital status, If Female then check else ignore this rule Marital Status- Reject single women as primary borrower"],"key":"gender","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_1 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Overdue Amount\t<=1000, pass"],"key":"overdue_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (0-6 Months) if\t<3 pass"],"key":"dpd_0_6_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Business Vintage (Years) - >=3 years else reject"],"key":"business_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 2 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil tenure - <=36 months else reject"],"key":"tenure","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Borrower Bureau Score (upto 3 lakh loan amount, >=650 else reject) or Loan Amount >3 Lakh and If score >700 pass else reject"],"key":"bureau_score","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Vintage (Years) >=3 years else reject"],"key":"residence_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Bank Statement 6M, Minimum 6 months"],"key":"bank_statement_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 1 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_2 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Active Credit Lines Count - Value\t<=3 pass"],"key":"active_credit_lines_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (6-12 Months) if <2 pass"],"key":"dpd_6_12_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Applicant NTC, pass if no"],"key":"applicant_ntc","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Cheque Bounce Count 6M,No bounce in last 6 months, pass"],"key":"cheque_bounce_count_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Enquiries Last 3 Months\tValue\t<=5 pass"],"key":"enquiries_last_3_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence to Branch Distance (km) - <=30 KM from branch else reject"],"key":"residence_to_branch_distance_km","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Loan Amount - <=4,00,000 else reject"],"key":"loan_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Ownership - Owned/Ancestral/Rent Free else reject"],"key":"residence_ownership","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Foir foir <= 50% pass else fail"],"key":"foir","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - 1. Expansion of existing business. 2. Purchase of additional stock / raw material / working capital 3. Purchase of machinery/equipment 4. Refinancing of existing loans in case of an existing Navadhan customer"],"key":"loan_utilization","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil bureau_loss_count > 0 fail else pass"],"key":"bureau_loss_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_dbt_count > 0 reject else pass"],"key":"bureau_dbt_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_sub_count any value received > 0 reject else pass"],"key":"bureau_sub_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_write_off_count < 1000 pass else reject"],"key":"bureau_write_off_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_settlement_count > 0 reject else pass"],"key":"bureau_settlement_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}}]}}}},"error":null} [2026-08-25 11:35:00] INFO: policy.parsed {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","policy_count":1,"policy_names":["Blacksoil-Navdhan"]} [2026-08-25 11:35:00] INFO: row.start {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":1,"application_id":"MP2408"} [2026-08-25 11:35:01] INFO: row.lead_created {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":1,"application_id":"MP2408","vendor_loan_id":49} [2026-08-25 11:35:01] INFO: row.co_applicants_saved {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":1,"vendor_loan_id":49,"count":2} [2026-08-25 11:35:01] INFO: row.decision_data_saved {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":1,"vendor_loan_id":49,"decision_keys":93} [2026-08-25 11:35:01] INFO: row.api_request {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":1,"vendor_loan_id":49,"url":"http://localhost:8889/","policies_payload":["Blacksoil-Navdhan"],"decision_keys":["application_id","age","gender","marital_status","applicant_ntc","household_monthly_income","household_annual_income","household_expenses","existing_emi_obligations","business_income","agriculture_income","dairy_income","foir","eligible_emi","eligible_loan_amount","loan_utilization","name_of_bureau","bureau_score","bureau_pull_date","overdue_amount","dpd_0_6_months","bureau_sub_count","bureau_dbt_count","bureau_loss_count","bureau_write_off_count","bureau_settlement_count","bureau_suit_filled_count","bureau_willful_default_count","restructured_count","dpd_6_12_months","enquiries_last_3_months","active_credit_lines_count","bank_statement_6m","cheque_bounce_count_6m","loan_amount","tenure","interest_rate","apr","repayment_frequency","loan_purpose","residence_area","residence_vintage_years","residence_ownership","residence_to_branch_distance_km","business_vintage_years","asset_fridge_value","asset_air_conditioner_value","asset_washing_machine_value","asset_tv_value","asset_smart_phone_value","co_applicant_age_1","co_applicant_relationship_1","co_applicant_years_of_stay_in_current_address_1","co_applicant_ntc_1","co_applicant_financial_status_1","co_applicant_name_of_bureau_1","co_applicant_bureau_score_1","co_applicant_bureau_pull_date_1","co_applicant_overdue_amount_1","co_applicant_dpd_0_6_months_1","co_applicant_dpd_6_12_months_1","co_applicant_bureau_sub_count_1","co_applicant_bureau_dbt_count_1","co_applicant_bureau_loss_count_1","co_applicant_bureau_write_off_count_1","co_applicant_bureau_settlement_count_1","co_applicant_bureau_suit_filed_count_1","co_applicant_bureau_willful_default_count_1","co_applicant_restructured_count_1","co_applicant_enquiries_last_3_months_1","co_applicant_active_credit_lines_count_1","co_applicant_age_2","co_applicant_relationship_2","co_applicant_years_of_stay_in_current_address_2","co_applicant_ntc_2","co_applicant_financial_status_2","co_applicant_name_of_bureau_2","co_applicant_bureau_score_2","co_applicant_bureau_pull_date_2","co_applicant_overdue_amount_2","co_applicant_dpd_0_6_months_2","co_applicant_dpd_6_12_months_2","co_applicant_bureau_sub_count_2","co_applicant_bureau_dbt_count_2","co_applicant_bureau_loss_count_2","co_applicant_bureau_write_off_count_2","co_applicant_bureau_settlement_count_2","co_applicant_bureau_suit_filed_count_2","co_applicant_bureau_willful_default_count_2","co_applicant_restructured_count_2","co_applicant_enquiries_last_3_months_2","co_applicant_active_credit_lines_count_2","borrower_maturity_age"],"payload":{"grade":{"rules":{"Blacksoil-Navdhan":{"rule":[{"description":["Blacksoil Age >=21 and <=60 pass else reject"],"key":"age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Borrower Maturity Age"],"key":"borrower_maturity_age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 2"],"key":"co_applicant_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 1"],"key":"co_applicant_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil gender Male - \"Male - approve, If female then check marital status, If Female then check else ignore this rule Marital Status- Reject single women as primary borrower"],"key":"gender","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_1 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Overdue Amount\t<=1000, pass"],"key":"overdue_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (0-6 Months) if\t<3 pass"],"key":"dpd_0_6_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Business Vintage (Years) - >=3 years else reject"],"key":"business_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 2 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil tenure - <=36 months else reject"],"key":"tenure","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Borrower Bureau Score (upto 3 lakh loan amount, >=650 else reject) or Loan Amount >3 Lakh and If score >700 pass else reject"],"key":"bureau_score","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Vintage (Years) >=3 years else reject"],"key":"residence_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Bank Statement 6M, Minimum 6 months"],"key":"bank_statement_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 1 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_2 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Active Credit Lines Count - Value\t<=3 pass"],"key":"active_credit_lines_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (6-12 Months) if <2 pass"],"key":"dpd_6_12_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Applicant NTC, pass if no"],"key":"applicant_ntc","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Cheque Bounce Count 6M,No bounce in last 6 months, pass"],"key":"cheque_bounce_count_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Enquiries Last 3 Months\tValue\t<=5 pass"],"key":"enquiries_last_3_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence to Branch Distance (km) - <=30 KM from branch else reject"],"key":"residence_to_branch_distance_km","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Loan Amount - <=4,00,000 else reject"],"key":"loan_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Ownership - Owned/Ancestral/Rent Free else reject"],"key":"residence_ownership","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Foir foir <= 50% pass else fail"],"key":"foir","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - 1. Expansion of existing business. 2. Purchase of additional stock / raw material / working capital 3. Purchase of machinery/equipment 4. Refinancing of existing loans in case of an existing Navadhan customer"],"key":"loan_utilization","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil bureau_loss_count > 0 fail else pass"],"key":"bureau_loss_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_dbt_count > 0 reject else pass"],"key":"bureau_dbt_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_sub_count any value received > 0 reject else pass"],"key":"bureau_sub_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_write_off_count < 1000 pass else reject"],"key":"bureau_write_off_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_settlement_count > 0 reject else pass"],"key":"bureau_settlement_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}}],"payload":{"application_id":"MP2408","age":39,"gender":"female","marital_status":"married","applicant_ntc":"false","household_monthly_income":88800,"household_annual_income":1065600,"household_expenses":36460,"existing_emi_obligations":14281,"business_income":"","agriculture_income":"","dairy_income":58800,"foir":16.08,"eligible_emi":11889,"eligible_loan_amount":210673,"loan_utilization":"purchase of cattle","name_of_bureau":"credit bureau","bureau_score":786,"bureau_pull_date":"2026-08-22","overdue_amount":0,"dpd_0_6_months":0,"bureau_sub_count":0,"bureau_dbt_count":0,"bureau_loss_count":0,"bureau_write_off_count":0,"bureau_settlement_count":0,"bureau_suit_filled_count":0,"bureau_willful_default_count":0,"restructured_count":0,"dpd_6_12_months":0,"enquiries_last_3_months":1,"active_credit_lines_count":0,"bank_statement_6m":"","cheque_bounce_count_6m":"","loan_amount":100158,"tenure":23,"interest_rate":29.43,"apr":35.94,"repayment_frequency":"12","loan_purpose":"purchase of cattle","residence_area":"","residence_vintage_years":30,"residence_ownership":"owned","residence_to_branch_distance_km":"","business_vintage_years":"","asset_fridge_value":10000,"asset_air_conditioner_value":12000,"asset_washing_machine_value":12000,"asset_tv_value":8000,"asset_smart_phone_value":20000,"co_applicant_age_1":37,"co_applicant_relationship_1":"husband","co_applicant_years_of_stay_in_current_address_1":30,"co_applicant_ntc_1":"false","co_applicant_financial_status_1":"financial","co_applicant_name_of_bureau_1":"credit bureau","co_applicant_bureau_score_1":711,"co_applicant_bureau_pull_date_1":"2026-08-21","co_applicant_overdue_amount_1":0,"co_applicant_dpd_0_6_months_1":0,"co_applicant_dpd_6_12_months_1":0,"co_applicant_bureau_sub_count_1":0,"co_applicant_bureau_dbt_count_1":0,"co_applicant_bureau_loss_count_1":0,"co_applicant_bureau_write_off_count_1":0,"co_applicant_bureau_settlement_count_1":0,"co_applicant_bureau_suit_filed_count_1":0,"co_applicant_bureau_willful_default_count_1":0,"co_applicant_restructured_count_1":0,"co_applicant_enquiries_last_3_months_1":1,"co_applicant_active_credit_lines_count_1":5,"co_applicant_age_2":36,"co_applicant_relationship_2":"brother-in-law","co_applicant_years_of_stay_in_current_address_2":30,"co_applicant_ntc_2":"true","co_applicant_financial_status_2":"financial","co_applicant_name_of_bureau_2":"credit bureau","co_applicant_bureau_score_2":0,"co_applicant_bureau_pull_date_2":"2026-08-22","co_applicant_overdue_amount_2":0,"co_applicant_dpd_0_6_months_2":0,"co_applicant_dpd_6_12_months_2":0,"co_applicant_bureau_sub_count_2":0,"co_applicant_bureau_dbt_count_2":0,"co_applicant_bureau_loss_count_2":0,"co_applicant_bureau_write_off_count_2":0,"co_applicant_bureau_settlement_count_2":0,"co_applicant_bureau_suit_filed_count_2":0,"co_applicant_bureau_willful_default_count_2":0,"co_applicant_restructured_count_2":0,"co_applicant_enquiries_last_3_months_2":1,"co_applicant_active_credit_lines_count_2":0,"borrower_maturity_age":40}}}}}} [2026-08-25 11:35:01] ERROR: api.transport_failed {"url":"http://localhost:8889/","error":"cURL error 7: Failed to connect to localhost port 8889 after 0 ms: Couldn't connect to server (see https://curl.haxx.se/libcurl/c/libcurl-errors.html)"} [2026-08-25 11:35:01] INFO: row.api_response {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":1,"vendor_loan_id":49,"http_status":null,"ok":false,"duration_ms":5,"response":null,"error":"Decision API request failed: cURL error 7: Failed to connect to localhost port 8889 after 0 ms: Couldn't connect to server (see https://curl.haxx.se/libcurl/c/libcurl-errors.html)"} [2026-08-25 11:35:01] INFO: row.bre_decision_saved {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":1,"vendor_loan_id":49,"bre_decision_id":807,"status":"api_failed","decision":null} [2026-08-25 11:35:01] INFO: row.start {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":2,"application_id":"GJ2508"} [2026-08-25 11:35:01] INFO: row.lead_created {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":2,"application_id":"GJ2508","vendor_loan_id":50} [2026-08-25 11:35:02] INFO: row.co_applicants_saved {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":2,"vendor_loan_id":50,"count":1} [2026-08-25 11:35:02] INFO: row.decision_data_saved {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":2,"vendor_loan_id":50,"decision_keys":93} [2026-08-25 11:35:02] INFO: row.api_request {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":2,"vendor_loan_id":50,"url":"http://localhost:8889/","policies_payload":["Blacksoil-Navdhan"],"decision_keys":["application_id","age","gender","marital_status","applicant_ntc","household_monthly_income","household_annual_income","household_expenses","existing_emi_obligations","business_income","agriculture_income","dairy_income","foir","eligible_emi","eligible_loan_amount","loan_utilization","name_of_bureau","bureau_score","bureau_pull_date","overdue_amount","dpd_0_6_months","bureau_sub_count","bureau_dbt_count","bureau_loss_count","bureau_write_off_count","bureau_settlement_count","bureau_suit_filled_count","bureau_willful_default_count","restructured_count","dpd_6_12_months","enquiries_last_3_months","active_credit_lines_count","bank_statement_6m","cheque_bounce_count_6m","loan_amount","tenure","interest_rate","apr","repayment_frequency","loan_purpose","residence_area","residence_vintage_years","residence_ownership","residence_to_branch_distance_km","business_vintage_years","asset_fridge_value","asset_air_conditioner_value","asset_washing_machine_value","asset_tv_value","asset_smart_phone_value","co_applicant_age_1","co_applicant_relationship_1","co_applicant_years_of_stay_in_current_address_1","co_applicant_ntc_1","co_applicant_financial_status_1","co_applicant_name_of_bureau_1","co_applicant_bureau_score_1","co_applicant_bureau_pull_date_1","co_applicant_overdue_amount_1","co_applicant_dpd_0_6_months_1","co_applicant_dpd_6_12_months_1","co_applicant_bureau_sub_count_1","co_applicant_bureau_dbt_count_1","co_applicant_bureau_loss_count_1","co_applicant_bureau_write_off_count_1","co_applicant_bureau_settlement_count_1","co_applicant_bureau_suit_filed_count_1","co_applicant_bureau_willful_default_count_1","co_applicant_restructured_count_1","co_applicant_enquiries_last_3_months_1","co_applicant_active_credit_lines_count_1","co_applicant_age_2","co_applicant_relationship_2","co_applicant_years_of_stay_in_current_address_2","co_applicant_ntc_2","co_applicant_financial_status_2","co_applicant_name_of_bureau_2","co_applicant_bureau_score_2","co_applicant_bureau_pull_date_2","co_applicant_overdue_amount_2","co_applicant_dpd_0_6_months_2","co_applicant_dpd_6_12_months_2","co_applicant_bureau_sub_count_2","co_applicant_bureau_dbt_count_2","co_applicant_bureau_loss_count_2","co_applicant_bureau_write_off_count_2","co_applicant_bureau_settlement_count_2","co_applicant_bureau_suit_filed_count_2","co_applicant_bureau_willful_default_count_2","co_applicant_restructured_count_2","co_applicant_enquiries_last_3_months_2","co_applicant_active_credit_lines_count_2","borrower_maturity_age"],"payload":{"grade":{"rules":{"Blacksoil-Navdhan":{"rule":[{"description":["Blacksoil Age >=21 and <=60 pass else reject"],"key":"age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Borrower Maturity Age"],"key":"borrower_maturity_age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 2"],"key":"co_applicant_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 1"],"key":"co_applicant_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil gender Male - \"Male - approve, If female then check marital status, If Female then check else ignore this rule Marital Status- Reject single women as primary borrower"],"key":"gender","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_1 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Overdue Amount\t<=1000, pass"],"key":"overdue_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (0-6 Months) if\t<3 pass"],"key":"dpd_0_6_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Business Vintage (Years) - >=3 years else reject"],"key":"business_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 2 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil tenure - <=36 months else reject"],"key":"tenure","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Borrower Bureau Score (upto 3 lakh loan amount, >=650 else reject) or Loan Amount >3 Lakh and If score >700 pass else reject"],"key":"bureau_score","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Vintage (Years) >=3 years else reject"],"key":"residence_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Bank Statement 6M, Minimum 6 months"],"key":"bank_statement_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 1 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_2 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Active Credit Lines Count - Value\t<=3 pass"],"key":"active_credit_lines_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (6-12 Months) if <2 pass"],"key":"dpd_6_12_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Applicant NTC, pass if no"],"key":"applicant_ntc","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Cheque Bounce Count 6M,No bounce in last 6 months, pass"],"key":"cheque_bounce_count_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Enquiries Last 3 Months\tValue\t<=5 pass"],"key":"enquiries_last_3_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence to Branch Distance (km) - <=30 KM from branch else reject"],"key":"residence_to_branch_distance_km","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Loan Amount - <=4,00,000 else reject"],"key":"loan_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Ownership - Owned/Ancestral/Rent Free else reject"],"key":"residence_ownership","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Foir foir <= 50% pass else fail"],"key":"foir","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - 1. Expansion of existing business. 2. Purchase of additional stock / raw material / working capital 3. Purchase of machinery/equipment 4. Refinancing of existing loans in case of an existing Navadhan customer"],"key":"loan_utilization","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil bureau_loss_count > 0 fail else pass"],"key":"bureau_loss_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_dbt_count > 0 reject else pass"],"key":"bureau_dbt_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_sub_count any value received > 0 reject else pass"],"key":"bureau_sub_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_write_off_count < 1000 pass else reject"],"key":"bureau_write_off_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_settlement_count > 0 reject else pass"],"key":"bureau_settlement_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}}],"payload":{"application_id":"GJ2508","age":37,"gender":"female","marital_status":"married","applicant_ntc":"false","household_monthly_income":53203,"household_annual_income":638436,"household_expenses":19846,"existing_emi_obligations":8889,"business_income":"","agriculture_income":11083,"dairy_income":42120,"foir":16.71,"eligible_emi":7789,"eligible_loan_amount":138030,"loan_utilization":"purchase of cattle","name_of_bureau":"credit bureau","bureau_score":745,"bureau_pull_date":"2026-08-22","overdue_amount":0,"dpd_0_6_months":0,"bureau_sub_count":0,"bureau_dbt_count":0,"bureau_loss_count":0,"bureau_write_off_count":0,"bureau_settlement_count":0,"bureau_suit_filled_count":0,"bureau_willful_default_count":0,"restructured_count":0,"dpd_6_12_months":0,"enquiries_last_3_months":3,"active_credit_lines_count":1,"bank_statement_6m":"","cheque_bounce_count_6m":"","loan_amount":100000,"tenure":23,"interest_rate":31,"apr":37.61,"repayment_frequency":"12","loan_purpose":"purchase of cattle","residence_area":"","residence_vintage_years":35,"residence_ownership":"owned","residence_to_branch_distance_km":11,"business_vintage_years":"","asset_fridge_value":0,"asset_air_conditioner_value":0,"asset_washing_machine_value":0,"asset_tv_value":8000,"asset_smart_phone_value":20000,"co_applicant_age_1":44,"co_applicant_relationship_1":"husband","co_applicant_years_of_stay_in_current_address_1":35,"co_applicant_ntc_1":"false","co_applicant_financial_status_1":"financial","co_applicant_name_of_bureau_1":"credit bureau","co_applicant_bureau_score_1":741,"co_applicant_bureau_pull_date_1":"2026-08-22","co_applicant_overdue_amount_1":0,"co_applicant_dpd_0_6_months_1":0,"co_applicant_dpd_6_12_months_1":0,"co_applicant_bureau_sub_count_1":0,"co_applicant_bureau_dbt_count_1":0,"co_applicant_bureau_loss_count_1":0,"co_applicant_bureau_write_off_count_1":0,"co_applicant_bureau_settlement_count_1":0,"co_applicant_bureau_suit_filed_count_1":0,"co_applicant_bureau_willful_default_count_1":0,"co_applicant_restructured_count_1":0,"co_applicant_enquiries_last_3_months_1":2,"co_applicant_active_credit_lines_count_1":1,"co_applicant_age_2":"","co_applicant_relationship_2":"","co_applicant_years_of_stay_in_current_address_2":"","co_applicant_ntc_2":"","co_applicant_financial_status_2":"","co_applicant_name_of_bureau_2":"","co_applicant_bureau_score_2":"","co_applicant_bureau_pull_date_2":"","co_applicant_overdue_amount_2":"","co_applicant_dpd_0_6_months_2":"","co_applicant_dpd_6_12_months_2":"","co_applicant_bureau_sub_count_2":"","co_applicant_bureau_dbt_count_2":"","co_applicant_bureau_loss_count_2":"","co_applicant_bureau_write_off_count_2":"","co_applicant_bureau_settlement_count_2":"","co_applicant_bureau_suit_filed_count_2":"","co_applicant_bureau_willful_default_count_2":"","co_applicant_restructured_count_2":"","co_applicant_enquiries_last_3_months_2":"","co_applicant_active_credit_lines_count_2":"","borrower_maturity_age":38}}}}}} [2026-08-25 11:35:02] ERROR: api.transport_failed {"url":"http://localhost:8889/","error":"cURL error 7: Failed to connect to localhost port 8889 after 0 ms: Couldn't connect to server (see https://curl.haxx.se/libcurl/c/libcurl-errors.html)"} [2026-08-25 11:35:02] INFO: row.api_response {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":2,"vendor_loan_id":50,"http_status":null,"ok":false,"duration_ms":1,"response":null,"error":"Decision API request failed: cURL error 7: Failed to connect to localhost port 8889 after 0 ms: Couldn't connect to server (see https://curl.haxx.se/libcurl/c/libcurl-errors.html)"} [2026-08-25 11:35:02] INFO: row.bre_decision_saved {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":2,"vendor_loan_id":50,"bre_decision_id":808,"status":"api_failed","decision":null} [2026-08-25 11:35:02] INFO: row.start {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":3,"application_id":"MP2108"} [2026-08-25 11:35:02] INFO: row.lead_created {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":3,"application_id":"MP2108","vendor_loan_id":51} [2026-08-25 11:35:02] INFO: row.co_applicants_saved {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":3,"vendor_loan_id":51,"count":1} [2026-08-25 11:35:02] INFO: row.decision_data_saved {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":3,"vendor_loan_id":51,"decision_keys":93} [2026-08-25 11:35:02] INFO: row.api_request {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":3,"vendor_loan_id":51,"url":"http://localhost:8889/","policies_payload":["Blacksoil-Navdhan"],"decision_keys":["application_id","age","gender","marital_status","applicant_ntc","household_monthly_income","household_annual_income","household_expenses","existing_emi_obligations","business_income","agriculture_income","dairy_income","foir","eligible_emi","eligible_loan_amount","loan_utilization","name_of_bureau","bureau_score","bureau_pull_date","overdue_amount","dpd_0_6_months","bureau_sub_count","bureau_dbt_count","bureau_loss_count","bureau_write_off_count","bureau_settlement_count","bureau_suit_filled_count","bureau_willful_default_count","restructured_count","dpd_6_12_months","enquiries_last_3_months","active_credit_lines_count","bank_statement_6m","cheque_bounce_count_6m","loan_amount","tenure","interest_rate","apr","repayment_frequency","loan_purpose","residence_area","residence_vintage_years","residence_ownership","residence_to_branch_distance_km","business_vintage_years","asset_fridge_value","asset_air_conditioner_value","asset_washing_machine_value","asset_tv_value","asset_smart_phone_value","co_applicant_age_1","co_applicant_relationship_1","co_applicant_years_of_stay_in_current_address_1","co_applicant_ntc_1","co_applicant_financial_status_1","co_applicant_name_of_bureau_1","co_applicant_bureau_score_1","co_applicant_bureau_pull_date_1","co_applicant_overdue_amount_1","co_applicant_dpd_0_6_months_1","co_applicant_dpd_6_12_months_1","co_applicant_bureau_sub_count_1","co_applicant_bureau_dbt_count_1","co_applicant_bureau_loss_count_1","co_applicant_bureau_write_off_count_1","co_applicant_bureau_settlement_count_1","co_applicant_bureau_suit_filed_count_1","co_applicant_bureau_willful_default_count_1","co_applicant_restructured_count_1","co_applicant_enquiries_last_3_months_1","co_applicant_active_credit_lines_count_1","co_applicant_age_2","co_applicant_relationship_2","co_applicant_years_of_stay_in_current_address_2","co_applicant_ntc_2","co_applicant_financial_status_2","co_applicant_name_of_bureau_2","co_applicant_bureau_score_2","co_applicant_bureau_pull_date_2","co_applicant_overdue_amount_2","co_applicant_dpd_0_6_months_2","co_applicant_dpd_6_12_months_2","co_applicant_bureau_sub_count_2","co_applicant_bureau_dbt_count_2","co_applicant_bureau_loss_count_2","co_applicant_bureau_write_off_count_2","co_applicant_bureau_settlement_count_2","co_applicant_bureau_suit_filed_count_2","co_applicant_bureau_willful_default_count_2","co_applicant_restructured_count_2","co_applicant_enquiries_last_3_months_2","co_applicant_active_credit_lines_count_2","borrower_maturity_age"],"payload":{"grade":{"rules":{"Blacksoil-Navdhan":{"rule":[{"description":["Blacksoil Age >=21 and <=60 pass else reject"],"key":"age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Borrower Maturity Age"],"key":"borrower_maturity_age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 2"],"key":"co_applicant_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 1"],"key":"co_applicant_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil gender Male - \"Male - approve, If female then check marital status, If Female then check else ignore this rule Marital Status- Reject single women as primary borrower"],"key":"gender","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_1 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Overdue Amount\t<=1000, pass"],"key":"overdue_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (0-6 Months) if\t<3 pass"],"key":"dpd_0_6_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Business Vintage (Years) - >=3 years else reject"],"key":"business_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 2 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil tenure - <=36 months else reject"],"key":"tenure","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Borrower Bureau Score (upto 3 lakh loan amount, >=650 else reject) or Loan Amount >3 Lakh and If score >700 pass else reject"],"key":"bureau_score","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Vintage (Years) >=3 years else reject"],"key":"residence_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Bank Statement 6M, Minimum 6 months"],"key":"bank_statement_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 1 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_2 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Active Credit Lines Count - Value\t<=3 pass"],"key":"active_credit_lines_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (6-12 Months) if <2 pass"],"key":"dpd_6_12_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Applicant NTC, pass if no"],"key":"applicant_ntc","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Cheque Bounce Count 6M,No bounce in last 6 months, pass"],"key":"cheque_bounce_count_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Enquiries Last 3 Months\tValue\t<=5 pass"],"key":"enquiries_last_3_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence to Branch Distance (km) - <=30 KM from branch else reject"],"key":"residence_to_branch_distance_km","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Loan Amount - <=4,00,000 else reject"],"key":"loan_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Ownership - Owned/Ancestral/Rent Free else reject"],"key":"residence_ownership","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Foir foir <= 50% pass else fail"],"key":"foir","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - 1. Expansion of existing business. 2. Purchase of additional stock / raw material / working capital 3. Purchase of machinery/equipment 4. Refinancing of existing loans in case of an existing Navadhan customer"],"key":"loan_utilization","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil bureau_loss_count > 0 fail else pass"],"key":"bureau_loss_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_dbt_count > 0 reject else pass"],"key":"bureau_dbt_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_sub_count any value received > 0 reject else pass"],"key":"bureau_sub_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_write_off_count < 1000 pass else reject"],"key":"bureau_write_off_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_settlement_count > 0 reject else pass"],"key":"bureau_settlement_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}}],"payload":{"application_id":"MP2108","age":54,"gender":"male","marital_status":"married","applicant_ntc":"false","household_monthly_income":34500,"household_annual_income":414000,"household_expenses":2450,"existing_emi_obligations":9840,"business_income":"","agriculture_income":"","dairy_income":"","foir":28.52,"eligible_emi":6185,"eligible_loan_amount":109598,"loan_utilization":"working capital","name_of_bureau":"credit bureau","bureau_score":793,"bureau_pull_date":"2026-08-21","overdue_amount":0,"dpd_0_6_months":0,"bureau_sub_count":0,"bureau_dbt_count":0,"bureau_loss_count":0,"bureau_write_off_count":0,"bureau_settlement_count":0,"bureau_suit_filled_count":0,"bureau_willful_default_count":0,"restructured_count":0,"dpd_6_12_months":0,"enquiries_last_3_months":1,"active_credit_lines_count":0,"bank_statement_6m":"","cheque_bounce_count_6m":"","loan_amount":100158,"tenure":23,"interest_rate":29.43,"apr":34.31,"repayment_frequency":"12","loan_purpose":"working capital","residence_area":"","residence_vintage_years":15,"residence_ownership":"owned","residence_to_branch_distance_km":11,"business_vintage_years":"","asset_fridge_value":10000,"asset_air_conditioner_value":12000,"asset_washing_machine_value":12000,"asset_tv_value":8000,"asset_smart_phone_value":20000,"co_applicant_age_1":50,"co_applicant_relationship_1":"wife","co_applicant_years_of_stay_in_current_address_1":15,"co_applicant_ntc_1":"false","co_applicant_financial_status_1":"financial","co_applicant_name_of_bureau_1":"credit bureau","co_applicant_bureau_score_1":644,"co_applicant_bureau_pull_date_1":"2026-08-21","co_applicant_overdue_amount_1":0,"co_applicant_dpd_0_6_months_1":0,"co_applicant_dpd_6_12_months_1":0,"co_applicant_bureau_sub_count_1":0,"co_applicant_bureau_dbt_count_1":1,"co_applicant_bureau_loss_count_1":0,"co_applicant_bureau_write_off_count_1":0,"co_applicant_bureau_settlement_count_1":0,"co_applicant_bureau_suit_filed_count_1":0,"co_applicant_bureau_willful_default_count_1":0,"co_applicant_restructured_count_1":0,"co_applicant_enquiries_last_3_months_1":5,"co_applicant_active_credit_lines_count_1":3,"co_applicant_age_2":"","co_applicant_relationship_2":"","co_applicant_years_of_stay_in_current_address_2":"","co_applicant_ntc_2":"","co_applicant_financial_status_2":"","co_applicant_name_of_bureau_2":"","co_applicant_bureau_score_2":"","co_applicant_bureau_pull_date_2":"","co_applicant_overdue_amount_2":"","co_applicant_dpd_0_6_months_2":"","co_applicant_dpd_6_12_months_2":"","co_applicant_bureau_sub_count_2":"","co_applicant_bureau_dbt_count_2":"","co_applicant_bureau_loss_count_2":"","co_applicant_bureau_write_off_count_2":"","co_applicant_bureau_settlement_count_2":"","co_applicant_bureau_suit_filed_count_2":"","co_applicant_bureau_willful_default_count_2":"","co_applicant_restructured_count_2":"","co_applicant_enquiries_last_3_months_2":"","co_applicant_active_credit_lines_count_2":"","borrower_maturity_age":55}}}}}} [2026-08-25 11:35:02] ERROR: api.transport_failed {"url":"http://localhost:8889/","error":"cURL error 7: Failed to connect to localhost port 8889 after 0 ms: Couldn't connect to server (see https://curl.haxx.se/libcurl/c/libcurl-errors.html)"} [2026-08-25 11:35:02] INFO: row.api_response {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":3,"vendor_loan_id":51,"http_status":null,"ok":false,"duration_ms":4,"response":null,"error":"Decision API request failed: cURL error 7: Failed to connect to localhost port 8889 after 0 ms: Couldn't connect to server (see https://curl.haxx.se/libcurl/c/libcurl-errors.html)"} [2026-08-25 11:35:02] INFO: row.bre_decision_saved {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":3,"vendor_loan_id":51,"bre_decision_id":809,"status":"api_failed","decision":null} [2026-08-25 11:35:02] INFO: row.start {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":4,"application_id":"MP2008"} [2026-08-25 11:35:02] INFO: row.lead_created {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":4,"application_id":"MP2008","vendor_loan_id":52} [2026-08-25 11:35:02] INFO: row.co_applicants_saved {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":4,"vendor_loan_id":52,"count":1} [2026-08-25 11:35:02] INFO: row.decision_data_saved {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":4,"vendor_loan_id":52,"decision_keys":93} [2026-08-25 11:35:02] INFO: row.api_request {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":4,"vendor_loan_id":52,"url":"http://localhost:8889/","policies_payload":["Blacksoil-Navdhan"],"decision_keys":["application_id","age","gender","marital_status","applicant_ntc","household_monthly_income","household_annual_income","household_expenses","existing_emi_obligations","business_income","agriculture_income","dairy_income","foir","eligible_emi","eligible_loan_amount","loan_utilization","name_of_bureau","bureau_score","bureau_pull_date","overdue_amount","dpd_0_6_months","bureau_sub_count","bureau_dbt_count","bureau_loss_count","bureau_write_off_count","bureau_settlement_count","bureau_suit_filled_count","bureau_willful_default_count","restructured_count","dpd_6_12_months","enquiries_last_3_months","active_credit_lines_count","bank_statement_6m","cheque_bounce_count_6m","loan_amount","tenure","interest_rate","apr","repayment_frequency","loan_purpose","residence_area","residence_vintage_years","residence_ownership","residence_to_branch_distance_km","business_vintage_years","asset_fridge_value","asset_air_conditioner_value","asset_washing_machine_value","asset_tv_value","asset_smart_phone_value","co_applicant_age_1","co_applicant_relationship_1","co_applicant_years_of_stay_in_current_address_1","co_applicant_ntc_1","co_applicant_financial_status_1","co_applicant_name_of_bureau_1","co_applicant_bureau_score_1","co_applicant_bureau_pull_date_1","co_applicant_overdue_amount_1","co_applicant_dpd_0_6_months_1","co_applicant_dpd_6_12_months_1","co_applicant_bureau_sub_count_1","co_applicant_bureau_dbt_count_1","co_applicant_bureau_loss_count_1","co_applicant_bureau_write_off_count_1","co_applicant_bureau_settlement_count_1","co_applicant_bureau_suit_filed_count_1","co_applicant_bureau_willful_default_count_1","co_applicant_restructured_count_1","co_applicant_enquiries_last_3_months_1","co_applicant_active_credit_lines_count_1","co_applicant_age_2","co_applicant_relationship_2","co_applicant_years_of_stay_in_current_address_2","co_applicant_ntc_2","co_applicant_financial_status_2","co_applicant_name_of_bureau_2","co_applicant_bureau_score_2","co_applicant_bureau_pull_date_2","co_applicant_overdue_amount_2","co_applicant_dpd_0_6_months_2","co_applicant_dpd_6_12_months_2","co_applicant_bureau_sub_count_2","co_applicant_bureau_dbt_count_2","co_applicant_bureau_loss_count_2","co_applicant_bureau_write_off_count_2","co_applicant_bureau_settlement_count_2","co_applicant_bureau_suit_filed_count_2","co_applicant_bureau_willful_default_count_2","co_applicant_restructured_count_2","co_applicant_enquiries_last_3_months_2","co_applicant_active_credit_lines_count_2","borrower_maturity_age"],"payload":{"grade":{"rules":{"Blacksoil-Navdhan":{"rule":[{"description":["Blacksoil Age >=21 and <=60 pass else reject"],"key":"age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Borrower Maturity Age"],"key":"borrower_maturity_age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 2"],"key":"co_applicant_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 1"],"key":"co_applicant_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil gender Male - \"Male - approve, If female then check marital status, If Female then check else ignore this rule Marital Status- Reject single women as primary borrower"],"key":"gender","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_1 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Overdue Amount\t<=1000, pass"],"key":"overdue_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (0-6 Months) if\t<3 pass"],"key":"dpd_0_6_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Business Vintage (Years) - >=3 years else reject"],"key":"business_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 2 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil tenure - <=36 months else reject"],"key":"tenure","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Borrower Bureau Score (upto 3 lakh loan amount, >=650 else reject) or Loan Amount >3 Lakh and If score >700 pass else reject"],"key":"bureau_score","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Vintage (Years) >=3 years else reject"],"key":"residence_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Bank Statement 6M, Minimum 6 months"],"key":"bank_statement_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 1 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_2 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Active Credit Lines Count - Value\t<=3 pass"],"key":"active_credit_lines_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (6-12 Months) if <2 pass"],"key":"dpd_6_12_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Applicant NTC, pass if no"],"key":"applicant_ntc","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Cheque Bounce Count 6M,No bounce in last 6 months, pass"],"key":"cheque_bounce_count_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Enquiries Last 3 Months\tValue\t<=5 pass"],"key":"enquiries_last_3_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence to Branch Distance (km) - <=30 KM from branch else reject"],"key":"residence_to_branch_distance_km","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Loan Amount - <=4,00,000 else reject"],"key":"loan_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Ownership - Owned/Ancestral/Rent Free else reject"],"key":"residence_ownership","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Foir foir <= 50% pass else fail"],"key":"foir","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - 1. Expansion of existing business. 2. Purchase of additional stock / raw material / working capital 3. Purchase of machinery/equipment 4. Refinancing of existing loans in case of an existing Navadhan customer"],"key":"loan_utilization","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil bureau_loss_count > 0 fail else pass"],"key":"bureau_loss_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_dbt_count > 0 reject else pass"],"key":"bureau_dbt_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_sub_count any value received > 0 reject else pass"],"key":"bureau_sub_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_write_off_count < 1000 pass else reject"],"key":"bureau_write_off_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_settlement_count > 0 reject else pass"],"key":"bureau_settlement_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}}],"payload":{"application_id":"MP2008","age":43,"gender":"male","marital_status":"married","applicant_ntc":"false","household_monthly_income":43000,"household_annual_income":516000,"household_expenses":14500,"existing_emi_obligations":4951,"business_income":"","agriculture_income":"","dairy_income":"","foir":11.51,"eligible_emi":9299,"eligible_loan_amount":164778,"loan_utilization":"working capital","name_of_bureau":"credit bureau","bureau_score":749,"bureau_pull_date":"2026-08-20","overdue_amount":0,"dpd_0_6_months":0,"bureau_sub_count":0,"bureau_dbt_count":0,"bureau_loss_count":0,"bureau_write_off_count":0,"bureau_settlement_count":0,"bureau_suit_filled_count":0,"bureau_willful_default_count":0,"restructured_count":0,"dpd_6_12_months":0,"enquiries_last_3_months":0,"active_credit_lines_count":1,"bank_statement_6m":"","cheque_bounce_count_6m":"","loan_amount":102695,"tenure":23,"interest_rate":31.4,"apr":36.58,"repayment_frequency":"12","loan_purpose":"working capital","residence_area":"","residence_vintage_years":20,"residence_ownership":"owned","residence_to_branch_distance_km":20,"business_vintage_years":"","asset_fridge_value":10000,"asset_air_conditioner_value":12000,"asset_washing_machine_value":12000,"asset_tv_value":8000,"asset_smart_phone_value":20000,"co_applicant_age_1":39,"co_applicant_relationship_1":"wife","co_applicant_years_of_stay_in_current_address_1":20,"co_applicant_ntc_1":"false","co_applicant_financial_status_1":"financial","co_applicant_name_of_bureau_1":"credit bureau","co_applicant_bureau_score_1":792,"co_applicant_bureau_pull_date_1":"2026-08-20","co_applicant_overdue_amount_1":0,"co_applicant_dpd_0_6_months_1":0,"co_applicant_dpd_6_12_months_1":0,"co_applicant_bureau_sub_count_1":0,"co_applicant_bureau_dbt_count_1":0,"co_applicant_bureau_loss_count_1":0,"co_applicant_bureau_write_off_count_1":0,"co_applicant_bureau_settlement_count_1":0,"co_applicant_bureau_suit_filed_count_1":0,"co_applicant_bureau_willful_default_count_1":0,"co_applicant_restructured_count_1":0,"co_applicant_enquiries_last_3_months_1":0,"co_applicant_active_credit_lines_count_1":0,"co_applicant_age_2":"","co_applicant_relationship_2":"","co_applicant_years_of_stay_in_current_address_2":"","co_applicant_ntc_2":"","co_applicant_financial_status_2":"","co_applicant_name_of_bureau_2":"","co_applicant_bureau_score_2":"","co_applicant_bureau_pull_date_2":"","co_applicant_overdue_amount_2":"","co_applicant_dpd_0_6_months_2":"","co_applicant_dpd_6_12_months_2":"","co_applicant_bureau_sub_count_2":"","co_applicant_bureau_dbt_count_2":"","co_applicant_bureau_loss_count_2":"","co_applicant_bureau_write_off_count_2":"","co_applicant_bureau_settlement_count_2":"","co_applicant_bureau_suit_filed_count_2":"","co_applicant_bureau_willful_default_count_2":"","co_applicant_restructured_count_2":"","co_applicant_enquiries_last_3_months_2":"","co_applicant_active_credit_lines_count_2":"","borrower_maturity_age":44}}}}}} [2026-08-25 11:35:02] ERROR: api.transport_failed {"url":"http://localhost:8889/","error":"cURL error 7: Failed to connect to localhost port 8889 after 0 ms: Couldn't connect to server (see https://curl.haxx.se/libcurl/c/libcurl-errors.html)"} [2026-08-25 11:35:02] INFO: row.api_response {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":4,"vendor_loan_id":52,"http_status":null,"ok":false,"duration_ms":1,"response":null,"error":"Decision API request failed: cURL error 7: Failed to connect to localhost port 8889 after 0 ms: Couldn't connect to server (see https://curl.haxx.se/libcurl/c/libcurl-errors.html)"} [2026-08-25 11:35:02] INFO: row.bre_decision_saved {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","row":4,"vendor_loan_id":52,"bre_decision_id":810,"status":"api_failed","decision":null} [2026-08-25 11:35:02] INFO: evaluate.completed {"batch_id":"21f0b8db-15b4-44e9-8288-7c9a57238c6c","summary":{"total":4,"succeeded":0,"failed":4,"validation_failed":0,"skipped_duplicate":0}} [2026-08-25 11:43:59] INFO: evaluate.received {"batch_id":"179186c9-66a3-4089-9b4d-f91c3ec7b41d","has_file":true,"filename":"temp_2026-08-25_10:56:39_1787635599_co_lending_loan_decision.xlsx","size":17406,"mime":null,"ip":null} [2026-08-25 11:44:00] INFO: import.sheet_parsed {"batch_id":"179186c9-66a3-4089-9b4d-f91c3ec7b41d","rows_seen":4,"rows_kept":4,"rows_skipped":0} [2026-08-25 11:44:00] INFO: evaluate.excel_parsed {"batch_id":"179186c9-66a3-4089-9b4d-f91c3ec7b41d","row_count":4} [2026-08-25 11:44:00] INFO: policy.request {"batch_id":"179186c9-66a3-4089-9b4d-f91c3ec7b41d","url":"http://localhost:7000/api/live/policy/policy-d9204242"} [2026-08-25 11:44:00] INFO: policy.response {"batch_id":"179186c9-66a3-4089-9b4d-f91c3ec7b41d","ok":true,"http_status":200,"duration_ms":662,"response":{"grade":{"rules":{"Blacksoil-Navdhan":{"rule":[{"description":["Blacksoil Age >=21 and <=60 pass else reject"],"key":"age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Borrower Maturity Age"],"key":"borrower_maturity_age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 2"],"key":"co_applicant_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 1"],"key":"co_applicant_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil gender Male - \"Male - approve, If female then check marital status, If Female then check else ignore this rule Marital Status- Reject single women as primary borrower"],"key":"gender","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_1 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Overdue Amount\t<=1000, pass"],"key":"overdue_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (0-6 Months) if\t<3 pass"],"key":"dpd_0_6_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Business Vintage (Years) - >=3 years else reject"],"key":"business_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 2 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil tenure - <=36 months else reject"],"key":"tenure","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Borrower Bureau Score (upto 3 lakh loan amount, >=650 else reject) or Loan Amount >3 Lakh and If score >700 pass else reject"],"key":"bureau_score","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Vintage (Years) >=3 years else reject"],"key":"residence_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Bank Statement 6M, Minimum 6 months"],"key":"bank_statement_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 1 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_2 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Active Credit Lines Count - Value\t<=3 pass"],"key":"active_credit_lines_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (6-12 Months) if <2 pass"],"key":"dpd_6_12_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Applicant NTC, pass if no"],"key":"applicant_ntc","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Cheque Bounce Count 6M,No bounce in last 6 months, pass"],"key":"cheque_bounce_count_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Enquiries Last 3 Months\tValue\t<=5 pass"],"key":"enquiries_last_3_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence to Branch Distance (km) - <=30 KM from branch else reject"],"key":"residence_to_branch_distance_km","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Loan Amount - <=4,00,000 else reject"],"key":"loan_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Ownership - Owned/Ancestral/Rent Free else reject"],"key":"residence_ownership","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Foir foir <= 50% pass else fail"],"key":"foir","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - 1. Expansion of existing business. 2. Purchase of additional stock / raw material / working capital 3. Purchase of machinery/equipment 4. Refinancing of existing loans in case of an existing Navadhan customer"],"key":"loan_utilization","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil bureau_loss_count > 0 fail else pass"],"key":"bureau_loss_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_dbt_count > 0 reject else pass"],"key":"bureau_dbt_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_sub_count any value received > 0 reject else pass"],"key":"bureau_sub_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_write_off_count < 1000 pass else reject"],"key":"bureau_write_off_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_settlement_count > 0 reject else pass"],"key":"bureau_settlement_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}}]}}}},"error":null} [2026-08-25 11:44:00] INFO: policy.parsed {"batch_id":"179186c9-66a3-4089-9b4d-f91c3ec7b41d","policy_count":1,"policy_names":["Blacksoil-Navdhan"]} [2026-08-25 11:44:00] INFO: row.start {"batch_id":"179186c9-66a3-4089-9b4d-f91c3ec7b41d","row":1,"application_id":"MP2408"} [2026-08-25 11:44:00] INFO: row.bre_already_executed {"batch_id":"179186c9-66a3-4089-9b4d-f91c3ec7b41d","row":1,"application_id":"MP2408","vendor_loan_id":49,"bre_decision_id":671,"decision":null} [2026-08-25 11:44:00] INFO: row.start {"batch_id":"179186c9-66a3-4089-9b4d-f91c3ec7b41d","row":2,"application_id":"GJ2508"} [2026-08-25 11:44:00] INFO: row.bre_already_executed {"batch_id":"179186c9-66a3-4089-9b4d-f91c3ec7b41d","row":2,"application_id":"GJ2508","vendor_loan_id":50,"bre_decision_id":672,"decision":null} [2026-08-25 11:44:00] INFO: row.start {"batch_id":"179186c9-66a3-4089-9b4d-f91c3ec7b41d","row":3,"application_id":"MP2108"} [2026-08-25 11:44:00] INFO: row.bre_already_executed {"batch_id":"179186c9-66a3-4089-9b4d-f91c3ec7b41d","row":3,"application_id":"MP2108","vendor_loan_id":51,"bre_decision_id":673,"decision":null} [2026-08-25 11:44:00] INFO: row.start {"batch_id":"179186c9-66a3-4089-9b4d-f91c3ec7b41d","row":4,"application_id":"MP2008"} [2026-08-25 11:44:00] INFO: row.bre_already_executed {"batch_id":"179186c9-66a3-4089-9b4d-f91c3ec7b41d","row":4,"application_id":"MP2008","vendor_loan_id":52,"bre_decision_id":674,"decision":null} [2026-08-25 11:44:00] INFO: evaluate.completed {"batch_id":"179186c9-66a3-4089-9b4d-f91c3ec7b41d","summary":{"total":4,"succeeded":0,"failed":0,"validation_failed":0,"skipped_duplicate":4}} [2026-08-25 15:32:11] INFO: evaluate.received {"batch_id":"6169821e-a2e1-488e-aff0-d6fb71d5520e","has_file":true,"filename":"temp_2026-08-25_15:31:52_1787652112_co_lending_loan_decision.xlsx","size":17406,"mime":null,"ip":null} [2026-08-25 15:32:12] INFO: import.sheet_parsed {"batch_id":"6169821e-a2e1-488e-aff0-d6fb71d5520e","rows_seen":4,"rows_kept":4,"rows_skipped":0} [2026-08-25 15:32:12] INFO: evaluate.excel_parsed {"batch_id":"6169821e-a2e1-488e-aff0-d6fb71d5520e","row_count":4} [2026-08-25 15:32:12] INFO: policy.request {"batch_id":"6169821e-a2e1-488e-aff0-d6fb71d5520e","url":"http://localhost:7000/api/live/policy/policy-d9204242"} [2026-08-25 15:32:12] INFO: policy.response {"batch_id":"6169821e-a2e1-488e-aff0-d6fb71d5520e","ok":false,"http_status":500,"duration_ms":805,"response":" sqlalchemy.exc.OperationalError: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query') [SQL: SELECT live_config.id AS live_config_id, live_config.api_key AS live_config_api_key, live_config.api_secret_hash AS live_config_api_secret_hash, live_config.ip_whitelist AS live_config_ip_whitelist, live_config.enabled AS live_config_enabled, live_config.updated_at AS live_config_updated_at FROM live_config WHERE live_config.id = %(pk_1)s] [parameters: {'pk_1': 1}] (Background on this error at: https://sqlalche.me/e/20/e3q8) // Werkzeug Debugger

OperationalError

sqlalchemy.exc.OperationalError: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query') [SQL: SELECT live_config.id AS live_config_id, live_config.api_key AS live_config_api_key, live_config.api_secret_hash AS live_config_api_secret_hash, live_config.ip_whitelist AS live_config_ip_whitelist, live_config.enabled AS live_config_enabled, live_config.updated_at AS live_config_updated_at FROM live_config WHERE live_config.id = %(pk_1)s] [parameters: {'pk_1': 1}] (Background on this error at: https://sqlalche.me/e/20/e3q8)

Traceback (most recent call last)

sqlalchemy.exc.OperationalError: (pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query') [SQL: SELECT live_config.id AS live_config_id, live_config.api_key AS live_config_api_key, live_config.api_secret_hash AS live_config_api_secret_hash, live_config.ip_whitelist AS live_config_ip_whitelist, live_config.enabled AS live_config_enabled, live_config.updated_at AS live_config_updated_at FROM live_config WHERE live_config.id = %(pk_1)s] [parameters: {'pk_1': 1}] (Background on this error at: https://sqlalche.me/e/20/e3q8)

This is the Copy/Paste friendly version of the traceback.

The debugger caught an exception in your WSGI application. You can now look at the traceback which led to the error. If you enable JavaScript you can also use additional features such as code execution (if the evalex feature is enabled), automatic pasting of the exceptions and much more.
Brought to you by DON'T PANIC, your friendly Werkzeug powered traceback interpreter.

Console Locked

The console is locked and needs to be unlocked by entering the PIN. You can find the PIN printed out on the standard output of your shell that runs the server.

PIN:

","error":"Non-2xx response from policy API"} [2026-08-25 15:32:12] ERROR: evaluate.aborted_policy_unavailable {"batch_id":"6169821e-a2e1-488e-aff0-d6fb71d5520e","http_status":500,"error":"Non-2xx response from policy API"} [2026-08-25 15:35:35] INFO: evaluate.received {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","has_file":true,"filename":"temp_2026-08-25_15:35:20_1787652320_co_lending_loan_decision.xlsx","size":17398,"mime":null,"ip":null} [2026-08-25 15:35:36] INFO: import.sheet_parsed {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","rows_seen":4,"rows_kept":4,"rows_skipped":0} [2026-08-25 15:35:36] INFO: evaluate.excel_parsed {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row_count":4} [2026-08-25 15:35:36] INFO: policy.request {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","url":"http://localhost:7000/api/live/policy/policy-d9204242"} [2026-08-25 15:35:43] INFO: policy.response {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","ok":true,"http_status":200,"duration_ms":6983,"response":{"grade":{"rules":{"Blacksoil-Navdhan":{"rule":[{"description":["Blacksoil Age >=21 and <=60 pass else reject"],"key":"age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Borrower Maturity Age"],"key":"borrower_maturity_age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 2"],"key":"co_applicant_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 1"],"key":"co_applicant_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil gender Male - \"Male - approve, If female then check marital status, If Female then check else ignore this rule Marital Status- Reject single women as primary borrower"],"key":"gender","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_1 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Overdue Amount\t<=1000, pass"],"key":"overdue_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (0-6 Months) if\t<3 pass"],"key":"dpd_0_6_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Business Vintage (Years) - >=3 years else reject"],"key":"business_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 2 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil tenure - <=36 months else reject"],"key":"tenure","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Borrower Bureau Score (upto 3 lakh loan amount, >=650 else reject) or Loan Amount >3 Lakh and If score >700 pass else reject"],"key":"bureau_score","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Vintage (Years) >=3 years else reject"],"key":"residence_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Bank Statement 6M, Minimum 6 months"],"key":"bank_statement_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 1 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_2 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Active Credit Lines Count - Value\t<=3 pass"],"key":"active_credit_lines_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (6-12 Months) if <2 pass"],"key":"dpd_6_12_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Applicant NTC, pass if no"],"key":"applicant_ntc","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Cheque Bounce Count 6M,No bounce in last 6 months, pass"],"key":"cheque_bounce_count_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Enquiries Last 3 Months\tValue\t<=5 pass"],"key":"enquiries_last_3_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence to Branch Distance (km) - <=30 KM from branch else reject"],"key":"residence_to_branch_distance_km","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Loan Amount - <=4,00,000 else reject"],"key":"loan_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Ownership - Owned/Ancestral/Rent Free else reject"],"key":"residence_ownership","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Foir foir <= 50% pass else fail"],"key":"foir","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - 1. Expansion of existing business. 2. Purchase of additional stock / raw material / working capital 3. Purchase of machinery/equipment 4. Refinancing of existing loans in case of an existing Navadhan customer"],"key":"loan_utilization","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil bureau_loss_count > 0 fail else pass"],"key":"bureau_loss_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_dbt_count > 0 reject else pass"],"key":"bureau_dbt_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_sub_count any value received > 0 reject else pass"],"key":"bureau_sub_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_write_off_count < 1000 pass else reject"],"key":"bureau_write_off_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_settlement_count > 0 reject else pass"],"key":"bureau_settlement_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}}]}}}},"error":null} [2026-08-25 15:35:43] INFO: policy.parsed {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","policy_count":1,"policy_names":["Blacksoil-Navdhan"]} [2026-08-25 15:35:43] INFO: row.start {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":1,"application_id":"MP2508"} [2026-08-25 15:35:43] INFO: row.lead_created {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":1,"application_id":"MP2508","vendor_loan_id":53} [2026-08-25 15:35:43] INFO: row.co_applicants_saved {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":1,"vendor_loan_id":53,"count":2} [2026-08-25 15:35:44] INFO: row.decision_data_saved {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":1,"vendor_loan_id":53,"decision_keys":93} [2026-08-25 15:35:44] INFO: row.api_request {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":1,"vendor_loan_id":53,"url":"http://localhost:8889/","policies_payload":["Blacksoil-Navdhan"],"decision_keys":["application_id","age","gender","marital_status","applicant_ntc","household_monthly_income","household_annual_income","household_expenses","existing_emi_obligations","business_income","agriculture_income","dairy_income","foir","eligible_emi","eligible_loan_amount","loan_utilization","name_of_bureau","bureau_score","bureau_pull_date","overdue_amount","dpd_0_6_months","bureau_sub_count","bureau_dbt_count","bureau_loss_count","bureau_write_off_count","bureau_settlement_count","bureau_suit_filled_count","bureau_willful_default_count","restructured_count","dpd_6_12_months","enquiries_last_3_months","active_credit_lines_count","bank_statement_6m","cheque_bounce_count_6m","loan_amount","tenure","interest_rate","apr","repayment_frequency","loan_purpose","residence_area","residence_vintage_years","residence_ownership","residence_to_branch_distance_km","business_vintage_years","asset_fridge_value","asset_air_conditioner_value","asset_washing_machine_value","asset_tv_value","asset_smart_phone_value","co_applicant_age_1","co_applicant_relationship_1","co_applicant_years_of_stay_in_current_address_1","co_applicant_ntc_1","co_applicant_financial_status_1","co_applicant_name_of_bureau_1","co_applicant_bureau_score_1","co_applicant_bureau_pull_date_1","co_applicant_overdue_amount_1","co_applicant_dpd_0_6_months_1","co_applicant_dpd_6_12_months_1","co_applicant_bureau_sub_count_1","co_applicant_bureau_dbt_count_1","co_applicant_bureau_loss_count_1","co_applicant_bureau_write_off_count_1","co_applicant_bureau_settlement_count_1","co_applicant_bureau_suit_filed_count_1","co_applicant_bureau_willful_default_count_1","co_applicant_restructured_count_1","co_applicant_enquiries_last_3_months_1","co_applicant_active_credit_lines_count_1","co_applicant_age_2","co_applicant_relationship_2","co_applicant_years_of_stay_in_current_address_2","co_applicant_ntc_2","co_applicant_financial_status_2","co_applicant_name_of_bureau_2","co_applicant_bureau_score_2","co_applicant_bureau_pull_date_2","co_applicant_overdue_amount_2","co_applicant_dpd_0_6_months_2","co_applicant_dpd_6_12_months_2","co_applicant_bureau_sub_count_2","co_applicant_bureau_dbt_count_2","co_applicant_bureau_loss_count_2","co_applicant_bureau_write_off_count_2","co_applicant_bureau_settlement_count_2","co_applicant_bureau_suit_filed_count_2","co_applicant_bureau_willful_default_count_2","co_applicant_restructured_count_2","co_applicant_enquiries_last_3_months_2","co_applicant_active_credit_lines_count_2","borrower_maturity_age"],"payload":{"grade":{"rules":{"Blacksoil-Navdhan":{"rule":[{"description":["Blacksoil Age >=21 and <=60 pass else reject"],"key":"age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Borrower Maturity Age"],"key":"borrower_maturity_age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 2"],"key":"co_applicant_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 1"],"key":"co_applicant_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil gender Male - \"Male - approve, If female then check marital status, If Female then check else ignore this rule Marital Status- Reject single women as primary borrower"],"key":"gender","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_1 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Overdue Amount\t<=1000, pass"],"key":"overdue_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (0-6 Months) if\t<3 pass"],"key":"dpd_0_6_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Business Vintage (Years) - >=3 years else reject"],"key":"business_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 2 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil tenure - <=36 months else reject"],"key":"tenure","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Borrower Bureau Score (upto 3 lakh loan amount, >=650 else reject) or Loan Amount >3 Lakh and If score >700 pass else reject"],"key":"bureau_score","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Vintage (Years) >=3 years else reject"],"key":"residence_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Bank Statement 6M, Minimum 6 months"],"key":"bank_statement_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 1 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_2 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Active Credit Lines Count - Value\t<=3 pass"],"key":"active_credit_lines_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (6-12 Months) if <2 pass"],"key":"dpd_6_12_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Applicant NTC, pass if no"],"key":"applicant_ntc","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Cheque Bounce Count 6M,No bounce in last 6 months, pass"],"key":"cheque_bounce_count_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Enquiries Last 3 Months\tValue\t<=5 pass"],"key":"enquiries_last_3_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence to Branch Distance (km) - <=30 KM from branch else reject"],"key":"residence_to_branch_distance_km","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Loan Amount - <=4,00,000 else reject"],"key":"loan_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Ownership - Owned/Ancestral/Rent Free else reject"],"key":"residence_ownership","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Foir foir <= 50% pass else fail"],"key":"foir","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - 1. Expansion of existing business. 2. Purchase of additional stock / raw material / working capital 3. Purchase of machinery/equipment 4. Refinancing of existing loans in case of an existing Navadhan customer"],"key":"loan_utilization","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil bureau_loss_count > 0 fail else pass"],"key":"bureau_loss_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_dbt_count > 0 reject else pass"],"key":"bureau_dbt_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_sub_count any value received > 0 reject else pass"],"key":"bureau_sub_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_write_off_count < 1000 pass else reject"],"key":"bureau_write_off_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_settlement_count > 0 reject else pass"],"key":"bureau_settlement_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}}],"payload":{"application_id":"MP2508","age":39,"gender":"female","marital_status":"married","applicant_ntc":"false","household_monthly_income":88800,"household_annual_income":1065600,"household_expenses":36460,"existing_emi_obligations":14281,"business_income":"","agriculture_income":"","dairy_income":58800,"foir":16.08,"eligible_emi":11889,"eligible_loan_amount":210673,"loan_utilization":"purchase of cattle","name_of_bureau":"credit bureau","bureau_score":786,"bureau_pull_date":"2026-08-22","overdue_amount":0,"dpd_0_6_months":0,"bureau_sub_count":0,"bureau_dbt_count":0,"bureau_loss_count":0,"bureau_write_off_count":0,"bureau_settlement_count":0,"bureau_suit_filled_count":0,"bureau_willful_default_count":0,"restructured_count":0,"dpd_6_12_months":0,"enquiries_last_3_months":1,"active_credit_lines_count":0,"bank_statement_6m":"","cheque_bounce_count_6m":"","loan_amount":100158,"tenure":23,"interest_rate":29.43,"apr":35.94,"repayment_frequency":"12","loan_purpose":"purchase of cattle","residence_area":"","residence_vintage_years":30,"residence_ownership":"owned","residence_to_branch_distance_km":"","business_vintage_years":"","asset_fridge_value":10000,"asset_air_conditioner_value":12000,"asset_washing_machine_value":12000,"asset_tv_value":8000,"asset_smart_phone_value":20000,"co_applicant_age_1":37,"co_applicant_relationship_1":"husband","co_applicant_years_of_stay_in_current_address_1":30,"co_applicant_ntc_1":"false","co_applicant_financial_status_1":"financial","co_applicant_name_of_bureau_1":"credit bureau","co_applicant_bureau_score_1":711,"co_applicant_bureau_pull_date_1":"2026-08-21","co_applicant_overdue_amount_1":0,"co_applicant_dpd_0_6_months_1":0,"co_applicant_dpd_6_12_months_1":0,"co_applicant_bureau_sub_count_1":0,"co_applicant_bureau_dbt_count_1":0,"co_applicant_bureau_loss_count_1":0,"co_applicant_bureau_write_off_count_1":0,"co_applicant_bureau_settlement_count_1":0,"co_applicant_bureau_suit_filed_count_1":0,"co_applicant_bureau_willful_default_count_1":0,"co_applicant_restructured_count_1":0,"co_applicant_enquiries_last_3_months_1":1,"co_applicant_active_credit_lines_count_1":5,"co_applicant_age_2":36,"co_applicant_relationship_2":"brother-in-law","co_applicant_years_of_stay_in_current_address_2":30,"co_applicant_ntc_2":"true","co_applicant_financial_status_2":"financial","co_applicant_name_of_bureau_2":"credit bureau","co_applicant_bureau_score_2":0,"co_applicant_bureau_pull_date_2":"2026-08-22","co_applicant_overdue_amount_2":0,"co_applicant_dpd_0_6_months_2":0,"co_applicant_dpd_6_12_months_2":0,"co_applicant_bureau_sub_count_2":0,"co_applicant_bureau_dbt_count_2":0,"co_applicant_bureau_loss_count_2":0,"co_applicant_bureau_write_off_count_2":0,"co_applicant_bureau_settlement_count_2":0,"co_applicant_bureau_suit_filed_count_2":0,"co_applicant_bureau_willful_default_count_2":0,"co_applicant_restructured_count_2":0,"co_applicant_enquiries_last_3_months_2":1,"co_applicant_active_credit_lines_count_2":0,"borrower_maturity_age":40}}}}}} [2026-08-25 15:35:45] INFO: row.api_response {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":1,"vendor_loan_id":53,"http_status":200,"ok":true,"duration_ms":1252,"response":{"Blacksoil-Navdhan":{"failed_condition":{"key":"loan_utilization","reason":"Failed: purchase of cattle not inList ['expansion of existing business', 'purchase of additional stock/ raw material/ working capital', 'purchase of machinery/equipment', 'refinancing of existing loans in case of an existing navadhan customer']"},"policy_status":false,"rules":[{"against":["pass","equal"],"key":"age","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"borrower_maturity_age","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["18","lessThanEqual"],"key":"co_applicant_age_2","log":[],"reason":"Passed: 18.0 lessThanEqual 36","result":true,"source":36},{"against":["18","lessThanEqual"],"key":"co_applicant_age_1","log":[],"reason":"Passed: 18.0 lessThanEqual 37","result":true,"source":37},{"against":["pass","equal"],"key":"gender","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"co_applicant_bureau_score_1","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["1000","greaterThanEqual"],"key":"overdue_amount","log":[],"reason":"Passed: 1000.0 greaterThanEqual 0","result":true,"source":0},{"against":["3","greaterThan"],"key":"dpd_0_6_months","log":[],"reason":"Passed: 3.0 greaterThan 0","result":true,"source":0},{"against":["3","lessThanEqual"],"key":"business_vintage_years","log":[],"reason":"Data not found","result":false,"source":""},{"against":["pass","equal"],"key":"co_applicant_maturity_age_2","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["36","greaterThanEqual"],"key":"tenure","log":[],"reason":"Passed: 36.0 greaterThanEqual 23","result":true,"source":23},{"against":["pass","equal"],"key":"bureau_score","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["3","lessThanEqual"],"key":"residence_vintage_years","log":[],"reason":"Passed: 3.0 lessThanEqual 30","result":true,"source":30},{"against":["pass","equal"],"key":"bank_statement_6m","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"co_applicant_maturity_age_1","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"co_applicant_bureau_score_2","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["3","greaterThanEqual"],"key":"active_credit_lines_count","log":[],"reason":"Passed: 3.0 greaterThanEqual 0","result":true,"source":0},{"against":["60","greaterThan"],"key":"dpd_6_12_months","log":[],"reason":"Passed: 60.0 greaterThan 0","result":true,"source":0},{"against":["no","equal"],"key":"applicant_ntc","log":[],"reason":"Failed: no not equal false","result":false,"source":"false"},{"against":["0","greaterThanEqual"],"key":"cheque_bounce_count_6m","log":[],"reason":"Data not found","result":false,"source":""},{"against":["5","greaterThanEqual"],"key":"enquiries_last_3_months","log":[],"reason":"Passed: 5.0 greaterThanEqual 1","result":true,"source":1},{"against":["30","greaterThanEqual"],"key":"residence_to_branch_distance_km","log":[],"reason":"Data not found","result":false,"source":""},{"against":["400000","greaterThanEqual"],"key":"loan_amount","log":[],"reason":"Passed: 400000.0 greaterThanEqual 100158","result":true,"source":100158},{"against":[["rented","owned","leased","owned w/o regn"],"inList"],"key":"residence_ownership","log":[],"reason":"Passed: owned inList ['rented', 'owned', 'leased', 'owned w/o regn']","result":true,"source":"owned"},{"against":[["son","father","mother","grandfather","grandmother","brother","uncle"],"inList"],"key":"co_applicant_relationship_1","log":[],"reason":"Failed: husband not inList ['son', 'father', 'mother', 'grandfather', 'grandmother', 'brother', 'uncle']","result":false,"source":"husband"},{"against":[["father","mother","husband","wife","son","daughter","sister","son-in-law","daughter-in-law","mother-in-law","father-in-law","brother-in-law","sister-in-law","niece","uncle","nephew","aunt","grand-father","grand-mother","grand-son","grand-daughter","self","brother"],"inList"],"key":"co_applicant_relationship_2","log":[],"reason":"Passed: brother-in-law inList ['father', 'mother', 'husband', 'wife', 'son', 'daughter', 'sister', 'son-in-law', 'daughter-in-law', 'mother-in-law', 'father-in-law', 'brother-in-law', 'sister-in-law', 'niece', 'uncle', 'nephew', 'aunt', 'grand-father', 'grand-mother', 'grand-son', 'grand-daughter', 'self', 'brother']","result":true,"source":"brother-in-law"},{"against":["50","greaterThanEqual"],"key":"foir","log":[],"reason":"Passed: 50.0 greaterThanEqual 16.08","result":true,"source":16.08},{"against":[["expansion of existing business","purchase of additional stock/ raw material/ working capital","purchase of machinery/equipment","refinancing of existing loans in case of an existing navadhan customer"],"inList"],"key":"loan_utilization","log":[],"reason":"Failed: purchase of cattle not inList ['expansion of existing business', 'purchase of additional stock/ raw material/ working capital', 'purchase of machinery/equipment', 'refinancing of existing loans in case of an existing navadhan customer']","result":false,"source":"purchase of cattle"},{"against":["0","greaterThanEqual"],"key":"bureau_loss_count","log":[],"reason":"Passed: 0.0 greaterThanEqual 0","result":true,"source":0},{"against":["0","lessThanEqual"],"key":"bureau_dbt_count","log":[],"reason":"Passed: 0.0 lessThanEqual 0","result":true,"source":0},{"against":["0","lessThanEqual"],"key":"bureau_sub_count","log":[],"reason":"Passed: 0.0 lessThanEqual 0","result":true,"source":0},{"against":["1000","greaterThanEqual"],"key":"bureau_write_off_count","log":[],"reason":"Passed: 1000.0 greaterThanEqual 0","result":true,"source":0},{"against":["0","lessThanEqual"],"key":"bureau_settlement_count","log":[],"reason":"Passed: 0.0 lessThanEqual 0","result":true,"source":0}]},"status":false},"error":null} [2026-08-25 15:35:45] INFO: row.bre_decision_saved {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":1,"vendor_loan_id":53,"bre_decision_id":811,"status":"success","decision":null} [2026-08-25 15:35:45] INFO: row.start {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":2,"application_id":"GJ2608"} [2026-08-25 15:35:45] INFO: row.lead_created {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":2,"application_id":"GJ2608","vendor_loan_id":54} [2026-08-25 15:35:45] INFO: row.co_applicants_saved {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":2,"vendor_loan_id":54,"count":1} [2026-08-25 15:35:45] INFO: row.decision_data_saved {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":2,"vendor_loan_id":54,"decision_keys":93} [2026-08-25 15:35:45] INFO: row.api_request {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":2,"vendor_loan_id":54,"url":"http://localhost:8889/","policies_payload":["Blacksoil-Navdhan"],"decision_keys":["application_id","age","gender","marital_status","applicant_ntc","household_monthly_income","household_annual_income","household_expenses","existing_emi_obligations","business_income","agriculture_income","dairy_income","foir","eligible_emi","eligible_loan_amount","loan_utilization","name_of_bureau","bureau_score","bureau_pull_date","overdue_amount","dpd_0_6_months","bureau_sub_count","bureau_dbt_count","bureau_loss_count","bureau_write_off_count","bureau_settlement_count","bureau_suit_filled_count","bureau_willful_default_count","restructured_count","dpd_6_12_months","enquiries_last_3_months","active_credit_lines_count","bank_statement_6m","cheque_bounce_count_6m","loan_amount","tenure","interest_rate","apr","repayment_frequency","loan_purpose","residence_area","residence_vintage_years","residence_ownership","residence_to_branch_distance_km","business_vintage_years","asset_fridge_value","asset_air_conditioner_value","asset_washing_machine_value","asset_tv_value","asset_smart_phone_value","co_applicant_age_1","co_applicant_relationship_1","co_applicant_years_of_stay_in_current_address_1","co_applicant_ntc_1","co_applicant_financial_status_1","co_applicant_name_of_bureau_1","co_applicant_bureau_score_1","co_applicant_bureau_pull_date_1","co_applicant_overdue_amount_1","co_applicant_dpd_0_6_months_1","co_applicant_dpd_6_12_months_1","co_applicant_bureau_sub_count_1","co_applicant_bureau_dbt_count_1","co_applicant_bureau_loss_count_1","co_applicant_bureau_write_off_count_1","co_applicant_bureau_settlement_count_1","co_applicant_bureau_suit_filed_count_1","co_applicant_bureau_willful_default_count_1","co_applicant_restructured_count_1","co_applicant_enquiries_last_3_months_1","co_applicant_active_credit_lines_count_1","co_applicant_age_2","co_applicant_relationship_2","co_applicant_years_of_stay_in_current_address_2","co_applicant_ntc_2","co_applicant_financial_status_2","co_applicant_name_of_bureau_2","co_applicant_bureau_score_2","co_applicant_bureau_pull_date_2","co_applicant_overdue_amount_2","co_applicant_dpd_0_6_months_2","co_applicant_dpd_6_12_months_2","co_applicant_bureau_sub_count_2","co_applicant_bureau_dbt_count_2","co_applicant_bureau_loss_count_2","co_applicant_bureau_write_off_count_2","co_applicant_bureau_settlement_count_2","co_applicant_bureau_suit_filed_count_2","co_applicant_bureau_willful_default_count_2","co_applicant_restructured_count_2","co_applicant_enquiries_last_3_months_2","co_applicant_active_credit_lines_count_2","borrower_maturity_age"],"payload":{"grade":{"rules":{"Blacksoil-Navdhan":{"rule":[{"description":["Blacksoil Age >=21 and <=60 pass else reject"],"key":"age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Borrower Maturity Age"],"key":"borrower_maturity_age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 2"],"key":"co_applicant_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 1"],"key":"co_applicant_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil gender Male - \"Male - approve, If female then check marital status, If Female then check else ignore this rule Marital Status- Reject single women as primary borrower"],"key":"gender","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_1 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Overdue Amount\t<=1000, pass"],"key":"overdue_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (0-6 Months) if\t<3 pass"],"key":"dpd_0_6_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Business Vintage (Years) - >=3 years else reject"],"key":"business_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 2 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil tenure - <=36 months else reject"],"key":"tenure","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Borrower Bureau Score (upto 3 lakh loan amount, >=650 else reject) or Loan Amount >3 Lakh and If score >700 pass else reject"],"key":"bureau_score","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Vintage (Years) >=3 years else reject"],"key":"residence_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Bank Statement 6M, Minimum 6 months"],"key":"bank_statement_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 1 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_2 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Active Credit Lines Count - Value\t<=3 pass"],"key":"active_credit_lines_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (6-12 Months) if <2 pass"],"key":"dpd_6_12_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Applicant NTC, pass if no"],"key":"applicant_ntc","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Cheque Bounce Count 6M,No bounce in last 6 months, pass"],"key":"cheque_bounce_count_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Enquiries Last 3 Months\tValue\t<=5 pass"],"key":"enquiries_last_3_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence to Branch Distance (km) - <=30 KM from branch else reject"],"key":"residence_to_branch_distance_km","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Loan Amount - <=4,00,000 else reject"],"key":"loan_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Ownership - Owned/Ancestral/Rent Free else reject"],"key":"residence_ownership","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Foir foir <= 50% pass else fail"],"key":"foir","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - 1. Expansion of existing business. 2. Purchase of additional stock / raw material / working capital 3. Purchase of machinery/equipment 4. Refinancing of existing loans in case of an existing Navadhan customer"],"key":"loan_utilization","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil bureau_loss_count > 0 fail else pass"],"key":"bureau_loss_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_dbt_count > 0 reject else pass"],"key":"bureau_dbt_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_sub_count any value received > 0 reject else pass"],"key":"bureau_sub_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_write_off_count < 1000 pass else reject"],"key":"bureau_write_off_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_settlement_count > 0 reject else pass"],"key":"bureau_settlement_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}}],"payload":{"application_id":"GJ2608","age":37,"gender":"female","marital_status":"married","applicant_ntc":"false","household_monthly_income":53203,"household_annual_income":638436,"household_expenses":19846,"existing_emi_obligations":8889,"business_income":"","agriculture_income":11083,"dairy_income":42120,"foir":16.71,"eligible_emi":7789,"eligible_loan_amount":138030,"loan_utilization":"purchase of cattle","name_of_bureau":"credit bureau","bureau_score":745,"bureau_pull_date":"2026-08-22","overdue_amount":0,"dpd_0_6_months":0,"bureau_sub_count":0,"bureau_dbt_count":0,"bureau_loss_count":0,"bureau_write_off_count":0,"bureau_settlement_count":0,"bureau_suit_filled_count":0,"bureau_willful_default_count":0,"restructured_count":0,"dpd_6_12_months":0,"enquiries_last_3_months":3,"active_credit_lines_count":1,"bank_statement_6m":"","cheque_bounce_count_6m":"","loan_amount":100000,"tenure":23,"interest_rate":31,"apr":37.61,"repayment_frequency":"12","loan_purpose":"purchase of cattle","residence_area":"","residence_vintage_years":35,"residence_ownership":"owned","residence_to_branch_distance_km":11,"business_vintage_years":"","asset_fridge_value":0,"asset_air_conditioner_value":0,"asset_washing_machine_value":0,"asset_tv_value":8000,"asset_smart_phone_value":20000,"co_applicant_age_1":44,"co_applicant_relationship_1":"husband","co_applicant_years_of_stay_in_current_address_1":35,"co_applicant_ntc_1":"false","co_applicant_financial_status_1":"financial","co_applicant_name_of_bureau_1":"credit bureau","co_applicant_bureau_score_1":741,"co_applicant_bureau_pull_date_1":"2026-08-22","co_applicant_overdue_amount_1":0,"co_applicant_dpd_0_6_months_1":0,"co_applicant_dpd_6_12_months_1":0,"co_applicant_bureau_sub_count_1":0,"co_applicant_bureau_dbt_count_1":0,"co_applicant_bureau_loss_count_1":0,"co_applicant_bureau_write_off_count_1":0,"co_applicant_bureau_settlement_count_1":0,"co_applicant_bureau_suit_filed_count_1":0,"co_applicant_bureau_willful_default_count_1":0,"co_applicant_restructured_count_1":0,"co_applicant_enquiries_last_3_months_1":2,"co_applicant_active_credit_lines_count_1":1,"co_applicant_age_2":"","co_applicant_relationship_2":"","co_applicant_years_of_stay_in_current_address_2":"","co_applicant_ntc_2":"","co_applicant_financial_status_2":"","co_applicant_name_of_bureau_2":"","co_applicant_bureau_score_2":"","co_applicant_bureau_pull_date_2":"","co_applicant_overdue_amount_2":"","co_applicant_dpd_0_6_months_2":"","co_applicant_dpd_6_12_months_2":"","co_applicant_bureau_sub_count_2":"","co_applicant_bureau_dbt_count_2":"","co_applicant_bureau_loss_count_2":"","co_applicant_bureau_write_off_count_2":"","co_applicant_bureau_settlement_count_2":"","co_applicant_bureau_suit_filed_count_2":"","co_applicant_bureau_willful_default_count_2":"","co_applicant_restructured_count_2":"","co_applicant_enquiries_last_3_months_2":"","co_applicant_active_credit_lines_count_2":"","borrower_maturity_age":38}}}}}} [2026-08-25 15:35:45] INFO: row.api_response {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":2,"vendor_loan_id":54,"http_status":200,"ok":true,"duration_ms":256,"response":{"Blacksoil-Navdhan":{"failed_condition":{"key":"loan_utilization","reason":"Failed: purchase of cattle not inList ['expansion of existing business', 'purchase of additional stock/ raw material/ working capital', 'purchase of machinery/equipment', 'refinancing of existing loans in case of an existing navadhan customer']"},"policy_status":false,"rules":[{"against":["pass","equal"],"key":"age","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"borrower_maturity_age","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["18","lessThanEqual"],"key":"co_applicant_age_2","log":[],"reason":"Data not found","result":false,"source":""},{"against":["18","lessThanEqual"],"key":"co_applicant_age_1","log":[],"reason":"Passed: 18.0 lessThanEqual 44","result":true,"source":44},{"against":["pass","equal"],"key":"gender","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"co_applicant_bureau_score_1","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["1000","greaterThanEqual"],"key":"overdue_amount","log":[],"reason":"Passed: 1000.0 greaterThanEqual 0","result":true,"source":0},{"against":["3","greaterThan"],"key":"dpd_0_6_months","log":[],"reason":"Passed: 3.0 greaterThan 0","result":true,"source":0},{"against":["3","lessThanEqual"],"key":"business_vintage_years","log":[],"reason":"Data not found","result":false,"source":""},{"against":["pass","equal"],"key":"co_applicant_maturity_age_2","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["36","greaterThanEqual"],"key":"tenure","log":[],"reason":"Passed: 36.0 greaterThanEqual 23","result":true,"source":23},{"against":["pass","equal"],"key":"bureau_score","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["3","lessThanEqual"],"key":"residence_vintage_years","log":[],"reason":"Passed: 3.0 lessThanEqual 35","result":true,"source":35},{"against":["pass","equal"],"key":"bank_statement_6m","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"co_applicant_maturity_age_1","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"co_applicant_bureau_score_2","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["3","greaterThanEqual"],"key":"active_credit_lines_count","log":[],"reason":"Passed: 3.0 greaterThanEqual 1","result":true,"source":1},{"against":["60","greaterThan"],"key":"dpd_6_12_months","log":[],"reason":"Passed: 60.0 greaterThan 0","result":true,"source":0},{"against":["no","equal"],"key":"applicant_ntc","log":[],"reason":"Failed: no not equal false","result":false,"source":"false"},{"against":["0","greaterThanEqual"],"key":"cheque_bounce_count_6m","log":[],"reason":"Data not found","result":false,"source":""},{"against":["5","greaterThanEqual"],"key":"enquiries_last_3_months","log":[],"reason":"Passed: 5.0 greaterThanEqual 3","result":true,"source":3},{"against":["30","greaterThanEqual"],"key":"residence_to_branch_distance_km","log":[],"reason":"Passed: 30.0 greaterThanEqual 11","result":true,"source":11},{"against":["400000","greaterThanEqual"],"key":"loan_amount","log":[],"reason":"Passed: 400000.0 greaterThanEqual 100000","result":true,"source":100000},{"against":[["rented","owned","leased","owned w/o regn"],"inList"],"key":"residence_ownership","log":[],"reason":"Passed: owned inList ['rented', 'owned', 'leased', 'owned w/o regn']","result":true,"source":"owned"},{"against":[["son","father","mother","grandfather","grandmother","brother","uncle"],"inList"],"key":"co_applicant_relationship_1","log":[],"reason":"Failed: husband not inList ['son', 'father', 'mother', 'grandfather', 'grandmother', 'brother', 'uncle']","result":false,"source":"husband"},{"against":[["father","mother","husband","wife","son","daughter","sister","son-in-law","daughter-in-law","mother-in-law","father-in-law","brother-in-law","sister-in-law","niece","uncle","nephew","aunt","grand-father","grand-mother","grand-son","grand-daughter","self","brother"],"inList"],"key":"co_applicant_relationship_2","log":[],"reason":"Data not found","result":false,"source":""},{"against":["50","greaterThanEqual"],"key":"foir","log":[],"reason":"Passed: 50.0 greaterThanEqual 16.71","result":true,"source":16.71},{"against":[["expansion of existing business","purchase of additional stock/ raw material/ working capital","purchase of machinery/equipment","refinancing of existing loans in case of an existing navadhan customer"],"inList"],"key":"loan_utilization","log":[],"reason":"Failed: purchase of cattle not inList ['expansion of existing business', 'purchase of additional stock/ raw material/ working capital', 'purchase of machinery/equipment', 'refinancing of existing loans in case of an existing navadhan customer']","result":false,"source":"purchase of cattle"},{"against":["0","greaterThanEqual"],"key":"bureau_loss_count","log":[],"reason":"Passed: 0.0 greaterThanEqual 0","result":true,"source":0},{"against":["0","lessThanEqual"],"key":"bureau_dbt_count","log":[],"reason":"Passed: 0.0 lessThanEqual 0","result":true,"source":0},{"against":["0","lessThanEqual"],"key":"bureau_sub_count","log":[],"reason":"Passed: 0.0 lessThanEqual 0","result":true,"source":0},{"against":["1000","greaterThanEqual"],"key":"bureau_write_off_count","log":[],"reason":"Passed: 1000.0 greaterThanEqual 0","result":true,"source":0},{"against":["0","lessThanEqual"],"key":"bureau_settlement_count","log":[],"reason":"Passed: 0.0 lessThanEqual 0","result":true,"source":0}]},"status":false},"error":null} [2026-08-25 15:35:45] INFO: row.bre_decision_saved {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":2,"vendor_loan_id":54,"bre_decision_id":812,"status":"success","decision":null} [2026-08-25 15:35:45] INFO: row.start {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":3,"application_id":"MP2908"} [2026-08-25 15:35:45] INFO: row.lead_created {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":3,"application_id":"MP2908","vendor_loan_id":55} [2026-08-25 15:35:45] INFO: row.co_applicants_saved {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":3,"vendor_loan_id":55,"count":1} [2026-08-25 15:35:45] INFO: row.decision_data_saved {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":3,"vendor_loan_id":55,"decision_keys":93} [2026-08-25 15:35:45] INFO: row.api_request {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":3,"vendor_loan_id":55,"url":"http://localhost:8889/","policies_payload":["Blacksoil-Navdhan"],"decision_keys":["application_id","age","gender","marital_status","applicant_ntc","household_monthly_income","household_annual_income","household_expenses","existing_emi_obligations","business_income","agriculture_income","dairy_income","foir","eligible_emi","eligible_loan_amount","loan_utilization","name_of_bureau","bureau_score","bureau_pull_date","overdue_amount","dpd_0_6_months","bureau_sub_count","bureau_dbt_count","bureau_loss_count","bureau_write_off_count","bureau_settlement_count","bureau_suit_filled_count","bureau_willful_default_count","restructured_count","dpd_6_12_months","enquiries_last_3_months","active_credit_lines_count","bank_statement_6m","cheque_bounce_count_6m","loan_amount","tenure","interest_rate","apr","repayment_frequency","loan_purpose","residence_area","residence_vintage_years","residence_ownership","residence_to_branch_distance_km","business_vintage_years","asset_fridge_value","asset_air_conditioner_value","asset_washing_machine_value","asset_tv_value","asset_smart_phone_value","co_applicant_age_1","co_applicant_relationship_1","co_applicant_years_of_stay_in_current_address_1","co_applicant_ntc_1","co_applicant_financial_status_1","co_applicant_name_of_bureau_1","co_applicant_bureau_score_1","co_applicant_bureau_pull_date_1","co_applicant_overdue_amount_1","co_applicant_dpd_0_6_months_1","co_applicant_dpd_6_12_months_1","co_applicant_bureau_sub_count_1","co_applicant_bureau_dbt_count_1","co_applicant_bureau_loss_count_1","co_applicant_bureau_write_off_count_1","co_applicant_bureau_settlement_count_1","co_applicant_bureau_suit_filed_count_1","co_applicant_bureau_willful_default_count_1","co_applicant_restructured_count_1","co_applicant_enquiries_last_3_months_1","co_applicant_active_credit_lines_count_1","co_applicant_age_2","co_applicant_relationship_2","co_applicant_years_of_stay_in_current_address_2","co_applicant_ntc_2","co_applicant_financial_status_2","co_applicant_name_of_bureau_2","co_applicant_bureau_score_2","co_applicant_bureau_pull_date_2","co_applicant_overdue_amount_2","co_applicant_dpd_0_6_months_2","co_applicant_dpd_6_12_months_2","co_applicant_bureau_sub_count_2","co_applicant_bureau_dbt_count_2","co_applicant_bureau_loss_count_2","co_applicant_bureau_write_off_count_2","co_applicant_bureau_settlement_count_2","co_applicant_bureau_suit_filed_count_2","co_applicant_bureau_willful_default_count_2","co_applicant_restructured_count_2","co_applicant_enquiries_last_3_months_2","co_applicant_active_credit_lines_count_2","borrower_maturity_age"],"payload":{"grade":{"rules":{"Blacksoil-Navdhan":{"rule":[{"description":["Blacksoil Age >=21 and <=60 pass else reject"],"key":"age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Borrower Maturity Age"],"key":"borrower_maturity_age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 2"],"key":"co_applicant_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 1"],"key":"co_applicant_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil gender Male - \"Male - approve, If female then check marital status, If Female then check else ignore this rule Marital Status- Reject single women as primary borrower"],"key":"gender","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_1 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Overdue Amount\t<=1000, pass"],"key":"overdue_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (0-6 Months) if\t<3 pass"],"key":"dpd_0_6_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Business Vintage (Years) - >=3 years else reject"],"key":"business_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 2 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil tenure - <=36 months else reject"],"key":"tenure","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Borrower Bureau Score (upto 3 lakh loan amount, >=650 else reject) or Loan Amount >3 Lakh and If score >700 pass else reject"],"key":"bureau_score","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Vintage (Years) >=3 years else reject"],"key":"residence_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Bank Statement 6M, Minimum 6 months"],"key":"bank_statement_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 1 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_2 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Active Credit Lines Count - Value\t<=3 pass"],"key":"active_credit_lines_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (6-12 Months) if <2 pass"],"key":"dpd_6_12_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Applicant NTC, pass if no"],"key":"applicant_ntc","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Cheque Bounce Count 6M,No bounce in last 6 months, pass"],"key":"cheque_bounce_count_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Enquiries Last 3 Months\tValue\t<=5 pass"],"key":"enquiries_last_3_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence to Branch Distance (km) - <=30 KM from branch else reject"],"key":"residence_to_branch_distance_km","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Loan Amount - <=4,00,000 else reject"],"key":"loan_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Ownership - Owned/Ancestral/Rent Free else reject"],"key":"residence_ownership","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Foir foir <= 50% pass else fail"],"key":"foir","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - 1. Expansion of existing business. 2. Purchase of additional stock / raw material / working capital 3. Purchase of machinery/equipment 4. Refinancing of existing loans in case of an existing Navadhan customer"],"key":"loan_utilization","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil bureau_loss_count > 0 fail else pass"],"key":"bureau_loss_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_dbt_count > 0 reject else pass"],"key":"bureau_dbt_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_sub_count any value received > 0 reject else pass"],"key":"bureau_sub_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_write_off_count < 1000 pass else reject"],"key":"bureau_write_off_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_settlement_count > 0 reject else pass"],"key":"bureau_settlement_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}}],"payload":{"application_id":"MP2908","age":54,"gender":"male","marital_status":"married","applicant_ntc":"false","household_monthly_income":34500,"household_annual_income":414000,"household_expenses":2450,"existing_emi_obligations":9840,"business_income":"","agriculture_income":"","dairy_income":"","foir":28.52,"eligible_emi":6185,"eligible_loan_amount":109598,"loan_utilization":"working capital","name_of_bureau":"credit bureau","bureau_score":793,"bureau_pull_date":"2026-08-21","overdue_amount":0,"dpd_0_6_months":0,"bureau_sub_count":0,"bureau_dbt_count":0,"bureau_loss_count":0,"bureau_write_off_count":0,"bureau_settlement_count":0,"bureau_suit_filled_count":0,"bureau_willful_default_count":0,"restructured_count":0,"dpd_6_12_months":0,"enquiries_last_3_months":1,"active_credit_lines_count":0,"bank_statement_6m":"","cheque_bounce_count_6m":"","loan_amount":100158,"tenure":23,"interest_rate":29.43,"apr":34.31,"repayment_frequency":"12","loan_purpose":"working capital","residence_area":"","residence_vintage_years":15,"residence_ownership":"owned","residence_to_branch_distance_km":11,"business_vintage_years":"","asset_fridge_value":10000,"asset_air_conditioner_value":12000,"asset_washing_machine_value":12000,"asset_tv_value":8000,"asset_smart_phone_value":20000,"co_applicant_age_1":50,"co_applicant_relationship_1":"wife","co_applicant_years_of_stay_in_current_address_1":15,"co_applicant_ntc_1":"false","co_applicant_financial_status_1":"financial","co_applicant_name_of_bureau_1":"credit bureau","co_applicant_bureau_score_1":644,"co_applicant_bureau_pull_date_1":"2026-08-21","co_applicant_overdue_amount_1":0,"co_applicant_dpd_0_6_months_1":0,"co_applicant_dpd_6_12_months_1":0,"co_applicant_bureau_sub_count_1":0,"co_applicant_bureau_dbt_count_1":1,"co_applicant_bureau_loss_count_1":0,"co_applicant_bureau_write_off_count_1":0,"co_applicant_bureau_settlement_count_1":0,"co_applicant_bureau_suit_filed_count_1":0,"co_applicant_bureau_willful_default_count_1":0,"co_applicant_restructured_count_1":0,"co_applicant_enquiries_last_3_months_1":5,"co_applicant_active_credit_lines_count_1":3,"co_applicant_age_2":"","co_applicant_relationship_2":"","co_applicant_years_of_stay_in_current_address_2":"","co_applicant_ntc_2":"","co_applicant_financial_status_2":"","co_applicant_name_of_bureau_2":"","co_applicant_bureau_score_2":"","co_applicant_bureau_pull_date_2":"","co_applicant_overdue_amount_2":"","co_applicant_dpd_0_6_months_2":"","co_applicant_dpd_6_12_months_2":"","co_applicant_bureau_sub_count_2":"","co_applicant_bureau_dbt_count_2":"","co_applicant_bureau_loss_count_2":"","co_applicant_bureau_write_off_count_2":"","co_applicant_bureau_settlement_count_2":"","co_applicant_bureau_suit_filed_count_2":"","co_applicant_bureau_willful_default_count_2":"","co_applicant_restructured_count_2":"","co_applicant_enquiries_last_3_months_2":"","co_applicant_active_credit_lines_count_2":"","borrower_maturity_age":55}}}}}} [2026-08-25 15:35:46] INFO: row.api_response {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":3,"vendor_loan_id":55,"http_status":200,"ok":true,"duration_ms":259,"response":{"Blacksoil-Navdhan":{"failed_condition":{"key":"loan_utilization","reason":"Failed: working capital not inList ['expansion of existing business', 'purchase of additional stock/ raw material/ working capital', 'purchase of machinery/equipment', 'refinancing of existing loans in case of an existing navadhan customer']"},"policy_status":false,"rules":[{"against":["pass","equal"],"key":"age","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"borrower_maturity_age","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["18","lessThanEqual"],"key":"co_applicant_age_2","log":[],"reason":"Data not found","result":false,"source":""},{"against":["18","lessThanEqual"],"key":"co_applicant_age_1","log":[],"reason":"Passed: 18.0 lessThanEqual 50","result":true,"source":50},{"against":["pass","equal"],"key":"gender","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"co_applicant_bureau_score_1","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["1000","greaterThanEqual"],"key":"overdue_amount","log":[],"reason":"Passed: 1000.0 greaterThanEqual 0","result":true,"source":0},{"against":["3","greaterThan"],"key":"dpd_0_6_months","log":[],"reason":"Passed: 3.0 greaterThan 0","result":true,"source":0},{"against":["3","lessThanEqual"],"key":"business_vintage_years","log":[],"reason":"Data not found","result":false,"source":""},{"against":["pass","equal"],"key":"co_applicant_maturity_age_2","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["36","greaterThanEqual"],"key":"tenure","log":[],"reason":"Passed: 36.0 greaterThanEqual 23","result":true,"source":23},{"against":["pass","equal"],"key":"bureau_score","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["3","lessThanEqual"],"key":"residence_vintage_years","log":[],"reason":"Passed: 3.0 lessThanEqual 15","result":true,"source":15},{"against":["pass","equal"],"key":"bank_statement_6m","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"co_applicant_maturity_age_1","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"co_applicant_bureau_score_2","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["3","greaterThanEqual"],"key":"active_credit_lines_count","log":[],"reason":"Passed: 3.0 greaterThanEqual 0","result":true,"source":0},{"against":["60","greaterThan"],"key":"dpd_6_12_months","log":[],"reason":"Passed: 60.0 greaterThan 0","result":true,"source":0},{"against":["no","equal"],"key":"applicant_ntc","log":[],"reason":"Failed: no not equal false","result":false,"source":"false"},{"against":["0","greaterThanEqual"],"key":"cheque_bounce_count_6m","log":[],"reason":"Data not found","result":false,"source":""},{"against":["5","greaterThanEqual"],"key":"enquiries_last_3_months","log":[],"reason":"Passed: 5.0 greaterThanEqual 1","result":true,"source":1},{"against":["30","greaterThanEqual"],"key":"residence_to_branch_distance_km","log":[],"reason":"Passed: 30.0 greaterThanEqual 11","result":true,"source":11},{"against":["400000","greaterThanEqual"],"key":"loan_amount","log":[],"reason":"Passed: 400000.0 greaterThanEqual 100158","result":true,"source":100158},{"against":[["rented","owned","leased","owned w/o regn"],"inList"],"key":"residence_ownership","log":[],"reason":"Passed: owned inList ['rented', 'owned', 'leased', 'owned w/o regn']","result":true,"source":"owned"},{"against":[["son","father","mother","grandfather","grandmother","brother","uncle"],"inList"],"key":"co_applicant_relationship_1","log":[],"reason":"Failed: wife not inList ['son', 'father', 'mother', 'grandfather', 'grandmother', 'brother', 'uncle']","result":false,"source":"wife"},{"against":[["father","mother","husband","wife","son","daughter","sister","son-in-law","daughter-in-law","mother-in-law","father-in-law","brother-in-law","sister-in-law","niece","uncle","nephew","aunt","grand-father","grand-mother","grand-son","grand-daughter","self","brother"],"inList"],"key":"co_applicant_relationship_2","log":[],"reason":"Data not found","result":false,"source":""},{"against":["50","greaterThanEqual"],"key":"foir","log":[],"reason":"Passed: 50.0 greaterThanEqual 28.52","result":true,"source":28.52},{"against":[["expansion of existing business","purchase of additional stock/ raw material/ working capital","purchase of machinery/equipment","refinancing of existing loans in case of an existing navadhan customer"],"inList"],"key":"loan_utilization","log":[],"reason":"Failed: working capital not inList ['expansion of existing business', 'purchase of additional stock/ raw material/ working capital', 'purchase of machinery/equipment', 'refinancing of existing loans in case of an existing navadhan customer']","result":false,"source":"working capital"},{"against":["0","greaterThanEqual"],"key":"bureau_loss_count","log":[],"reason":"Passed: 0.0 greaterThanEqual 0","result":true,"source":0},{"against":["0","lessThanEqual"],"key":"bureau_dbt_count","log":[],"reason":"Passed: 0.0 lessThanEqual 0","result":true,"source":0},{"against":["0","lessThanEqual"],"key":"bureau_sub_count","log":[],"reason":"Passed: 0.0 lessThanEqual 0","result":true,"source":0},{"against":["1000","greaterThanEqual"],"key":"bureau_write_off_count","log":[],"reason":"Passed: 1000.0 greaterThanEqual 0","result":true,"source":0},{"against":["0","lessThanEqual"],"key":"bureau_settlement_count","log":[],"reason":"Passed: 0.0 lessThanEqual 0","result":true,"source":0}]},"status":false},"error":null} [2026-08-25 15:35:46] INFO: row.bre_decision_saved {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":3,"vendor_loan_id":55,"bre_decision_id":813,"status":"success","decision":null} [2026-08-25 15:35:46] INFO: row.start {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":4,"application_id":"MP3008"} [2026-08-25 15:35:46] INFO: row.lead_created {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":4,"application_id":"MP3008","vendor_loan_id":56} [2026-08-25 15:35:46] INFO: row.co_applicants_saved {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":4,"vendor_loan_id":56,"count":1} [2026-08-25 15:35:46] INFO: row.decision_data_saved {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":4,"vendor_loan_id":56,"decision_keys":93} [2026-08-25 15:35:46] INFO: row.api_request {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":4,"vendor_loan_id":56,"url":"http://localhost:8889/","policies_payload":["Blacksoil-Navdhan"],"decision_keys":["application_id","age","gender","marital_status","applicant_ntc","household_monthly_income","household_annual_income","household_expenses","existing_emi_obligations","business_income","agriculture_income","dairy_income","foir","eligible_emi","eligible_loan_amount","loan_utilization","name_of_bureau","bureau_score","bureau_pull_date","overdue_amount","dpd_0_6_months","bureau_sub_count","bureau_dbt_count","bureau_loss_count","bureau_write_off_count","bureau_settlement_count","bureau_suit_filled_count","bureau_willful_default_count","restructured_count","dpd_6_12_months","enquiries_last_3_months","active_credit_lines_count","bank_statement_6m","cheque_bounce_count_6m","loan_amount","tenure","interest_rate","apr","repayment_frequency","loan_purpose","residence_area","residence_vintage_years","residence_ownership","residence_to_branch_distance_km","business_vintage_years","asset_fridge_value","asset_air_conditioner_value","asset_washing_machine_value","asset_tv_value","asset_smart_phone_value","co_applicant_age_1","co_applicant_relationship_1","co_applicant_years_of_stay_in_current_address_1","co_applicant_ntc_1","co_applicant_financial_status_1","co_applicant_name_of_bureau_1","co_applicant_bureau_score_1","co_applicant_bureau_pull_date_1","co_applicant_overdue_amount_1","co_applicant_dpd_0_6_months_1","co_applicant_dpd_6_12_months_1","co_applicant_bureau_sub_count_1","co_applicant_bureau_dbt_count_1","co_applicant_bureau_loss_count_1","co_applicant_bureau_write_off_count_1","co_applicant_bureau_settlement_count_1","co_applicant_bureau_suit_filed_count_1","co_applicant_bureau_willful_default_count_1","co_applicant_restructured_count_1","co_applicant_enquiries_last_3_months_1","co_applicant_active_credit_lines_count_1","co_applicant_age_2","co_applicant_relationship_2","co_applicant_years_of_stay_in_current_address_2","co_applicant_ntc_2","co_applicant_financial_status_2","co_applicant_name_of_bureau_2","co_applicant_bureau_score_2","co_applicant_bureau_pull_date_2","co_applicant_overdue_amount_2","co_applicant_dpd_0_6_months_2","co_applicant_dpd_6_12_months_2","co_applicant_bureau_sub_count_2","co_applicant_bureau_dbt_count_2","co_applicant_bureau_loss_count_2","co_applicant_bureau_write_off_count_2","co_applicant_bureau_settlement_count_2","co_applicant_bureau_suit_filed_count_2","co_applicant_bureau_willful_default_count_2","co_applicant_restructured_count_2","co_applicant_enquiries_last_3_months_2","co_applicant_active_credit_lines_count_2","borrower_maturity_age"],"payload":{"grade":{"rules":{"Blacksoil-Navdhan":{"rule":[{"description":["Blacksoil Age >=21 and <=60 pass else reject"],"key":"age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Borrower Maturity Age"],"key":"borrower_maturity_age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 2"],"key":"co_applicant_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 1"],"key":"co_applicant_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil gender Male - \"Male - approve, If female then check marital status, If Female then check else ignore this rule Marital Status- Reject single women as primary borrower"],"key":"gender","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_1 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Overdue Amount\t<=1000, pass"],"key":"overdue_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (0-6 Months) if\t<3 pass"],"key":"dpd_0_6_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Business Vintage (Years) - >=3 years else reject"],"key":"business_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 2 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil tenure - <=36 months else reject"],"key":"tenure","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Borrower Bureau Score (upto 3 lakh loan amount, >=650 else reject) or Loan Amount >3 Lakh and If score >700 pass else reject"],"key":"bureau_score","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Vintage (Years) >=3 years else reject"],"key":"residence_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Bank Statement 6M, Minimum 6 months"],"key":"bank_statement_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 1 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_2 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Active Credit Lines Count - Value\t<=3 pass"],"key":"active_credit_lines_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (6-12 Months) if <2 pass"],"key":"dpd_6_12_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Applicant NTC, pass if no"],"key":"applicant_ntc","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Cheque Bounce Count 6M,No bounce in last 6 months, pass"],"key":"cheque_bounce_count_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Enquiries Last 3 Months\tValue\t<=5 pass"],"key":"enquiries_last_3_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence to Branch Distance (km) - <=30 KM from branch else reject"],"key":"residence_to_branch_distance_km","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Loan Amount - <=4,00,000 else reject"],"key":"loan_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Ownership - Owned/Ancestral/Rent Free else reject"],"key":"residence_ownership","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Foir foir <= 50% pass else fail"],"key":"foir","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - 1. Expansion of existing business. 2. Purchase of additional stock / raw material / working capital 3. Purchase of machinery/equipment 4. Refinancing of existing loans in case of an existing Navadhan customer"],"key":"loan_utilization","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil bureau_loss_count > 0 fail else pass"],"key":"bureau_loss_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_dbt_count > 0 reject else pass"],"key":"bureau_dbt_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_sub_count any value received > 0 reject else pass"],"key":"bureau_sub_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_write_off_count < 1000 pass else reject"],"key":"bureau_write_off_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_settlement_count > 0 reject else pass"],"key":"bureau_settlement_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}}],"payload":{"application_id":"MP3008","age":43,"gender":"male","marital_status":"married","applicant_ntc":"false","household_monthly_income":43000,"household_annual_income":516000,"household_expenses":14500,"existing_emi_obligations":4951,"business_income":"","agriculture_income":"","dairy_income":"","foir":11.51,"eligible_emi":9299,"eligible_loan_amount":164778,"loan_utilization":"working capital","name_of_bureau":"credit bureau","bureau_score":749,"bureau_pull_date":"2026-08-20","overdue_amount":0,"dpd_0_6_months":0,"bureau_sub_count":0,"bureau_dbt_count":0,"bureau_loss_count":0,"bureau_write_off_count":0,"bureau_settlement_count":0,"bureau_suit_filled_count":0,"bureau_willful_default_count":0,"restructured_count":0,"dpd_6_12_months":0,"enquiries_last_3_months":0,"active_credit_lines_count":1,"bank_statement_6m":"","cheque_bounce_count_6m":"","loan_amount":102695,"tenure":23,"interest_rate":31.4,"apr":36.58,"repayment_frequency":"12","loan_purpose":"working capital","residence_area":"","residence_vintage_years":20,"residence_ownership":"owned","residence_to_branch_distance_km":20,"business_vintage_years":"","asset_fridge_value":10000,"asset_air_conditioner_value":12000,"asset_washing_machine_value":12000,"asset_tv_value":8000,"asset_smart_phone_value":20000,"co_applicant_age_1":39,"co_applicant_relationship_1":"wife","co_applicant_years_of_stay_in_current_address_1":20,"co_applicant_ntc_1":"false","co_applicant_financial_status_1":"financial","co_applicant_name_of_bureau_1":"credit bureau","co_applicant_bureau_score_1":792,"co_applicant_bureau_pull_date_1":"2026-08-20","co_applicant_overdue_amount_1":0,"co_applicant_dpd_0_6_months_1":0,"co_applicant_dpd_6_12_months_1":0,"co_applicant_bureau_sub_count_1":0,"co_applicant_bureau_dbt_count_1":0,"co_applicant_bureau_loss_count_1":0,"co_applicant_bureau_write_off_count_1":0,"co_applicant_bureau_settlement_count_1":0,"co_applicant_bureau_suit_filed_count_1":0,"co_applicant_bureau_willful_default_count_1":0,"co_applicant_restructured_count_1":0,"co_applicant_enquiries_last_3_months_1":0,"co_applicant_active_credit_lines_count_1":0,"co_applicant_age_2":"","co_applicant_relationship_2":"","co_applicant_years_of_stay_in_current_address_2":"","co_applicant_ntc_2":"","co_applicant_financial_status_2":"","co_applicant_name_of_bureau_2":"","co_applicant_bureau_score_2":"","co_applicant_bureau_pull_date_2":"","co_applicant_overdue_amount_2":"","co_applicant_dpd_0_6_months_2":"","co_applicant_dpd_6_12_months_2":"","co_applicant_bureau_sub_count_2":"","co_applicant_bureau_dbt_count_2":"","co_applicant_bureau_loss_count_2":"","co_applicant_bureau_write_off_count_2":"","co_applicant_bureau_settlement_count_2":"","co_applicant_bureau_suit_filed_count_2":"","co_applicant_bureau_willful_default_count_2":"","co_applicant_restructured_count_2":"","co_applicant_enquiries_last_3_months_2":"","co_applicant_active_credit_lines_count_2":"","borrower_maturity_age":44}}}}}} [2026-08-25 15:35:46] INFO: row.api_response {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":4,"vendor_loan_id":56,"http_status":200,"ok":true,"duration_ms":262,"response":{"Blacksoil-Navdhan":{"failed_condition":{"key":"loan_utilization","reason":"Failed: working capital not inList ['expansion of existing business', 'purchase of additional stock/ raw material/ working capital', 'purchase of machinery/equipment', 'refinancing of existing loans in case of an existing navadhan customer']"},"policy_status":false,"rules":[{"against":["pass","equal"],"key":"age","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"borrower_maturity_age","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["18","lessThanEqual"],"key":"co_applicant_age_2","log":[],"reason":"Data not found","result":false,"source":""},{"against":["18","lessThanEqual"],"key":"co_applicant_age_1","log":[],"reason":"Passed: 18.0 lessThanEqual 39","result":true,"source":39},{"against":["pass","equal"],"key":"gender","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"co_applicant_bureau_score_1","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["1000","greaterThanEqual"],"key":"overdue_amount","log":[],"reason":"Passed: 1000.0 greaterThanEqual 0","result":true,"source":0},{"against":["3","greaterThan"],"key":"dpd_0_6_months","log":[],"reason":"Passed: 3.0 greaterThan 0","result":true,"source":0},{"against":["3","lessThanEqual"],"key":"business_vintage_years","log":[],"reason":"Data not found","result":false,"source":""},{"against":["pass","equal"],"key":"co_applicant_maturity_age_2","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["36","greaterThanEqual"],"key":"tenure","log":[],"reason":"Passed: 36.0 greaterThanEqual 23","result":true,"source":23},{"against":["pass","equal"],"key":"bureau_score","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["3","lessThanEqual"],"key":"residence_vintage_years","log":[],"reason":"Passed: 3.0 lessThanEqual 20","result":true,"source":20},{"against":["pass","equal"],"key":"bank_statement_6m","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"co_applicant_maturity_age_1","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"co_applicant_bureau_score_2","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["3","greaterThanEqual"],"key":"active_credit_lines_count","log":[],"reason":"Passed: 3.0 greaterThanEqual 1","result":true,"source":1},{"against":["60","greaterThan"],"key":"dpd_6_12_months","log":[],"reason":"Passed: 60.0 greaterThan 0","result":true,"source":0},{"against":["no","equal"],"key":"applicant_ntc","log":[],"reason":"Failed: no not equal false","result":false,"source":"false"},{"against":["0","greaterThanEqual"],"key":"cheque_bounce_count_6m","log":[],"reason":"Data not found","result":false,"source":""},{"against":["5","greaterThanEqual"],"key":"enquiries_last_3_months","log":[],"reason":"Passed: 5.0 greaterThanEqual 0","result":true,"source":0},{"against":["30","greaterThanEqual"],"key":"residence_to_branch_distance_km","log":[],"reason":"Passed: 30.0 greaterThanEqual 20","result":true,"source":20},{"against":["400000","greaterThanEqual"],"key":"loan_amount","log":[],"reason":"Passed: 400000.0 greaterThanEqual 102695","result":true,"source":102695},{"against":[["rented","owned","leased","owned w/o regn"],"inList"],"key":"residence_ownership","log":[],"reason":"Passed: owned inList ['rented', 'owned', 'leased', 'owned w/o regn']","result":true,"source":"owned"},{"against":[["son","father","mother","grandfather","grandmother","brother","uncle"],"inList"],"key":"co_applicant_relationship_1","log":[],"reason":"Failed: wife not inList ['son', 'father', 'mother', 'grandfather', 'grandmother', 'brother', 'uncle']","result":false,"source":"wife"},{"against":[["father","mother","husband","wife","son","daughter","sister","son-in-law","daughter-in-law","mother-in-law","father-in-law","brother-in-law","sister-in-law","niece","uncle","nephew","aunt","grand-father","grand-mother","grand-son","grand-daughter","self","brother"],"inList"],"key":"co_applicant_relationship_2","log":[],"reason":"Data not found","result":false,"source":""},{"against":["50","greaterThanEqual"],"key":"foir","log":[],"reason":"Passed: 50.0 greaterThanEqual 11.51","result":true,"source":11.51},{"against":[["expansion of existing business","purchase of additional stock/ raw material/ working capital","purchase of machinery/equipment","refinancing of existing loans in case of an existing navadhan customer"],"inList"],"key":"loan_utilization","log":[],"reason":"Failed: working capital not inList ['expansion of existing business', 'purchase of additional stock/ raw material/ working capital', 'purchase of machinery/equipment', 'refinancing of existing loans in case of an existing navadhan customer']","result":false,"source":"working capital"},{"against":["0","greaterThanEqual"],"key":"bureau_loss_count","log":[],"reason":"Passed: 0.0 greaterThanEqual 0","result":true,"source":0},{"against":["0","lessThanEqual"],"key":"bureau_dbt_count","log":[],"reason":"Passed: 0.0 lessThanEqual 0","result":true,"source":0},{"against":["0","lessThanEqual"],"key":"bureau_sub_count","log":[],"reason":"Passed: 0.0 lessThanEqual 0","result":true,"source":0},{"against":["1000","greaterThanEqual"],"key":"bureau_write_off_count","log":[],"reason":"Passed: 1000.0 greaterThanEqual 0","result":true,"source":0},{"against":["0","lessThanEqual"],"key":"bureau_settlement_count","log":[],"reason":"Passed: 0.0 lessThanEqual 0","result":true,"source":0}]},"status":false},"error":null} [2026-08-25 15:35:46] INFO: row.bre_decision_saved {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","row":4,"vendor_loan_id":56,"bre_decision_id":814,"status":"success","decision":null} [2026-08-25 15:35:46] INFO: evaluate.completed {"batch_id":"86c825ad-938e-4b20-82d4-6a07b4dfe8ea","summary":{"total":4,"succeeded":4,"failed":0,"validation_failed":0,"skipped_duplicate":0}} [2026-08-25 16:10:08] INFO: evaluate.received {"batch_id":"d101c367-7ecb-4f0d-ac29-92255e234fb2","has_file":true,"filename":"temp_2026-08-25_16:09:55_1787654395_co_lending_loan_decision.xlsx","size":14369,"mime":null,"ip":null} [2026-08-25 16:10:08] INFO: import.sheet_parsed {"batch_id":"d101c367-7ecb-4f0d-ac29-92255e234fb2","rows_seen":1,"rows_kept":1,"rows_skipped":0} [2026-08-25 16:10:08] INFO: evaluate.excel_parsed {"batch_id":"d101c367-7ecb-4f0d-ac29-92255e234fb2","row_count":1} [2026-08-25 16:10:08] INFO: policy.request {"batch_id":"d101c367-7ecb-4f0d-ac29-92255e234fb2","url":"http://localhost:7000/api/live/policy/policy-d9204242"} [2026-08-25 16:10:09] INFO: policy.response {"batch_id":"d101c367-7ecb-4f0d-ac29-92255e234fb2","ok":true,"http_status":200,"duration_ms":565,"response":{"grade":{"rules":{"Blacksoil-Navdhan":{"rule":[{"description":["Blacksoil Age >=21 and <=60 pass else reject"],"key":"age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Borrower Maturity Age"],"key":"borrower_maturity_age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 2"],"key":"co_applicant_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 1"],"key":"co_applicant_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil gender Male - \"Male - approve, If female then check marital status, If Female then check else ignore this rule Marital Status- Reject single women as primary borrower"],"key":"gender","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_1 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Overdue Amount\t<=1000, pass"],"key":"overdue_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (0-6 Months) if\t<3 pass"],"key":"dpd_0_6_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Business Vintage (Years) - >=3 years else reject"],"key":"business_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 2 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil tenure - <=36 months else reject"],"key":"tenure","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Borrower Bureau Score (upto 3 lakh loan amount, >=650 else reject) or Loan Amount >3 Lakh and If score >700 pass else reject"],"key":"bureau_score","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Vintage (Years) >=3 years else reject"],"key":"residence_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Bank Statement 6M, Minimum 6 months"],"key":"bank_statement_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 1 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_2 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Active Credit Lines Count - Value\t<=3 pass"],"key":"active_credit_lines_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (6-12 Months) if <2 pass"],"key":"dpd_6_12_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Applicant NTC, pass if false"],"key":"applicant_ntc","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Cheque Bounce Count 6M,No bounce in last 6 months, pass"],"key":"cheque_bounce_count_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Enquiries Last 3 Months\tValue\t<=5 pass"],"key":"enquiries_last_3_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence to Branch Distance (km) - <=30 KM from branch else reject"],"key":"residence_to_branch_distance_km","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Loan Amount - <=4,00,000 else reject"],"key":"loan_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Ownership - Owned/Ancestral/Rent Free else reject"],"key":"residence_ownership","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Foir foir <= 50% pass else fail"],"key":"foir","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - 1. Expansion of existing business. 2. Purchase of additional stock / raw material / working capital 3. Purchase of machinery/equipment 4. Refinancing of existing loans in case of an existing Navadhan customer"],"key":"loan_utilization","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil bureau_loss_count > 0 fail else pass"],"key":"bureau_loss_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_dbt_count > 0 reject else pass"],"key":"bureau_dbt_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_sub_count any value received > 0 reject else pass"],"key":"bureau_sub_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_write_off_count < 1000 pass else reject"],"key":"bureau_write_off_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_settlement_count > 0 reject else pass"],"key":"bureau_settlement_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}}]}}}},"error":null} [2026-08-25 16:10:09] INFO: policy.parsed {"batch_id":"d101c367-7ecb-4f0d-ac29-92255e234fb2","policy_count":1,"policy_names":["Blacksoil-Navdhan"]} [2026-08-25 16:10:09] INFO: row.start {"batch_id":"d101c367-7ecb-4f0d-ac29-92255e234fb2","row":1,"application_id":"MP3108"} [2026-08-25 16:10:09] INFO: row.lead_created {"batch_id":"d101c367-7ecb-4f0d-ac29-92255e234fb2","row":1,"application_id":"MP3108","vendor_loan_id":57} [2026-08-25 16:10:09] INFO: row.co_applicants_saved {"batch_id":"d101c367-7ecb-4f0d-ac29-92255e234fb2","row":1,"vendor_loan_id":57,"count":2} [2026-08-25 16:10:09] INFO: row.decision_data_saved {"batch_id":"d101c367-7ecb-4f0d-ac29-92255e234fb2","row":1,"vendor_loan_id":57,"decision_keys":93} [2026-08-25 16:10:09] INFO: row.api_request {"batch_id":"d101c367-7ecb-4f0d-ac29-92255e234fb2","row":1,"vendor_loan_id":57,"url":"http://localhost:8889/","policies_payload":["Blacksoil-Navdhan"],"decision_keys":["application_id","age","gender","marital_status","applicant_ntc","household_monthly_income","household_annual_income","household_expenses","existing_emi_obligations","business_income","agriculture_income","dairy_income","foir","eligible_emi","eligible_loan_amount","loan_utilization","name_of_bureau","bureau_score","bureau_pull_date","overdue_amount","dpd_0_6_months","bureau_sub_count","bureau_dbt_count","bureau_loss_count","bureau_write_off_count","bureau_settlement_count","bureau_suit_filled_count","bureau_willful_default_count","restructured_count","dpd_6_12_months","enquiries_last_3_months","active_credit_lines_count","bank_statement_6m","cheque_bounce_count_6m","loan_amount","tenure","interest_rate","apr","repayment_frequency","loan_purpose","residence_area","residence_vintage_years","residence_ownership","residence_to_branch_distance_km","business_vintage_years","asset_fridge_value","asset_air_conditioner_value","asset_washing_machine_value","asset_tv_value","asset_smart_phone_value","co_applicant_age_1","co_applicant_relationship_1","co_applicant_years_of_stay_in_current_address_1","co_applicant_ntc_1","co_applicant_financial_status_1","co_applicant_name_of_bureau_1","co_applicant_bureau_score_1","co_applicant_bureau_pull_date_1","co_applicant_overdue_amount_1","co_applicant_dpd_0_6_months_1","co_applicant_dpd_6_12_months_1","co_applicant_bureau_sub_count_1","co_applicant_bureau_dbt_count_1","co_applicant_bureau_loss_count_1","co_applicant_bureau_write_off_count_1","co_applicant_bureau_settlement_count_1","co_applicant_bureau_suit_filed_count_1","co_applicant_bureau_willful_default_count_1","co_applicant_restructured_count_1","co_applicant_enquiries_last_3_months_1","co_applicant_active_credit_lines_count_1","co_applicant_age_2","co_applicant_relationship_2","co_applicant_years_of_stay_in_current_address_2","co_applicant_ntc_2","co_applicant_financial_status_2","co_applicant_name_of_bureau_2","co_applicant_bureau_score_2","co_applicant_bureau_pull_date_2","co_applicant_overdue_amount_2","co_applicant_dpd_0_6_months_2","co_applicant_dpd_6_12_months_2","co_applicant_bureau_sub_count_2","co_applicant_bureau_dbt_count_2","co_applicant_bureau_loss_count_2","co_applicant_bureau_write_off_count_2","co_applicant_bureau_settlement_count_2","co_applicant_bureau_suit_filed_count_2","co_applicant_bureau_willful_default_count_2","co_applicant_restructured_count_2","co_applicant_enquiries_last_3_months_2","co_applicant_active_credit_lines_count_2","borrower_maturity_age"],"payload":{"grade":{"rules":{"Blacksoil-Navdhan":{"rule":[{"description":["Blacksoil Age >=21 and <=60 pass else reject"],"key":"age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Borrower Maturity Age"],"key":"borrower_maturity_age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 2"],"key":"co_applicant_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 1"],"key":"co_applicant_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil gender Male - \"Male - approve, If female then check marital status, If Female then check else ignore this rule Marital Status- Reject single women as primary borrower"],"key":"gender","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_1 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Overdue Amount\t<=1000, pass"],"key":"overdue_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (0-6 Months) if\t<3 pass"],"key":"dpd_0_6_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Business Vintage (Years) - >=3 years else reject"],"key":"business_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 2 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil tenure - <=36 months else reject"],"key":"tenure","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Borrower Bureau Score (upto 3 lakh loan amount, >=650 else reject) or Loan Amount >3 Lakh and If score >700 pass else reject"],"key":"bureau_score","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Vintage (Years) >=3 years else reject"],"key":"residence_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Bank Statement 6M, Minimum 6 months"],"key":"bank_statement_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 1 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_2 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Active Credit Lines Count - Value\t<=3 pass"],"key":"active_credit_lines_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (6-12 Months) if <2 pass"],"key":"dpd_6_12_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Applicant NTC, pass if false"],"key":"applicant_ntc","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Cheque Bounce Count 6M,No bounce in last 6 months, pass"],"key":"cheque_bounce_count_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Enquiries Last 3 Months\tValue\t<=5 pass"],"key":"enquiries_last_3_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence to Branch Distance (km) - <=30 KM from branch else reject"],"key":"residence_to_branch_distance_km","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Loan Amount - <=4,00,000 else reject"],"key":"loan_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Ownership - Owned/Ancestral/Rent Free else reject"],"key":"residence_ownership","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Foir foir <= 50% pass else fail"],"key":"foir","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - 1. Expansion of existing business. 2. Purchase of additional stock / raw material / working capital 3. Purchase of machinery/equipment 4. Refinancing of existing loans in case of an existing Navadhan customer"],"key":"loan_utilization","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil bureau_loss_count > 0 fail else pass"],"key":"bureau_loss_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_dbt_count > 0 reject else pass"],"key":"bureau_dbt_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_sub_count any value received > 0 reject else pass"],"key":"bureau_sub_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_write_off_count < 1000 pass else reject"],"key":"bureau_write_off_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_settlement_count > 0 reject else pass"],"key":"bureau_settlement_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}}],"payload":{"application_id":"MP3108","age":39,"gender":"female","marital_status":"married","applicant_ntc":"false","household_monthly_income":88800,"household_annual_income":1065600,"household_expenses":36460,"existing_emi_obligations":14281,"business_income":"","agriculture_income":"","dairy_income":58800,"foir":16.08,"eligible_emi":11889,"eligible_loan_amount":210673,"loan_utilization":"expansion of existing business","name_of_bureau":"credit bureau","bureau_score":786,"bureau_pull_date":"2026-08-22","overdue_amount":0,"dpd_0_6_months":0,"bureau_sub_count":0,"bureau_dbt_count":0,"bureau_loss_count":0,"bureau_write_off_count":0,"bureau_settlement_count":0,"bureau_suit_filled_count":0,"bureau_willful_default_count":0,"restructured_count":0,"dpd_6_12_months":0,"enquiries_last_3_months":1,"active_credit_lines_count":0,"bank_statement_6m":"","cheque_bounce_count_6m":"","loan_amount":100158,"tenure":23,"interest_rate":29.43,"apr":35.94,"repayment_frequency":"12","loan_purpose":"purchase of cattle","residence_area":"","residence_vintage_years":30,"residence_ownership":"owned","residence_to_branch_distance_km":"","business_vintage_years":5,"asset_fridge_value":10000,"asset_air_conditioner_value":12000,"asset_washing_machine_value":12000,"asset_tv_value":8000,"asset_smart_phone_value":20000,"co_applicant_age_1":37,"co_applicant_relationship_1":"husband","co_applicant_years_of_stay_in_current_address_1":30,"co_applicant_ntc_1":"false","co_applicant_financial_status_1":"financial","co_applicant_name_of_bureau_1":"credit bureau","co_applicant_bureau_score_1":711,"co_applicant_bureau_pull_date_1":"2026-08-21","co_applicant_overdue_amount_1":0,"co_applicant_dpd_0_6_months_1":0,"co_applicant_dpd_6_12_months_1":0,"co_applicant_bureau_sub_count_1":0,"co_applicant_bureau_dbt_count_1":0,"co_applicant_bureau_loss_count_1":0,"co_applicant_bureau_write_off_count_1":0,"co_applicant_bureau_settlement_count_1":0,"co_applicant_bureau_suit_filed_count_1":0,"co_applicant_bureau_willful_default_count_1":0,"co_applicant_restructured_count_1":0,"co_applicant_enquiries_last_3_months_1":1,"co_applicant_active_credit_lines_count_1":5,"co_applicant_age_2":36,"co_applicant_relationship_2":"brother-in-law","co_applicant_years_of_stay_in_current_address_2":30,"co_applicant_ntc_2":"true","co_applicant_financial_status_2":"financial","co_applicant_name_of_bureau_2":"credit bureau","co_applicant_bureau_score_2":0,"co_applicant_bureau_pull_date_2":"2026-08-22","co_applicant_overdue_amount_2":0,"co_applicant_dpd_0_6_months_2":0,"co_applicant_dpd_6_12_months_2":0,"co_applicant_bureau_sub_count_2":0,"co_applicant_bureau_dbt_count_2":0,"co_applicant_bureau_loss_count_2":0,"co_applicant_bureau_write_off_count_2":0,"co_applicant_bureau_settlement_count_2":0,"co_applicant_bureau_suit_filed_count_2":0,"co_applicant_bureau_willful_default_count_2":0,"co_applicant_restructured_count_2":0,"co_applicant_enquiries_last_3_months_2":1,"co_applicant_active_credit_lines_count_2":0,"borrower_maturity_age":40}}}}}} [2026-08-25 16:10:10] INFO: row.api_response {"batch_id":"d101c367-7ecb-4f0d-ac29-92255e234fb2","row":1,"vendor_loan_id":57,"http_status":200,"ok":true,"duration_ms":439,"response":{"Blacksoil-Navdhan":{"failed_condition":{"key":"residence_to_branch_distance_km","reason":"Data not found"},"policy_status":false,"rules":[{"against":["pass","equal"],"key":"age","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"borrower_maturity_age","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["18","lessThanEqual"],"key":"co_applicant_age_2","log":[],"reason":"Passed: 18.0 lessThanEqual 36","result":true,"source":36},{"against":["18","lessThanEqual"],"key":"co_applicant_age_1","log":[],"reason":"Passed: 18.0 lessThanEqual 37","result":true,"source":37},{"against":["pass","equal"],"key":"gender","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"co_applicant_bureau_score_1","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["1000","greaterThanEqual"],"key":"overdue_amount","log":[],"reason":"Passed: 1000.0 greaterThanEqual 0","result":true,"source":0},{"against":["3","greaterThan"],"key":"dpd_0_6_months","log":[],"reason":"Passed: 3.0 greaterThan 0","result":true,"source":0},{"against":["3","lessThanEqual"],"key":"business_vintage_years","log":[],"reason":"Passed: 3.0 lessThanEqual 5","result":true,"source":5},{"against":["pass","equal"],"key":"co_applicant_maturity_age_2","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["36","greaterThanEqual"],"key":"tenure","log":[],"reason":"Passed: 36.0 greaterThanEqual 23","result":true,"source":23},{"against":["pass","equal"],"key":"bureau_score","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["3","lessThanEqual"],"key":"residence_vintage_years","log":[],"reason":"Passed: 3.0 lessThanEqual 30","result":true,"source":30},{"against":["pass","equal"],"key":"bank_statement_6m","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"co_applicant_maturity_age_1","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"co_applicant_bureau_score_2","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["3","greaterThanEqual"],"key":"active_credit_lines_count","log":[],"reason":"Passed: 3.0 greaterThanEqual 0","result":true,"source":0},{"against":["60","greaterThan"],"key":"dpd_6_12_months","log":[],"reason":"Passed: 60.0 greaterThan 0","result":true,"source":0},{"against":["false","equal"],"key":"applicant_ntc","log":[],"reason":"Passed: false equal false","result":true,"source":"false"},{"against":["0","greaterThanEqual"],"key":"cheque_bounce_count_6m","log":[],"reason":"Data not found","result":false,"source":""},{"against":["5","greaterThanEqual"],"key":"enquiries_last_3_months","log":[],"reason":"Passed: 5.0 greaterThanEqual 1","result":true,"source":1},{"against":["30","greaterThanEqual"],"key":"residence_to_branch_distance_km","log":[],"reason":"Data not found","result":false,"source":""},{"against":["400000","greaterThanEqual"],"key":"loan_amount","log":[],"reason":"Passed: 400000.0 greaterThanEqual 100158","result":true,"source":100158},{"against":[["rented","owned","leased","owned w/o regn"],"inList"],"key":"residence_ownership","log":[],"reason":"Passed: owned inList ['rented', 'owned', 'leased', 'owned w/o regn']","result":true,"source":"owned"},{"against":[["father","mother","husband","wife","son","daughter","sister","son-in-law","daughter-in-law","mother-in-law","father-in-law","brother-in-law","sister-in-law","niece","uncle","nephew","aunt","grand-father","grand-mother","grand-son","grand-daughter","self","brother"],"inList"],"key":"co_applicant_relationship_1","log":[],"reason":"Passed: husband inList ['father', 'mother', 'husband', 'wife', 'son', 'daughter', 'sister', 'son-in-law', 'daughter-in-law', 'mother-in-law', 'father-in-law', 'brother-in-law', 'sister-in-law', 'niece', 'uncle', 'nephew', 'aunt', 'grand-father', 'grand-mother', 'grand-son', 'grand-daughter', 'self', 'brother']","result":true,"source":"husband"},{"against":[["father","mother","husband","wife","son","daughter","sister","son-in-law","daughter-in-law","mother-in-law","father-in-law","brother-in-law","sister-in-law","niece","uncle","nephew","aunt","grand-father","grand-mother","grand-son","grand-daughter","self","brother"],"inList"],"key":"co_applicant_relationship_2","log":[],"reason":"Passed: brother-in-law inList ['father', 'mother', 'husband', 'wife', 'son', 'daughter', 'sister', 'son-in-law', 'daughter-in-law', 'mother-in-law', 'father-in-law', 'brother-in-law', 'sister-in-law', 'niece', 'uncle', 'nephew', 'aunt', 'grand-father', 'grand-mother', 'grand-son', 'grand-daughter', 'self', 'brother']","result":true,"source":"brother-in-law"},{"against":["50","greaterThanEqual"],"key":"foir","log":[],"reason":"Passed: 50.0 greaterThanEqual 16.08","result":true,"source":16.08},{"against":[["expansion of existing business","purchase of additional stock/ raw material/ working capital","purchase of machinery/equipment","refinancing of existing loans in case of an existing navadhan customer"],"inList"],"key":"loan_utilization","log":[],"reason":"Passed: expansion of existing business inList ['expansion of existing business', 'purchase of additional stock/ raw material/ working capital', 'purchase of machinery/equipment', 'refinancing of existing loans in case of an existing navadhan customer']","result":true,"source":"expansion of existing business"},{"against":["0","greaterThanEqual"],"key":"bureau_loss_count","log":[],"reason":"Passed: 0.0 greaterThanEqual 0","result":true,"source":0},{"against":["0","lessThanEqual"],"key":"bureau_dbt_count","log":[],"reason":"Passed: 0.0 lessThanEqual 0","result":true,"source":0},{"against":["0","lessThanEqual"],"key":"bureau_sub_count","log":[],"reason":"Passed: 0.0 lessThanEqual 0","result":true,"source":0},{"against":["1000","greaterThanEqual"],"key":"bureau_write_off_count","log":[],"reason":"Passed: 1000.0 greaterThanEqual 0","result":true,"source":0},{"against":["0","lessThanEqual"],"key":"bureau_settlement_count","log":[],"reason":"Passed: 0.0 lessThanEqual 0","result":true,"source":0}]},"status":false},"error":null} [2026-08-25 16:10:10] INFO: row.bre_decision_saved {"batch_id":"d101c367-7ecb-4f0d-ac29-92255e234fb2","row":1,"vendor_loan_id":57,"bre_decision_id":815,"status":"success","decision":null} [2026-08-25 16:10:10] INFO: evaluate.completed {"batch_id":"d101c367-7ecb-4f0d-ac29-92255e234fb2","summary":{"total":1,"succeeded":1,"failed":0,"validation_failed":0,"skipped_duplicate":0}} [2026-08-25 16:12:32] INFO: evaluate.received {"batch_id":"e05f7284-4672-4c5d-a751-8fe9bea7f04b","has_file":true,"filename":"temp_2026-08-25_16:12:22_1787654542_co_lending_loan_decision.xlsx","size":14373,"mime":null,"ip":null} [2026-08-25 16:12:32] INFO: import.sheet_parsed {"batch_id":"e05f7284-4672-4c5d-a751-8fe9bea7f04b","rows_seen":1,"rows_kept":1,"rows_skipped":0} [2026-08-25 16:12:32] INFO: evaluate.excel_parsed {"batch_id":"e05f7284-4672-4c5d-a751-8fe9bea7f04b","row_count":1} [2026-08-25 16:12:32] INFO: policy.request {"batch_id":"e05f7284-4672-4c5d-a751-8fe9bea7f04b","url":"http://localhost:7000/api/live/policy/policy-d9204242"} [2026-08-25 16:12:32] INFO: policy.response {"batch_id":"e05f7284-4672-4c5d-a751-8fe9bea7f04b","ok":true,"http_status":200,"duration_ms":431,"response":{"grade":{"rules":{"Blacksoil-Navdhan":{"rule":[{"description":["Blacksoil Age >=21 and <=60 pass else reject"],"key":"age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Borrower Maturity Age"],"key":"borrower_maturity_age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 2"],"key":"co_applicant_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 1"],"key":"co_applicant_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil gender Male - \"Male - approve, If female then check marital status, If Female then check else ignore this rule Marital Status- Reject single women as primary borrower"],"key":"gender","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_1 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Overdue Amount\t<=1000, pass"],"key":"overdue_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (0-6 Months) if\t<3 pass"],"key":"dpd_0_6_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Business Vintage (Years) - >=3 years else reject"],"key":"business_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 2 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil tenure - <=36 months else reject"],"key":"tenure","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Borrower Bureau Score (upto 3 lakh loan amount, >=650 else reject) or Loan Amount >3 Lakh and If score >700 pass else reject"],"key":"bureau_score","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Vintage (Years) >=3 years else reject"],"key":"residence_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Bank Statement 6M, Minimum 6 months"],"key":"bank_statement_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 1 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_2 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Active Credit Lines Count - Value\t<=3 pass"],"key":"active_credit_lines_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (6-12 Months) if <2 pass"],"key":"dpd_6_12_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Applicant NTC, pass if false"],"key":"applicant_ntc","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Cheque Bounce Count 6M,No bounce in last 6 months, pass"],"key":"cheque_bounce_count_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Enquiries Last 3 Months\tValue\t<=5 pass"],"key":"enquiries_last_3_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence to Branch Distance (km) - <=30 KM from branch else reject"],"key":"residence_to_branch_distance_km","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Loan Amount - <=4,00,000 else reject"],"key":"loan_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Ownership - Owned/Ancestral/Rent Free else reject"],"key":"residence_ownership","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Foir foir <= 50% pass else fail"],"key":"foir","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - 1. Expansion of existing business. 2. Purchase of additional stock / raw material / working capital 3. Purchase of machinery/equipment 4. Refinancing of existing loans in case of an existing Navadhan customer"],"key":"loan_utilization","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil bureau_loss_count > 0 fail else pass"],"key":"bureau_loss_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_dbt_count > 0 reject else pass"],"key":"bureau_dbt_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_sub_count any value received > 0 reject else pass"],"key":"bureau_sub_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_write_off_count < 1000 pass else reject"],"key":"bureau_write_off_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_settlement_count > 0 reject else pass"],"key":"bureau_settlement_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}}]}}}},"error":null} [2026-08-25 16:12:32] INFO: policy.parsed {"batch_id":"e05f7284-4672-4c5d-a751-8fe9bea7f04b","policy_count":1,"policy_names":["Blacksoil-Navdhan"]} [2026-08-25 16:12:32] INFO: row.start {"batch_id":"e05f7284-4672-4c5d-a751-8fe9bea7f04b","row":1,"application_id":"MP3109"} [2026-08-25 16:12:33] INFO: row.lead_created {"batch_id":"e05f7284-4672-4c5d-a751-8fe9bea7f04b","row":1,"application_id":"MP3109","vendor_loan_id":58} [2026-08-25 16:12:33] INFO: row.co_applicants_saved {"batch_id":"e05f7284-4672-4c5d-a751-8fe9bea7f04b","row":1,"vendor_loan_id":58,"count":2} [2026-08-25 16:12:33] INFO: row.decision_data_saved {"batch_id":"e05f7284-4672-4c5d-a751-8fe9bea7f04b","row":1,"vendor_loan_id":58,"decision_keys":93} [2026-08-25 16:12:33] INFO: row.api_request {"batch_id":"e05f7284-4672-4c5d-a751-8fe9bea7f04b","row":1,"vendor_loan_id":58,"url":"http://localhost:8889/","policies_payload":["Blacksoil-Navdhan"],"decision_keys":["application_id","age","gender","marital_status","applicant_ntc","household_monthly_income","household_annual_income","household_expenses","existing_emi_obligations","business_income","agriculture_income","dairy_income","foir","eligible_emi","eligible_loan_amount","loan_utilization","name_of_bureau","bureau_score","bureau_pull_date","overdue_amount","dpd_0_6_months","bureau_sub_count","bureau_dbt_count","bureau_loss_count","bureau_write_off_count","bureau_settlement_count","bureau_suit_filled_count","bureau_willful_default_count","restructured_count","dpd_6_12_months","enquiries_last_3_months","active_credit_lines_count","bank_statement_6m","cheque_bounce_count_6m","loan_amount","tenure","interest_rate","apr","repayment_frequency","loan_purpose","residence_area","residence_vintage_years","residence_ownership","residence_to_branch_distance_km","business_vintage_years","asset_fridge_value","asset_air_conditioner_value","asset_washing_machine_value","asset_tv_value","asset_smart_phone_value","co_applicant_age_1","co_applicant_relationship_1","co_applicant_years_of_stay_in_current_address_1","co_applicant_ntc_1","co_applicant_financial_status_1","co_applicant_name_of_bureau_1","co_applicant_bureau_score_1","co_applicant_bureau_pull_date_1","co_applicant_overdue_amount_1","co_applicant_dpd_0_6_months_1","co_applicant_dpd_6_12_months_1","co_applicant_bureau_sub_count_1","co_applicant_bureau_dbt_count_1","co_applicant_bureau_loss_count_1","co_applicant_bureau_write_off_count_1","co_applicant_bureau_settlement_count_1","co_applicant_bureau_suit_filed_count_1","co_applicant_bureau_willful_default_count_1","co_applicant_restructured_count_1","co_applicant_enquiries_last_3_months_1","co_applicant_active_credit_lines_count_1","co_applicant_age_2","co_applicant_relationship_2","co_applicant_years_of_stay_in_current_address_2","co_applicant_ntc_2","co_applicant_financial_status_2","co_applicant_name_of_bureau_2","co_applicant_bureau_score_2","co_applicant_bureau_pull_date_2","co_applicant_overdue_amount_2","co_applicant_dpd_0_6_months_2","co_applicant_dpd_6_12_months_2","co_applicant_bureau_sub_count_2","co_applicant_bureau_dbt_count_2","co_applicant_bureau_loss_count_2","co_applicant_bureau_write_off_count_2","co_applicant_bureau_settlement_count_2","co_applicant_bureau_suit_filed_count_2","co_applicant_bureau_willful_default_count_2","co_applicant_restructured_count_2","co_applicant_enquiries_last_3_months_2","co_applicant_active_credit_lines_count_2","borrower_maturity_age"],"payload":{"grade":{"rules":{"Blacksoil-Navdhan":{"rule":[{"description":["Blacksoil Age >=21 and <=60 pass else reject"],"key":"age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Borrower Maturity Age"],"key":"borrower_maturity_age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 2"],"key":"co_applicant_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 1"],"key":"co_applicant_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil gender Male - \"Male - approve, If female then check marital status, If Female then check else ignore this rule Marital Status- Reject single women as primary borrower"],"key":"gender","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_1 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Overdue Amount\t<=1000, pass"],"key":"overdue_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (0-6 Months) if\t<3 pass"],"key":"dpd_0_6_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Business Vintage (Years) - >=3 years else reject"],"key":"business_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 2 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil tenure - <=36 months else reject"],"key":"tenure","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Borrower Bureau Score (upto 3 lakh loan amount, >=650 else reject) or Loan Amount >3 Lakh and If score >700 pass else reject"],"key":"bureau_score","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Vintage (Years) >=3 years else reject"],"key":"residence_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Bank Statement 6M, Minimum 6 months"],"key":"bank_statement_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 1 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_2 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Active Credit Lines Count - Value\t<=3 pass"],"key":"active_credit_lines_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (6-12 Months) if <2 pass"],"key":"dpd_6_12_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Applicant NTC, pass if false"],"key":"applicant_ntc","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Cheque Bounce Count 6M,No bounce in last 6 months, pass"],"key":"cheque_bounce_count_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Enquiries Last 3 Months\tValue\t<=5 pass"],"key":"enquiries_last_3_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence to Branch Distance (km) - <=30 KM from branch else reject"],"key":"residence_to_branch_distance_km","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Loan Amount - <=4,00,000 else reject"],"key":"loan_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Ownership - Owned/Ancestral/Rent Free else reject"],"key":"residence_ownership","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Foir foir <= 50% pass else fail"],"key":"foir","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - 1. Expansion of existing business. 2. Purchase of additional stock / raw material / working capital 3. Purchase of machinery/equipment 4. Refinancing of existing loans in case of an existing Navadhan customer"],"key":"loan_utilization","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil bureau_loss_count > 0 fail else pass"],"key":"bureau_loss_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_dbt_count > 0 reject else pass"],"key":"bureau_dbt_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_sub_count any value received > 0 reject else pass"],"key":"bureau_sub_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_write_off_count < 1000 pass else reject"],"key":"bureau_write_off_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_settlement_count > 0 reject else pass"],"key":"bureau_settlement_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}}],"payload":{"application_id":"MP3109","age":39,"gender":"female","marital_status":"married","applicant_ntc":"false","household_monthly_income":88800,"household_annual_income":1065600,"household_expenses":36460,"existing_emi_obligations":14281,"business_income":"","agriculture_income":"","dairy_income":58800,"foir":16.08,"eligible_emi":11889,"eligible_loan_amount":210673,"loan_utilization":"expansion of existing business","name_of_bureau":"credit bureau","bureau_score":786,"bureau_pull_date":"2026-08-22","overdue_amount":0,"dpd_0_6_months":0,"bureau_sub_count":0,"bureau_dbt_count":0,"bureau_loss_count":0,"bureau_write_off_count":0,"bureau_settlement_count":0,"bureau_suit_filled_count":0,"bureau_willful_default_count":0,"restructured_count":0,"dpd_6_12_months":0,"enquiries_last_3_months":1,"active_credit_lines_count":0,"bank_statement_6m":"","cheque_bounce_count_6m":"","loan_amount":100158,"tenure":23,"interest_rate":29.43,"apr":35.94,"repayment_frequency":"12","loan_purpose":"purchase of cattle","residence_area":"","residence_vintage_years":30,"residence_ownership":"owned","residence_to_branch_distance_km":30,"business_vintage_years":5,"asset_fridge_value":10000,"asset_air_conditioner_value":12000,"asset_washing_machine_value":12000,"asset_tv_value":8000,"asset_smart_phone_value":20000,"co_applicant_age_1":37,"co_applicant_relationship_1":"husband","co_applicant_years_of_stay_in_current_address_1":30,"co_applicant_ntc_1":"false","co_applicant_financial_status_1":"financial","co_applicant_name_of_bureau_1":"credit bureau","co_applicant_bureau_score_1":711,"co_applicant_bureau_pull_date_1":"2026-08-21","co_applicant_overdue_amount_1":0,"co_applicant_dpd_0_6_months_1":0,"co_applicant_dpd_6_12_months_1":0,"co_applicant_bureau_sub_count_1":0,"co_applicant_bureau_dbt_count_1":0,"co_applicant_bureau_loss_count_1":0,"co_applicant_bureau_write_off_count_1":0,"co_applicant_bureau_settlement_count_1":0,"co_applicant_bureau_suit_filed_count_1":0,"co_applicant_bureau_willful_default_count_1":0,"co_applicant_restructured_count_1":0,"co_applicant_enquiries_last_3_months_1":1,"co_applicant_active_credit_lines_count_1":5,"co_applicant_age_2":36,"co_applicant_relationship_2":"brother-in-law","co_applicant_years_of_stay_in_current_address_2":30,"co_applicant_ntc_2":"true","co_applicant_financial_status_2":"financial","co_applicant_name_of_bureau_2":"credit bureau","co_applicant_bureau_score_2":0,"co_applicant_bureau_pull_date_2":"2026-08-22","co_applicant_overdue_amount_2":0,"co_applicant_dpd_0_6_months_2":0,"co_applicant_dpd_6_12_months_2":0,"co_applicant_bureau_sub_count_2":0,"co_applicant_bureau_dbt_count_2":0,"co_applicant_bureau_loss_count_2":0,"co_applicant_bureau_write_off_count_2":0,"co_applicant_bureau_settlement_count_2":0,"co_applicant_bureau_suit_filed_count_2":0,"co_applicant_bureau_willful_default_count_2":0,"co_applicant_restructured_count_2":0,"co_applicant_enquiries_last_3_months_2":1,"co_applicant_active_credit_lines_count_2":0,"borrower_maturity_age":40}}}}}} [2026-08-25 16:12:33] INFO: row.api_response {"batch_id":"e05f7284-4672-4c5d-a751-8fe9bea7f04b","row":1,"vendor_loan_id":58,"http_status":200,"ok":true,"duration_ms":409,"response":{"Blacksoil-Navdhan":{"failed_condition":{"key":"cheque_bounce_count_6m","reason":"Data not found"},"policy_status":false,"rules":[{"against":["pass","equal"],"key":"age","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"borrower_maturity_age","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["18","lessThanEqual"],"key":"co_applicant_age_2","log":[],"reason":"Passed: 18.0 lessThanEqual 36","result":true,"source":36},{"against":["18","lessThanEqual"],"key":"co_applicant_age_1","log":[],"reason":"Passed: 18.0 lessThanEqual 37","result":true,"source":37},{"against":["pass","equal"],"key":"gender","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"co_applicant_bureau_score_1","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["1000","greaterThanEqual"],"key":"overdue_amount","log":[],"reason":"Passed: 1000.0 greaterThanEqual 0","result":true,"source":0},{"against":["3","greaterThan"],"key":"dpd_0_6_months","log":[],"reason":"Passed: 3.0 greaterThan 0","result":true,"source":0},{"against":["3","lessThanEqual"],"key":"business_vintage_years","log":[],"reason":"Passed: 3.0 lessThanEqual 5","result":true,"source":5},{"against":["pass","equal"],"key":"co_applicant_maturity_age_2","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["36","greaterThanEqual"],"key":"tenure","log":[],"reason":"Passed: 36.0 greaterThanEqual 23","result":true,"source":23},{"against":["pass","equal"],"key":"bureau_score","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["3","lessThanEqual"],"key":"residence_vintage_years","log":[],"reason":"Passed: 3.0 lessThanEqual 30","result":true,"source":30},{"against":["pass","equal"],"key":"bank_statement_6m","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"co_applicant_maturity_age_1","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"co_applicant_bureau_score_2","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["3","greaterThanEqual"],"key":"active_credit_lines_count","log":[],"reason":"Passed: 3.0 greaterThanEqual 0","result":true,"source":0},{"against":["60","greaterThan"],"key":"dpd_6_12_months","log":[],"reason":"Passed: 60.0 greaterThan 0","result":true,"source":0},{"against":["false","equal"],"key":"applicant_ntc","log":[],"reason":"Passed: false equal false","result":true,"source":"false"},{"against":["0","greaterThanEqual"],"key":"cheque_bounce_count_6m","log":[],"reason":"Data not found","result":false,"source":""},{"against":["5","greaterThanEqual"],"key":"enquiries_last_3_months","log":[],"reason":"Passed: 5.0 greaterThanEqual 1","result":true,"source":1},{"against":["30","greaterThanEqual"],"key":"residence_to_branch_distance_km","log":[],"reason":"Passed: 30.0 greaterThanEqual 30","result":true,"source":30},{"against":["400000","greaterThanEqual"],"key":"loan_amount","log":[],"reason":"Passed: 400000.0 greaterThanEqual 100158","result":true,"source":100158},{"against":[["rented","owned","leased","owned w/o regn"],"inList"],"key":"residence_ownership","log":[],"reason":"Passed: owned inList ['rented', 'owned', 'leased', 'owned w/o regn']","result":true,"source":"owned"},{"against":[["father","mother","husband","wife","son","daughter","sister","son-in-law","daughter-in-law","mother-in-law","father-in-law","brother-in-law","sister-in-law","niece","uncle","nephew","aunt","grand-father","grand-mother","grand-son","grand-daughter","self","brother"],"inList"],"key":"co_applicant_relationship_1","log":[],"reason":"Passed: husband inList ['father', 'mother', 'husband', 'wife', 'son', 'daughter', 'sister', 'son-in-law', 'daughter-in-law', 'mother-in-law', 'father-in-law', 'brother-in-law', 'sister-in-law', 'niece', 'uncle', 'nephew', 'aunt', 'grand-father', 'grand-mother', 'grand-son', 'grand-daughter', 'self', 'brother']","result":true,"source":"husband"},{"against":[["father","mother","husband","wife","son","daughter","sister","son-in-law","daughter-in-law","mother-in-law","father-in-law","brother-in-law","sister-in-law","niece","uncle","nephew","aunt","grand-father","grand-mother","grand-son","grand-daughter","self","brother"],"inList"],"key":"co_applicant_relationship_2","log":[],"reason":"Passed: brother-in-law inList ['father', 'mother', 'husband', 'wife', 'son', 'daughter', 'sister', 'son-in-law', 'daughter-in-law', 'mother-in-law', 'father-in-law', 'brother-in-law', 'sister-in-law', 'niece', 'uncle', 'nephew', 'aunt', 'grand-father', 'grand-mother', 'grand-son', 'grand-daughter', 'self', 'brother']","result":true,"source":"brother-in-law"},{"against":["50","greaterThanEqual"],"key":"foir","log":[],"reason":"Passed: 50.0 greaterThanEqual 16.08","result":true,"source":16.08},{"against":[["expansion of existing business","purchase of additional stock/ raw material/ working capital","purchase of machinery/equipment","refinancing of existing loans in case of an existing navadhan customer"],"inList"],"key":"loan_utilization","log":[],"reason":"Passed: expansion of existing business inList ['expansion of existing business', 'purchase of additional stock/ raw material/ working capital', 'purchase of machinery/equipment', 'refinancing of existing loans in case of an existing navadhan customer']","result":true,"source":"expansion of existing business"},{"against":["0","greaterThanEqual"],"key":"bureau_loss_count","log":[],"reason":"Passed: 0.0 greaterThanEqual 0","result":true,"source":0},{"against":["0","lessThanEqual"],"key":"bureau_dbt_count","log":[],"reason":"Passed: 0.0 lessThanEqual 0","result":true,"source":0},{"against":["0","lessThanEqual"],"key":"bureau_sub_count","log":[],"reason":"Passed: 0.0 lessThanEqual 0","result":true,"source":0},{"against":["1000","greaterThanEqual"],"key":"bureau_write_off_count","log":[],"reason":"Passed: 1000.0 greaterThanEqual 0","result":true,"source":0},{"against":["0","lessThanEqual"],"key":"bureau_settlement_count","log":[],"reason":"Passed: 0.0 lessThanEqual 0","result":true,"source":0}]},"status":false},"error":null} [2026-08-25 16:12:33] INFO: row.bre_decision_saved {"batch_id":"e05f7284-4672-4c5d-a751-8fe9bea7f04b","row":1,"vendor_loan_id":58,"bre_decision_id":816,"status":"success","decision":null} [2026-08-25 16:12:33] INFO: evaluate.completed {"batch_id":"e05f7284-4672-4c5d-a751-8fe9bea7f04b","summary":{"total":1,"succeeded":1,"failed":0,"validation_failed":0,"skipped_duplicate":0}} [2026-08-25 16:15:21] INFO: evaluate.received {"batch_id":"2a35e20f-0afc-40d8-973b-1f5dbc24f099","has_file":true,"filename":"temp_2026-08-25_16:14:41_1787654681_co_lending_loan_decision.xlsx","size":14383,"mime":null,"ip":null} [2026-08-25 16:15:21] INFO: import.sheet_parsed {"batch_id":"2a35e20f-0afc-40d8-973b-1f5dbc24f099","rows_seen":1,"rows_kept":1,"rows_skipped":0} [2026-08-25 16:15:21] INFO: evaluate.excel_parsed {"batch_id":"2a35e20f-0afc-40d8-973b-1f5dbc24f099","row_count":1} [2026-08-25 16:15:21] INFO: policy.request {"batch_id":"2a35e20f-0afc-40d8-973b-1f5dbc24f099","url":"http://localhost:7000/api/live/policy/policy-d9204242"} [2026-08-25 16:15:22] INFO: policy.response {"batch_id":"2a35e20f-0afc-40d8-973b-1f5dbc24f099","ok":true,"http_status":200,"duration_ms":392,"response":{"grade":{"rules":{"Blacksoil-Navdhan":{"rule":[{"description":["Blacksoil Age >=21 and <=60 pass else reject"],"key":"age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Borrower Maturity Age"],"key":"borrower_maturity_age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 2"],"key":"co_applicant_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 1"],"key":"co_applicant_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil gender Male - \"Male - approve, If female then check marital status, If Female then check else ignore this rule Marital Status- Reject single women as primary borrower"],"key":"gender","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_1 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Overdue Amount\t<=1000, pass"],"key":"overdue_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (0-6 Months) if\t<3 pass"],"key":"dpd_0_6_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Business Vintage (Years) - >=3 years else reject"],"key":"business_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 2 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil tenure - <=36 months else reject"],"key":"tenure","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Borrower Bureau Score (upto 3 lakh loan amount, >=650 else reject) or Loan Amount >3 Lakh and If score >700 pass else reject"],"key":"bureau_score","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Vintage (Years) >=3 years else reject"],"key":"residence_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Bank Statement 6M, Minimum 6 months"],"key":"bank_statement_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 1 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_2 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Active Credit Lines Count - Value\t<=3 pass"],"key":"active_credit_lines_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (6-12 Months) if <2 pass"],"key":"dpd_6_12_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Applicant NTC, pass if false"],"key":"applicant_ntc","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Cheque Bounce Count 6M,No bounce in last 6 months, pass"],"key":"cheque_bounce_count_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Enquiries Last 3 Months\tValue\t<=5 pass"],"key":"enquiries_last_3_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence to Branch Distance (km) - <=30 KM from branch else reject"],"key":"residence_to_branch_distance_km","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Loan Amount - <=4,00,000 else reject"],"key":"loan_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Ownership - Owned/Ancestral/Rent Free else reject"],"key":"residence_ownership","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Foir foir <= 50% pass else fail"],"key":"foir","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - 1. Expansion of existing business. 2. Purchase of additional stock / raw material / working capital 3. Purchase of machinery/equipment 4. Refinancing of existing loans in case of an existing Navadhan customer"],"key":"loan_utilization","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil bureau_loss_count > 0 fail else pass"],"key":"bureau_loss_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_dbt_count > 0 reject else pass"],"key":"bureau_dbt_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_sub_count any value received > 0 reject else pass"],"key":"bureau_sub_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_write_off_count < 1000 pass else reject"],"key":"bureau_write_off_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_settlement_count > 0 reject else pass"],"key":"bureau_settlement_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}}]}}}},"error":null} [2026-08-25 16:15:22] INFO: policy.parsed {"batch_id":"2a35e20f-0afc-40d8-973b-1f5dbc24f099","policy_count":1,"policy_names":["Blacksoil-Navdhan"]} [2026-08-25 16:15:22] INFO: row.start {"batch_id":"2a35e20f-0afc-40d8-973b-1f5dbc24f099","row":1,"application_id":"MP3110"} [2026-08-25 16:15:22] INFO: row.lead_created {"batch_id":"2a35e20f-0afc-40d8-973b-1f5dbc24f099","row":1,"application_id":"MP3110","vendor_loan_id":59} [2026-08-25 16:15:22] INFO: row.co_applicants_saved {"batch_id":"2a35e20f-0afc-40d8-973b-1f5dbc24f099","row":1,"vendor_loan_id":59,"count":2} [2026-08-25 16:15:22] INFO: row.decision_data_saved {"batch_id":"2a35e20f-0afc-40d8-973b-1f5dbc24f099","row":1,"vendor_loan_id":59,"decision_keys":93} [2026-08-25 16:15:22] INFO: row.api_request {"batch_id":"2a35e20f-0afc-40d8-973b-1f5dbc24f099","row":1,"vendor_loan_id":59,"url":"http://localhost:8889/","policies_payload":["Blacksoil-Navdhan"],"decision_keys":["application_id","age","gender","marital_status","applicant_ntc","household_monthly_income","household_annual_income","household_expenses","existing_emi_obligations","business_income","agriculture_income","dairy_income","foir","eligible_emi","eligible_loan_amount","loan_utilization","name_of_bureau","bureau_score","bureau_pull_date","overdue_amount","dpd_0_6_months","bureau_sub_count","bureau_dbt_count","bureau_loss_count","bureau_write_off_count","bureau_settlement_count","bureau_suit_filled_count","bureau_willful_default_count","restructured_count","dpd_6_12_months","enquiries_last_3_months","active_credit_lines_count","bank_statement_6m","cheque_bounce_count_6m","loan_amount","tenure","interest_rate","apr","repayment_frequency","loan_purpose","residence_area","residence_vintage_years","residence_ownership","residence_to_branch_distance_km","business_vintage_years","asset_fridge_value","asset_air_conditioner_value","asset_washing_machine_value","asset_tv_value","asset_smart_phone_value","co_applicant_age_1","co_applicant_relationship_1","co_applicant_years_of_stay_in_current_address_1","co_applicant_ntc_1","co_applicant_financial_status_1","co_applicant_name_of_bureau_1","co_applicant_bureau_score_1","co_applicant_bureau_pull_date_1","co_applicant_overdue_amount_1","co_applicant_dpd_0_6_months_1","co_applicant_dpd_6_12_months_1","co_applicant_bureau_sub_count_1","co_applicant_bureau_dbt_count_1","co_applicant_bureau_loss_count_1","co_applicant_bureau_write_off_count_1","co_applicant_bureau_settlement_count_1","co_applicant_bureau_suit_filed_count_1","co_applicant_bureau_willful_default_count_1","co_applicant_restructured_count_1","co_applicant_enquiries_last_3_months_1","co_applicant_active_credit_lines_count_1","co_applicant_age_2","co_applicant_relationship_2","co_applicant_years_of_stay_in_current_address_2","co_applicant_ntc_2","co_applicant_financial_status_2","co_applicant_name_of_bureau_2","co_applicant_bureau_score_2","co_applicant_bureau_pull_date_2","co_applicant_overdue_amount_2","co_applicant_dpd_0_6_months_2","co_applicant_dpd_6_12_months_2","co_applicant_bureau_sub_count_2","co_applicant_bureau_dbt_count_2","co_applicant_bureau_loss_count_2","co_applicant_bureau_write_off_count_2","co_applicant_bureau_settlement_count_2","co_applicant_bureau_suit_filed_count_2","co_applicant_bureau_willful_default_count_2","co_applicant_restructured_count_2","co_applicant_enquiries_last_3_months_2","co_applicant_active_credit_lines_count_2","borrower_maturity_age"],"payload":{"grade":{"rules":{"Blacksoil-Navdhan":{"rule":[{"description":["Blacksoil Age >=21 and <=60 pass else reject"],"key":"age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Borrower Maturity Age"],"key":"borrower_maturity_age","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 2"],"key":"co_applicant_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Co Applicant Age 1"],"key":"co_applicant_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil gender Male - \"Male - approve, If female then check marital status, If Female then check else ignore this rule Marital Status- Reject single women as primary borrower"],"key":"gender","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_1 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Overdue Amount\t<=1000, pass"],"key":"overdue_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (0-6 Months) if\t<3 pass"],"key":"dpd_0_6_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Business Vintage (Years) - >=3 years else reject"],"key":"business_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 2 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil tenure - <=36 months else reject"],"key":"tenure","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Borrower Bureau Score (upto 3 lakh loan amount, >=650 else reject) or Loan Amount >3 Lakh and If score >700 pass else reject"],"key":"bureau_score","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Vintage (Years) >=3 years else reject"],"key":"residence_vintage_years","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Bank Statement 6M, Minimum 6 months"],"key":"bank_statement_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Co-applicant 1 Maturity Age (<=63 else reject)"],"key":"co_applicant_maturity_age_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - co_applicant_bureau_score_2 (upto 3 lakh loan, >=620 OR -1 to 18 else reject)"],"key":"co_applicant_bureau_score_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Active Credit Lines Count - Value\t<=3 pass"],"key":"active_credit_lines_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - DPD (6-12 Months) if <2 pass"],"key":"dpd_6_12_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Applicant NTC, pass if false"],"key":"applicant_ntc","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Cheque Bounce Count 6M,No bounce in last 6 months, pass"],"key":"cheque_bounce_count_6m","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Enquiries Last 3 Months\tValue\t<=5 pass"],"key":"enquiries_last_3_months","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence to Branch Distance (km) - <=30 KM from branch else reject"],"key":"residence_to_branch_distance_km","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Loan Amount - <=4,00,000 else reject"],"key":"loan_amount","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - Residence Ownership - Owned/Ancestral/Rent Free else reject"],"key":"residence_ownership","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_1","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Son,Father,mother,Grandfather,Grandmother,Brother, Uncle (immediate paternal and maternal uncle) - pass else reject"],"key":"co_applicant_relationship_2","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil Foir foir <= 50% pass else fail"],"key":"foir","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil - 1. Expansion of existing business. 2. Purchase of additional stock / raw material / working capital 3. Purchase of machinery/equipment 4. Refinancing of existing loans in case of an existing Navadhan customer"],"key":"loan_utilization","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["Blacksoil bureau_loss_count > 0 fail else pass"],"key":"bureau_loss_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_dbt_count > 0 reject else pass"],"key":"bureau_dbt_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_sub_count any value received > 0 reject else pass"],"key":"bureau_sub_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_write_off_count < 1000 pass else reject"],"key":"bureau_write_off_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}},{"description":["bureau_settlement_count > 0 reject else pass"],"key":"bureau_settlement_count","priority":1,"value":{"against":["Over 9 levels deep, aborting normalization"],"source":["Over 9 levels deep, aborting normalization"]}}],"payload":{"application_id":"MP3110","age":39,"gender":"female","marital_status":"married","applicant_ntc":"false","household_monthly_income":88800,"household_annual_income":1065600,"household_expenses":36460,"existing_emi_obligations":14281,"business_income":"","agriculture_income":"","dairy_income":58800,"foir":16.08,"eligible_emi":11889,"eligible_loan_amount":210673,"loan_utilization":"expansion of existing business","name_of_bureau":"credit bureau","bureau_score":786,"bureau_pull_date":"2026-08-22","overdue_amount":0,"dpd_0_6_months":0,"bureau_sub_count":0,"bureau_dbt_count":0,"bureau_loss_count":0,"bureau_write_off_count":0,"bureau_settlement_count":0,"bureau_suit_filled_count":0,"bureau_willful_default_count":0,"restructured_count":0,"dpd_6_12_months":0,"enquiries_last_3_months":1,"active_credit_lines_count":0,"bank_statement_6m":"","cheque_bounce_count_6m":0,"loan_amount":100158,"tenure":23,"interest_rate":29.43,"apr":35.94,"repayment_frequency":"12","loan_purpose":"purchase of cattle","residence_area":"","residence_vintage_years":30,"residence_ownership":"owned","residence_to_branch_distance_km":30,"business_vintage_years":5,"asset_fridge_value":10000,"asset_air_conditioner_value":12000,"asset_washing_machine_value":12000,"asset_tv_value":8000,"asset_smart_phone_value":20000,"co_applicant_age_1":37,"co_applicant_relationship_1":"husband","co_applicant_years_of_stay_in_current_address_1":30,"co_applicant_ntc_1":"false","co_applicant_financial_status_1":"financial","co_applicant_name_of_bureau_1":"credit bureau","co_applicant_bureau_score_1":711,"co_applicant_bureau_pull_date_1":"2026-08-21","co_applicant_overdue_amount_1":0,"co_applicant_dpd_0_6_months_1":0,"co_applicant_dpd_6_12_months_1":0,"co_applicant_bureau_sub_count_1":0,"co_applicant_bureau_dbt_count_1":0,"co_applicant_bureau_loss_count_1":0,"co_applicant_bureau_write_off_count_1":0,"co_applicant_bureau_settlement_count_1":0,"co_applicant_bureau_suit_filed_count_1":0,"co_applicant_bureau_willful_default_count_1":0,"co_applicant_restructured_count_1":0,"co_applicant_enquiries_last_3_months_1":1,"co_applicant_active_credit_lines_count_1":5,"co_applicant_age_2":36,"co_applicant_relationship_2":"brother-in-law","co_applicant_years_of_stay_in_current_address_2":30,"co_applicant_ntc_2":"true","co_applicant_financial_status_2":"financial","co_applicant_name_of_bureau_2":"credit bureau","co_applicant_bureau_score_2":0,"co_applicant_bureau_pull_date_2":"2026-08-22","co_applicant_overdue_amount_2":0,"co_applicant_dpd_0_6_months_2":0,"co_applicant_dpd_6_12_months_2":0,"co_applicant_bureau_sub_count_2":0,"co_applicant_bureau_dbt_count_2":0,"co_applicant_bureau_loss_count_2":0,"co_applicant_bureau_write_off_count_2":0,"co_applicant_bureau_settlement_count_2":0,"co_applicant_bureau_suit_filed_count_2":0,"co_applicant_bureau_willful_default_count_2":0,"co_applicant_restructured_count_2":0,"co_applicant_enquiries_last_3_months_2":1,"co_applicant_active_credit_lines_count_2":0,"borrower_maturity_age":40}}}}}} [2026-08-25 16:15:22] INFO: row.api_response {"batch_id":"2a35e20f-0afc-40d8-973b-1f5dbc24f099","row":1,"vendor_loan_id":59,"http_status":200,"ok":true,"duration_ms":413,"response":{"Blacksoil-Navdhan":{"failed_condition":null,"policy_status":true,"rules":[{"against":["pass","equal"],"key":"age","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"borrower_maturity_age","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["18","lessThanEqual"],"key":"co_applicant_age_2","log":[],"reason":"Passed: 18.0 lessThanEqual 36","result":true,"source":36},{"against":["18","lessThanEqual"],"key":"co_applicant_age_1","log":[],"reason":"Passed: 18.0 lessThanEqual 37","result":true,"source":37},{"against":["pass","equal"],"key":"gender","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"co_applicant_bureau_score_1","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["1000","greaterThanEqual"],"key":"overdue_amount","log":[],"reason":"Passed: 1000.0 greaterThanEqual 0","result":true,"source":0},{"against":["3","greaterThan"],"key":"dpd_0_6_months","log":[],"reason":"Passed: 3.0 greaterThan 0","result":true,"source":0},{"against":["3","lessThanEqual"],"key":"business_vintage_years","log":[],"reason":"Passed: 3.0 lessThanEqual 5","result":true,"source":5},{"against":["pass","equal"],"key":"co_applicant_maturity_age_2","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["36","greaterThanEqual"],"key":"tenure","log":[],"reason":"Passed: 36.0 greaterThanEqual 23","result":true,"source":23},{"against":["pass","equal"],"key":"bureau_score","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["3","lessThanEqual"],"key":"residence_vintage_years","log":[],"reason":"Passed: 3.0 lessThanEqual 30","result":true,"source":30},{"against":["pass","equal"],"key":"bank_statement_6m","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"co_applicant_maturity_age_1","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["pass","equal"],"key":"co_applicant_bureau_score_2","log":[],"reason":"Passed: pass equal pass","result":true,"source":"pass"},{"against":["3","greaterThanEqual"],"key":"active_credit_lines_count","log":[],"reason":"Passed: 3.0 greaterThanEqual 0","result":true,"source":0},{"against":["60","greaterThan"],"key":"dpd_6_12_months","log":[],"reason":"Passed: 60.0 greaterThan 0","result":true,"source":0},{"against":["false","equal"],"key":"applicant_ntc","log":[],"reason":"Passed: false equal false","result":true,"source":"false"},{"against":["0","greaterThanEqual"],"key":"cheque_bounce_count_6m","log":[],"reason":"Passed: 0.0 greaterThanEqual 0","result":true,"source":0},{"against":["5","greaterThanEqual"],"key":"enquiries_last_3_months","log":[],"reason":"Passed: 5.0 greaterThanEqual 1","result":true,"source":1},{"against":["30","greaterThanEqual"],"key":"residence_to_branch_distance_km","log":[],"reason":"Passed: 30.0 greaterThanEqual 30","result":true,"source":30},{"against":["400000","greaterThanEqual"],"key":"loan_amount","log":[],"reason":"Passed: 400000.0 greaterThanEqual 100158","result":true,"source":100158},{"against":[["rented","owned","leased","owned w/o regn"],"inList"],"key":"residence_ownership","log":[],"reason":"Passed: owned inList ['rented', 'owned', 'leased', 'owned w/o regn']","result":true,"source":"owned"},{"against":[["father","mother","husband","wife","son","daughter","sister","son-in-law","daughter-in-law","mother-in-law","father-in-law","brother-in-law","sister-in-law","niece","uncle","nephew","aunt","grand-father","grand-mother","grand-son","grand-daughter","self","brother"],"inList"],"key":"co_applicant_relationship_1","log":[],"reason":"Passed: husband inList ['father', 'mother', 'husband', 'wife', 'son', 'daughter', 'sister', 'son-in-law', 'daughter-in-law', 'mother-in-law', 'father-in-law', 'brother-in-law', 'sister-in-law', 'niece', 'uncle', 'nephew', 'aunt', 'grand-father', 'grand-mother', 'grand-son', 'grand-daughter', 'self', 'brother']","result":true,"source":"husband"},{"against":[["father","mother","husband","wife","son","daughter","sister","son-in-law","daughter-in-law","mother-in-law","father-in-law","brother-in-law","sister-in-law","niece","uncle","nephew","aunt","grand-father","grand-mother","grand-son","grand-daughter","self","brother"],"inList"],"key":"co_applicant_relationship_2","log":[],"reason":"Passed: brother-in-law inList ['father', 'mother', 'husband', 'wife', 'son', 'daughter', 'sister', 'son-in-law', 'daughter-in-law', 'mother-in-law', 'father-in-law', 'brother-in-law', 'sister-in-law', 'niece', 'uncle', 'nephew', 'aunt', 'grand-father', 'grand-mother', 'grand-son', 'grand-daughter', 'self', 'brother']","result":true,"source":"brother-in-law"},{"against":["50","greaterThanEqual"],"key":"foir","log":[],"reason":"Passed: 50.0 greaterThanEqual 16.08","result":true,"source":16.08},{"against":[["expansion of existing business","purchase of additional stock/ raw material/ working capital","purchase of machinery/equipment","refinancing of existing loans in case of an existing navadhan customer"],"inList"],"key":"loan_utilization","log":[],"reason":"Passed: expansion of existing business inList ['expansion of existing business', 'purchase of additional stock/ raw material/ working capital', 'purchase of machinery/equipment', 'refinancing of existing loans in case of an existing navadhan customer']","result":true,"source":"expansion of existing business"},{"against":["0","greaterThanEqual"],"key":"bureau_loss_count","log":[],"reason":"Passed: 0.0 greaterThanEqual 0","result":true,"source":0},{"against":["0","lessThanEqual"],"key":"bureau_dbt_count","log":[],"reason":"Passed: 0.0 lessThanEqual 0","result":true,"source":0},{"against":["0","lessThanEqual"],"key":"bureau_sub_count","log":[],"reason":"Passed: 0.0 lessThanEqual 0","result":true,"source":0},{"against":["1000","greaterThanEqual"],"key":"bureau_write_off_count","log":[],"reason":"Passed: 1000.0 greaterThanEqual 0","result":true,"source":0},{"against":["0","lessThanEqual"],"key":"bureau_settlement_count","log":[],"reason":"Passed: 0.0 lessThanEqual 0","result":true,"source":0}]},"status":true},"error":null} [2026-08-25 16:15:22] INFO: row.bre_decision_saved {"batch_id":"2a35e20f-0afc-40d8-973b-1f5dbc24f099","row":1,"vendor_loan_id":59,"bre_decision_id":817,"status":"success","decision":null} [2026-08-25 16:15:22] INFO: evaluate.completed {"batch_id":"2a35e20f-0afc-40d8-973b-1f5dbc24f099","summary":{"total":1,"succeeded":1,"failed":0,"validation_failed":0,"skipped_duplicate":0}}