ifixkart-backend/venv/lib/python3.12/site-packages/razorpay/resources/customer.py

90 lines
2.4 KiB
Python

from .base import Resource
from ..constants.url import URL
class Customer(Resource):
def __init__(self, client=None):
super(Customer, self).__init__(client)
self.base_url = URL.V1 + URL.CUSTOMER_URL
def fetch(self, customer_id, data={}, **kwargs):
"""
Fetch Customer for given Id
Args:
customer_id : Id for which customer object has to be retrieved
Returns:
Order dict for given customer Id
"""
return super(Customer, self).fetch(customer_id, data, **kwargs)
def create(self, data={}, **kwargs):
"""
Create Customer from given dict
Returns:
Customer Dict which was created
"""
url = self.base_url
return self.post_url(url, data, **kwargs)
def edit(self, customer_id, data={}, **kwargs):
"""
Edit Customer information from given dict
Returns:
Customer Dict which was edited
"""
url = '{}/{}'.format(self.base_url, customer_id)
return self.put_url(url, data, **kwargs)
def all(self, data={}, **kwargs):
"""
Fetch all customer
Returns:
Dictionary of Customers data
"""
return super(Customer, self).all(data, **kwargs)
def addBankAccount(self, customer_id, data={}, **kwargs):
"""
Add Bank Account of Customer
Returns:
Dictionary of Customers data
"""
url = f"{self.base_url}/{customer_id}/bank_account"
return self.post_url(url, data, **kwargs)
def deleteBankAccount(self, customer_id, bank_id, data={}, **kwargs):
"""
Delete Bank Account of Customer
Returns:
Dictionary of Customers data
"""
url = f"{self.base_url}/{customer_id}/bank_account/{bank_id}"
return self.delete_url(url, data, **kwargs)
def requestEligibilityCheck(self, data={}, **kwargs):
"""
Eligibility Check
Returns:
Dictionary of eligibility data
"""
url = f"{self.base_url}/eligibility"
return self.post_url(url, data, **kwargs)
def fetchEligibility(self, eligibility_id, data={}, **kwargs):
"""
Fetch Eligibility by id
Returns:
Eligibility dict for given eligibility Id
"""
url = f"{self.base_url}/eligibility/{eligibility_id}"
return self.get_url(url, data, **kwargs)