gopichandra commited on
Commit
806c938
·
verified ·
1 Parent(s): 65bef46

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +31 -10
app.py CHANGED
@@ -5,15 +5,35 @@ import gradio as gr
5
  from utils import extract_kyc_fields
6
  from simple_salesforce import Salesforce
7
 
8
- # Salesforce login
9
- sf = Salesforce(
10
- username="[email protected]",
11
- password="Lic@2025",
12
- security_token="AmmfRcd6IiYaRtSGntBnzNMQU"
13
- )
14
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15
  def send_to_salesforce(aadhaar_data, pan_data):
16
- """Send both Aadhaar & PAN extracted data to Salesforce."""
 
 
17
  try:
18
  record = {
19
  "Aadhaar_Name__c": aadhaar_data.get("name", ""),
@@ -29,14 +49,14 @@ def send_to_salesforce(aadhaar_data, pan_data):
29
  except Exception as e:
30
  return {"status": "error", "message": str(e)}
31
 
 
32
  def process_documents(aadhaar_file, pan_file):
33
  if aadhaar_file is None or pan_file is None:
34
  return {"error": "Please upload both Aadhaar and PAN images."}
35
 
36
- aadhaar_data = extract_kyc_fields(aadhaar_file.name)
37
- pan_data = extract_kyc_fields(pan_file.name)
38
 
39
- # Send to Salesforce
40
  sf_result = send_to_salesforce(aadhaar_data, pan_data)
41
 
42
  return {
@@ -45,6 +65,7 @@ def process_documents(aadhaar_file, pan_file):
45
  "salesforce_result": sf_result
46
  }
47
 
 
48
  with gr.Blocks(title="Smart KYC OCR") as demo:
49
  gr.Markdown("# 🧾 Smart KYC OCR Tool — Aadhaar & PAN Scanner")
50
 
 
5
  from utils import extract_kyc_fields
6
  from simple_salesforce import Salesforce
7
 
8
+ # ------------------ Salesforce Login ------------------
9
+ def salesforce_connect():
10
+ username = "[email protected]"
11
+ password = "Lic@2025"
12
+ token = "AmmfRcd6IiYaRtSGntBnzNMQU"
 
13
 
14
+ try:
15
+ # Append token to password for login
16
+ sf = Salesforce(
17
+ username=username,
18
+ password=password + token,
19
+ security_token="",
20
+ domain="login" # change to "test" for sandbox
21
+ )
22
+ return sf
23
+ except Exception as e:
24
+ return str(e)
25
+
26
+ sf = salesforce_connect()
27
+ if isinstance(sf, str):
28
+ print("Salesforce login failed:", sf)
29
+ else:
30
+ print("Salesforce connected successfully!")
31
+
32
+ # ------------------ Send Data to Salesforce ------------------
33
  def send_to_salesforce(aadhaar_data, pan_data):
34
+ if isinstance(sf, str):
35
+ return {"status": "error", "message": "Salesforce not connected"}
36
+
37
  try:
38
  record = {
39
  "Aadhaar_Name__c": aadhaar_data.get("name", ""),
 
49
  except Exception as e:
50
  return {"status": "error", "message": str(e)}
51
 
52
+ # ------------------ OCR Process ------------------
53
  def process_documents(aadhaar_file, pan_file):
54
  if aadhaar_file is None or pan_file is None:
55
  return {"error": "Please upload both Aadhaar and PAN images."}
56
 
57
+ aadhaar_data = extract_kyc_fields(aadhaar_file.name, force_type="AADHAAR")
58
+ pan_data = extract_kyc_fields(pan_file.name, force_type="PAN")
59
 
 
60
  sf_result = send_to_salesforce(aadhaar_data, pan_data)
61
 
62
  return {
 
65
  "salesforce_result": sf_result
66
  }
67
 
68
+ # ------------------ Gradio UI ------------------
69
  with gr.Blocks(title="Smart KYC OCR") as demo:
70
  gr.Markdown("# 🧾 Smart KYC OCR Tool — Aadhaar & PAN Scanner")
71