Skip to content

Commit

Permalink
Merge branch 'master' into added_rto
Browse files Browse the repository at this point in the history
  • Loading branch information
ankitdas13 authored Apr 1, 2024
2 parents 211eb42 + 6994748 commit da55b8d
Show file tree
Hide file tree
Showing 14 changed files with 1,349 additions and 1 deletion.
245 changes: 245 additions & 0 deletions documents/customers.md
Original file line number Diff line number Diff line change
Expand Up @@ -155,6 +155,251 @@ Customer customer = instance.customers.fetch(customerId);

-------------------------------------------------------------------------------------------------------


### Add Bank Account of Customer

```java
String customerId = "cust_N5mywh91sXB69O"

JSONObject customerRequest = new JSONObject();
customerRequest.put("ifsc_code","UTIB0000194");
customerRequest.put("account_number","916010082985661");
customerRequest.put("beneficiary_name","Pratheek");
customerRequest.put("beneficiary_address1","address 1");
customerRequest.put("beneficiary_address2","address 2");
customerRequest.put("beneficiary_address3","address 3");
customerRequest.put("beneficiary_address4","address 4");
customerRequest.put("beneficiary_email","[email protected]");
customerRequest.put("beneficiary_mobile","8762489310");
customerRequest.put("beneficiary_city","Bangalore");
customerRequest.put("beneficiary_state","KA");
customerRequest.put("beneficiary_country","IN");

BankAccount bankaccount = instance.customers.addBankAccount(customerId, customerRequest)
```

**Parameters:**

| Name | Type | Description |
|----------------------|----------|---------------------------------------------------------------|
| customerId* | string | Unique identifier of the customer. |
| account_number | string | Customer's bank account number. |
| beneficiary_name | string | The name of the beneficiary associated with the bank account. |
| beneficiary_address1 | string | The virtual payment address. |
| beneficiary_email | string | Email address of the beneficiary. |
| beneficiary_mobile | integer | Mobile number of the beneficiary. |
| beneficiary_city | string | The name of the city of the beneficiary. |
| beneficiary_state | string | The state of the beneficiary. |
| beneficiary_pin | interger | The pin code of the beneficiary's address. |
| ifsc_code | string | The IFSC code of the bank branch associated with the account. |

**Response:**
```json
{
"id" : "cust_1Aa00000000001",
"entity": "customer",
"name" : "Saurav Kumar",
"email" : "[email protected]",
"contact" : "+919000000000",
"gstin":"29XAbbA4369J1PA",
"notes" : [],
"created_at ": 1234567890
}
```

-------------------------------------------------------------------------------------------------------

### Delete Bank Account of Customer

```java
String customerId = "cust_N5mywh91sXB69O"

String bankAccountId = "ba_N6aM8uo64IzxHu"

Customer customer = instance.customers.deleteBankAccount(customerId, bankaccountId)
```

**Parameters:**

| Name | Type | Description |
|---------------|-------------|---------------------------------------------|
| customerId* | string | Unique identifier of the customer. |
| bankAccountId | string | The bank_id that needs to be deleted. |

**Response:**
```json
{
"id": "ba_Evg09Ll05SIPSD",
"ifsc": "ICIC0001207",
"bank_name": "ICICI Bank",
"name": "Test R4zorpay",
"account_number": "XXXXXXXXXXXXXXX0434",
"status": "deleted"
}
```

-------------------------------------------------------------------------------------------------------

### Eligibility Check API

```java
JSONObject customerRequest = new JSONObject();
customerRequest.put("inquiry","affordability");
customerRequest.put("amount", 500);
customerRequest.put("currency","INR");
JSONObject customer = new JSONObject();
customer.put("id","elig_xxxxxxxxxxxxx")
customer.put("contact","+919999999999")
customer.put("ip","105.106.107.108")
customer.put("referrer","https://merchansite.com/example/paybill")
customer.put("user_agent","Mozilla/5.0")
customerRequest.put("customer",customer);

Customer customer = instance.customers.requestEligibilityCheck(customerRequest)
```

**Parameters:**

| Name | Type | Description |
|---------------|-------------|---------------------------------------------|
| inquiry | string | List of methods or instruments on which eligibility check is required. |
| amount* | string | The amount for which the order was created, in currency subunits. |
| currency* | string | A three-letter ISO code for the currency in which you want to accept the payment. |
| customer* | object | Customer details. [here](https://razorpay.com/docs/payments/payment-gateway/affordability/eligibility-check/#eligibility-check-api) |
| instruments | object | Payment instruments on which an eligibility check is required. [here](https://razorpay.com/docs/payments/payment-gateway/affordability/eligibility-check/#eligibility-check-api) |


**Response:**
```json
{
"amount": "500000",
"customer": {
"id": "KkBhM9EC1Y0HTm",
"contact": "+919999999999"
},
"instruments": [
{
"method": "emi",
"issuer": "HDFC",
"type": "debit",
"eligibility_req_id": "elig_xxxxxxxxxxxxx",
"eligibility": {
"status": "eligible"
}
},
{
"method": "paylater",
"provider": "getsimpl",
"eligibility_req_id": "elig_xxxxxxxxxxxxx",
"eligibility": {
"status": "eligible"
}
},
{
"method": "paylater",
"provider": "icic",
"eligibility_req_id": "elig_xxxxxxxxxxxxx",
"eligibility": {
"status": "eligible"
}
},
{
"method": "cardless_emi",
"provider": "walnut369",
"eligibility_req_id": "elig_xxxxxxxxxxxxx",
"eligibility": {
"status": "ineligible",
"error": {
"code": "GATEWAY_ERROR",
"description": "The customer has not been approved by the partner.",
"source": "business",
"step": "inquiry",
"reason": "user_not_approved"
}
}
},
{
"method": "cardless_emi",
"provider": "zestmoney",
"eligibility_req_id": "elig_xxxxxxxxxxxxx",
"eligibility": {
"status": "ineligible",
"error": {
"code": "GATEWAY_ERROR",
"description": "The customer has exhausted their credit limit.",
"source": "business",
"step": "inquiry",
"reason": "credit_limit_exhausted"
}
}
},
{
"method": "paylater",
"provider": "lazypay",
"eligibility_req_id": "elig_xxxxxxxxxxxxx",
"eligibility": {
"status": "ineligible",
"error": {
"code": "GATEWAY_ERROR",
"description": "The order amount is less than the minimum transaction amount.",
"source": "business",
"step": "inquiry",
"reason": "min_amt_required"
}
}
}
]
}
```

-------------------------------------------------------------------------------------------------------

### Fetch Eligibility by id

```java
String eligibilityId = "elig_xxxxxxxxxxxxx"
Customer customer = instance.customers.fetchEligibility(eligibilityId)
```

**Parameters:**

| Name | Type | Description |
|---------------|-------------|---------------------------------------------|
| eligibilityId | string | The unique identifier of the eligibility request to be retrieved. |

**Response:**
```json
{
"instruments": [
{
"method": "paylater",
"provider": "lazypay",
"eligibility_req_id": "elig_xxxxxxxxxxxxx",
"eligibility": {
"status": "eligible"
}
},
{
"method": "paylater",
"provider": "getsimpl",
"eligibility_req_id": "elig_xxxxxxxxxxxxx",
"eligibility": {
"status": "ineligible",
"error": {
"code": "GATEWAY_ERROR",
"description": "The customer has exhausted their credit limit",
"source": "gateway",
"step": "inquiry",
"reason": "credit_limit_exhausted"
}
}
}
]
}
```

-------------------------------------------------------------------------------------------------------

**PN: * indicates mandatory fields**
<br>
<br>
Expand Down
Loading

0 comments on commit da55b8d

Please sign in to comment.