
    fgI                     B    d dl  d Zd Zd ZddZd Zd Zd Zdd	Zy
)    )*c                    ddd}	 d|i}d|d}| dz   }t        |d       t        j                  |||	      }|j                  }|j	                         }	t        |	|d
       d}
i }i }d}d}d}|dk(  r=d}
d}|	j                  di       }|j                  d      }|j                  d      }|r:d}n7|dk(  rd}
d}n-|dk(  r$d}
|	j                  di       j                  d      }nd}
d}|
||	||dd}|S # t        $ rD}t        j                  j                  dt        j                         z          d|d<   Y d }~|S d }~ww xY w)Nr    responseStatusresultuidapplication/jsonzContent-TypeAuthorizationz/aadhaar/verify#((((((((signzy REQUEST BODY )))))))jsonheadersz+((((((((signzy aadhar RESPONSE BODY))))))))F      Successr   verifiedmobileNumber  )An Error occured. Please try again later.  errormessage)r   r   responseDataverifiedStatusr   	accessKey"Error during request preparation: printrequestspoststatus_coder   get	Exceptionapploggerr   	traceback
format_exc)get_base_urlauthorizationaadhaar_numbersignzyAadhaarDictsignzy_request_bodysignzy_headerurlresponseresponse_statussignzy_response_jsonr   r   r   r   r   r   es                    M/var/www/html/viyonapay/appservices/common/kyc_gateways/signzy_kyc_gateway.pysignzy_aadhaar_kycr6      s   +,;8R>

 /+

 ..!#HI==+>=V"..'}}"O5bcc!NF/33HR@L!%%j1H%)).9L #N@F#N)--gb9==iHFN@F ,0,(
 !  R

=	@T@T@VVW&Q(#	Rs   C*C2 2	D?;9D::D?c                    ddi d}	 |ddd}d|d}| d	z   }t        |d
       t        j                  |||      }|j                  }|j	                         }	t        |	|d       d}
d}d}d}|dk(  rhd}
d}|	j                  di       j                  d      }|	j                  di       j                  d      }|	j                  di       j                  d      }n|dk(  rd}
d}n|dk(  rd}
d}nd}
d}|
||d|||	d}|S # t        $ rD}t        j                  j                  dt        j                         z          d|d<   Y d }~|S d }~ww xY w)Nr   r   )r   r   apiResponsetrueY)number!returnIndividualTaxComplianceInfoconsentr
   r   /pan/fetchV2r   r   $((((((((signzy RESPONSE BODY))))))))r   r   r   r   name	panStatusisIndividualr   Failedr   )r   r   r@   addressrA   rB   r8   r   *An Error occured. Please try again later..r   )r*   r+   
pan_numbersignzyIndividualPanDictr.   r/   r0   r1   r2   r3   r   r@   rA   rB   r   r4   s                   r5   signzy_individual_pan_kycrH   C   s   12brR8Y 17
 /+

 ^+!#HI==+>=V"..'}}"O5[\	c!NF'++HR8<<VDD*..x;??LI-11(2>BB>RL#NF#NFNF ,!'.!
 '& Y

=	@T@T@VVW,X)""	Ys   C5C> >	E9EEc                 &   ddd}	 t         |ddd}d|d}| dz   }t        |d	       t        j                  |||
      }|j                  }|j                         }	t        |	|d       d}
|dk(  rd}
|	j                  di       }n7|dk(  rd}
d}n-|dk(  r$d}
|	j                  di       j                  d      }nd}
d}|
|d}|S # t        $ rD}t        j                  j                  dt        j                         z          d|d<   Y d }~|S d }~ww xY w)Nr   r   r   r9   )r@   r;   fuzzyrA   r
   r   r>   r   r   r?   r   r   r   r   r   r   r   r   r   rE   )r@   r    r!   r"   r#   r   r$   r%   r&   r'   r   r(   r)   )r*   r+   rF   rG   r.   r/   r0   r1   r2   r3   r   r   r4   s                r5   signzy_business_pan_kycrK      sN   12bA.Y 	 /+

 ^+!#HI==+>=V"..'}}"O5[\c!N)--hr:F#N@F#N)--gb9==iHFN@F ,!

 '& Y

=	@T@T@VVW,X)""	Ys   B;C 	D9DDc                    ddd}	 ||||d}d|d}| dz   }	t        |d       t        j                  |	||	      }
|
j                  }|
j	                         }t        ||d
       d}d}|dk(  r|j                  di       j                  d      dk(  r:d}|j                  di       }d}|j                  di       }|j                  d      }n[d}|j                  di       j                  d      }n7|dk(  rd}d}n-|dk(  r$d}|j                  di       j                  d      }nd}d}|||g|d}|S # t        $ rD}t        j                  j                  dt        j                         z          d|d<   Y d }~|S d }~ww xY w)Nr   r   r   )beneficiaryAccountbeneficiaryIFSCbeneficiaryMobilebeneficiaryNamer
   r   z1/bankaccountverification/bankaccountverificationsr   r   r?   r   r   activeyesr   SUCCESSbankTransferbeneNamereasonr   r   r   r   r   )r   rP   r   r   r   r   )r*   r+   rM   rN   rO   rP   rG   r.   r/   r0   r1   r2   r3   r   resultresponser   rT   r4   s                     r5   signzy_bank_verification_kycrX      s   12bA:X"4.!2.	
 /+

 PP!#HI==+>=V"..'}}"O5[]c!#''488BeK!"!5!9!9(2!F"-11.D , 0 0 < "#-11(2>BB8L#N@F#N)--gb9==iHFN@F ,-01	!
 '& X

=	@T@T@VVW,W)""	Xs   D)D1 1	E>:9E99E>c                 J   ddd}	 d||di}d|d}| dz   }t        |d	       t        j                  |||
      }|j                  }	|j	                         }
t        |
|	d       d}d}d}|	dk(  r&d}d}|
j                  di       j                  d      }n7|	dk(  rd}d}n-|	dk(  r$d}|
j                  di       j                  d      }nd}d}|||d}|S # t        $ rD}t        j                  j                  dt        j                         z          d|d<   Y d }~|S d }~ww xY w)Nr   r   r   nameBlockv2)name1name2r
   r   zmatchers/nameMatchV2r   r   r?   r   r   r   r   name1_vs_name2_matchScorer   r   r   r   r   )r   r   name_match_scorer   rE   r   )r*   r+   	nameOnPannameToCheckrG   r.   r/   r0   r1   r2   r3   r   r   r^   r4   s                  r5   signzy_name_match_check_kycra      sq   12bA2Y
 /+

 33!#HI==+>=V"..'}}"O5[\c!NF377DHHIde#N@F#N)--gb9==iHFN@F , 0!
 '& Y

=	@T@T@VVW,X)""	Ys   CC 	D"9DD"c                    ddd}	 d|i}d|d}| dz   }t        |d       t        j                  |||	      }|j                  }|j	                         }	t        |	|d
       d}
d}d}d}d}i }i }g }|dk(  rd}
d}|	j                  di       }|j                  d      D ]f  }|j                  d      |j                  d      |j                  d      |j                  d      |j                  d      d}|j                  |       h |j                  d      }|j                         dk(  rd}nd}|j                  d      }n7|dk(  rd}
d}n-|dk(  r$d}
|	j                  di       j                  d      }nd}
d}|
|	g|||||d }|S # t        $ rD}t        j                  j                  d!t        j                         z          d"|d<   Y d }~|S d }~ww xY w)#Nr   r   r   cinr
   r   zroc/simpleSearchByCinr   r   r?   r   r   r   r   directorDetailsr@   panrD   designationdin)directorNamedirectorPanNumberrD   rf   rg   statusrQ   ActiveInactivecompanyNamer   r   r   r   r   )r   r   companyActualStatusdirectorsListcompanyStatusrm   r   r   rE   )r    r!   r"   r#   r   r$   appendlowerr%   r&   r'   r   r(   r)   )r*   r+   	cinNumberrG   r.   r/   r0   r1   r2   r3   r   r   rm   rn   rp   apiresponsedirectorsDictro   each_directorr4   s                       r5   signzy_cin_number_check_kycrw   ;  s2   12bAGY$)96
 /+

 44!#HI==+>=V"..'}}"O5[\c!NF.228B?K!,1B!C 4,008$1$5$5e$<'++I6+//>#''. $$]34 !, 9"((*H4&(#6K#N@F#N)--gb9==iHFN@F ,01#6**&!
 '& Y

=	@T@T@VVW,X)""	Ys   E>F 	G9GGc                    ddd}	 |dd}d|d}| dz   }t        |d	       t        j                  |||
      }|j                  }|j	                         }	t        |	|d       d}
d}d}|dk(  rId}
d}|	j                  di       j                  dd      }|	j                  di       j                  dd      }n7|dk(  rd}
d}n-|dk(  r$d}
|	j                  di       j                  d      }nd}
d}|
|d}|S # t        $ rD}t        j                  j                  dt        j                         z          d|d<   Y d }~|S d }~ww xY w)Nr   r   r   T)rc   getAddressInfor
   r   zroc/detailedSearchByCinr   r   r?   r   r   r   r   rm   rj   r   r   r   r   r   )r   r   rp   rm   r   rE   r   )r*   r+   rs   rG   r.   r/   r0   r1   r2   r3   r   r   r^   rm   rp   r4   s                   r5   $signzy_detailed_cin_number_check_kycrz     s   12bA0Y+4tM
 /+

 66!#HI==+>=V"..'}}"O5[\c!NF.228B?CCMRTUK044XbAEEhrRM#N@F#N)--gb9==iHFN@F ,*&	!
 '& Y

=	@T@T@VVW,X)""	Ys   C/C7 7	E 9D??Ec                    ddd}	 |||d}d|d}| dz   }t        |d       t        j                  |||	      }	|	j                  }
|	j	                         }t        ||
d
       d}d}d}i }g }|
dk(  rd}d}|j                  di       j                  d      }|j                  di       j                  dg       }|D ]6  }|j                  d      |j                  d      d}|j                  |       8 n7|
dk(  rd}d}n-|
dk(  r$d}|j                  di       j                  d      }nd}d}|||||d}|S # t        $ rE}t        j                  j                  dt        j                         z          d|d<   |cY d }~S d }~ww xY w)Nr   r   r   )	panNumberstateemailr
   r   z/gst/panToGstnDetailr   r   r?   r   r   r   r   gstingstnRecordsregistrationName)rm   companyGstInr   r   i  r   r   )r   r   	gstNumberregisteredNamesListr   r   )r    r!   r"   r#   r   r$   rq   r%   r&   r'   r   r(   r)   )r*   r+   rF   r}   r~   rG   r.   r/   r0   r1   r2   r3   r   r   r   registrationNameDictr   r   r   eachCompanyr4   s                        r5   signzy_pan_to_gstr     s   12bA>'' /+

 33!#HI==+>=V"..'}}"O5[]	c!NF,00"=AA'JI.228B?CCMRTUK* A)oo.@A*w7&$ $**+?@A #N@F#N)--gb9==iHFN@F ,0"#6!
 '& '

=	@T@T@VVW,W)&&'s   D/D7 7	F :F :F FN)r   r   )	appservices.common.utilr6   rH   rK   rX   ra   rw   rz   r        r5   <module>r      s:    %>@>#B4#p@#F8#xM#`6#pB'r   