From b973ff3097bbf1da96d8754addc993d31d8b9fee Mon Sep 17 00:00:00 2001 From: Nikhil Manapure Date: Mon, 11 Nov 2024 07:26:00 +0000 Subject: [PATCH] [Auto Generated] v1.0 --- documentation/application/MULTIKYC.md | 37 +- documentation/application/PAYMENT.md | 84 +- documentation/application/TRANSACTION.md | 150 ++ documentation/application/USER.md | 8 +- documentation/platform/CREDIT.md | 42 + documentation/platform/CUSTOMER.md | 2 + documentation/platform/MERCHANT.md | 1511 +++++++++++++---- documentation/platform/MULTIKYC.md | 37 +- documentation/platform/PAYMENTS.md | 26 + documentation/public/MERCHANT.md | 893 +++++++++- documentation/public/MULTIKYC.md | 39 +- documentation/public/TRANSACTION.md | 43 +- documentation/public/USER.md | 2 + pom.xml | 37 +- .../java/com/sdk/common/RequestSigner.java | 30 +- .../com/sdk/platform/PlatformApiList.java | 66 + .../java/com/sdk/platform/PlatformModels.java | 1457 +++++++++++++++- .../com/sdk/platform/PlatformOauthClient.java | 2 +- .../com/sdk/platform/PlatformService.java | 154 ++ 19 files changed, 4152 insertions(+), 468 deletions(-) diff --git a/documentation/application/MULTIKYC.md b/documentation/application/MULTIKYC.md index 83164a7..978c1c6 100644 --- a/documentation/application/MULTIKYC.md +++ b/documentation/application/MULTIKYC.md @@ -9515,7 +9515,7 @@ API endpoint to create a signed URL for uploading documents to and downloading d | action | String? | yes | | | form | Object? | yes | | | uiSchema | Object? | yes | | - | workflowId | String? | yes | | + | validationWorkflow | String? | yes | | --- @@ -9543,7 +9543,11 @@ API endpoint to create a signed URL for uploading documents to and downloading d | formId | String? | yes | | | merchantId | String? | yes | | | form | [Form](#Form) | no | | - | docSchema | Object | no | | + | docSchema | Object? | yes | | + | isOptional | Boolean? | yes | | + | isInternal | Boolean? | yes | | + | optionalWorkflow | String? | yes | | + | internalWorkflow | String? | yes | | --- @@ -9643,6 +9647,7 @@ API endpoint to create a signed URL for uploading documents to and downloading d | creditType | String? | yes | | | userId | String | no | | | entityId | String | no | | + | isDefault | Boolean? | yes | | --- @@ -9655,7 +9660,6 @@ API endpoint to create a signed URL for uploading documents to and downloading d | ---------- | ---- | -------- | ----------- | | id | String | no | | | type | String? | yes | | - | address | String? | yes | | | name | String? | yes | | | gender | String? | yes | | | dob | String? | yes | | @@ -9681,7 +9685,6 @@ API endpoint to create a signed URL for uploading documents to and downloading d | disbursementIfsc | String? | yes | | | createdBy | String? | yes | | | active | Boolean? | yes | | - | category | String? | yes | | | createdAt | String? | yes | | | updatedAt | String? | yes | | | deletedAt | String? | yes | | @@ -10490,6 +10493,18 @@ API endpoint to create a signed URL for uploading documents to and downloading d + #### [CreateUserLenderAssociationRequest](#CreateUserLenderAssociationRequest) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | organizationId | String | no | | + | role | String | no | | + +--- + + + + #### [FindDocResponse](#FindDocResponse) | Properties | Type | Nullable | Description | @@ -10626,6 +10641,7 @@ API endpoint to create a signed URL for uploading documents to and downloading d | includeStatus | ArrayList? | yes | | | excludeStatus | ArrayList? | yes | | | allowDisabledLender | Object? | yes | | + | merchantIds | ArrayList? | yes | | --- @@ -10804,6 +10820,12 @@ API endpoint to create a signed URL for uploading documents to and downloading d | iconUrl | String? | yes | | | isInteractive | Boolean | no | | | schema | Object? | yes | | + | meta | Object? | yes | | + | display | Object? | yes | | + | isOptional | Boolean? | yes | | + | optionalWorkflow | String? | yes | | + | isInternal | Boolean? | yes | | + | internalWorkflow | String? | yes | | --- @@ -11395,6 +11417,9 @@ API endpoint to create a signed URL for uploading documents to and downloading d | slug | String | no | | | isDefault | Boolean | no | | | logoUrl | String | no | | + | lenderLogo | String? | yes | | + | merchantLogo | String? | yes | | + | merchantId | String? | yes | | --- @@ -11648,7 +11673,7 @@ API endpoint to create a signed URL for uploading documents to and downloading d - #### [KycDetailsReponse](#KycDetailsReponse) + #### [KycDetailsResponse](#KycDetailsResponse) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | @@ -11802,7 +11827,7 @@ API endpoint to create a signed URL for uploading documents to and downloading d - #### [CustomerKycDetailsReponse](#CustomerKycDetailsReponse) + #### [CustomerKycDetailsResponse](#CustomerKycDetailsResponse) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | diff --git a/documentation/application/PAYMENT.md b/documentation/application/PAYMENT.md index 199dd18..beea7fe 100644 --- a/documentation/application/PAYMENT.md +++ b/documentation/application/PAYMENT.md @@ -17,6 +17,7 @@ KYC Service * [repaymentUsingNetbanking](#repaymentusingnetbanking) * [repaymentUsingUPI](#repaymentusingupi) * [checkPaymentStatus](#checkpaymentstatus) +* [verifyUpiId](#verifyupiid) * [getOutstandingAmount](#getoutstandingamount) * [getOutstandingAmountByEntityMapId](#getoutstandingamountbyentitymapid) @@ -66,7 +67,7 @@ Success. Returns a JSON object as shown below. Refer `PaymentOptionsResponse` fo { "paymentOptions": [ { - "title": "UPI ID", + "title": "UPI", "kind": "upiID", "options": null }, @@ -475,7 +476,7 @@ Success. Returns a JSON object as shown below. Refer `PaymentOptionsResponse` fo { "paymentOptions": [ { - "title": "UPI ID", + "title": "UPI", "kind": "upiID", "options": null }, @@ -678,6 +679,58 @@ Success. Returns a success message as shown below. Refer `TransactionStatusRespo +--- + + +### verifyUpiId +Verify UPI ID + + + + +```java +payment.verifyUpiId(body body) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| body | [VerifyUPIRequest](#VerifyUPIRequest) | yes | Request body | + + +This API verifies the validity of a UPI ID. + +*Returned Response:* + + + + +[UPIValidationSuccessResponse](#UPIValidationSuccessResponse) + +UPI ID validation success + + + + +
+  Example: + +```json + +``` +
+ + + + + + + + + --- @@ -879,6 +932,7 @@ Success. Returns a JSON object as shown below. Refer `OutstandingDetail` for mor | bankName | String | no | | | chargeToken | String? | yes | | | transactionId | String? | yes | | + | entityMapId | String? | yes | | --- @@ -907,6 +961,7 @@ Success. Returns a JSON object as shown below. Refer `OutstandingDetail` for mor | vpa | String | no | | | chargeToken | String? | yes | | | transactionId | String? | yes | | + | entityMapId | String? | yes | | --- @@ -1290,4 +1345,29 @@ Success. Returns a JSON object as shown below. Refer `OutstandingDetail` for mor --- + + + #### [VerifyUPIRequest](#VerifyUPIRequest) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | vpa | String | no | The Virtual Payment Address (VPA) for UPI. | + | lenderSlug | String? | yes | The lender slug associated with the request. Optional parameter. | + +--- + + + + + #### [UPIValidationSuccessResponse](#UPIValidationSuccessResponse) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | status | String? | yes | | + | name | String? | yes | | + | headers | HashMap? | yes | | + +--- + + diff --git a/documentation/application/TRANSACTION.md b/documentation/application/TRANSACTION.md index c9146de..fc37669 100644 --- a/documentation/application/TRANSACTION.md +++ b/documentation/application/TRANSACTION.md @@ -11,6 +11,7 @@ Transaction Service * [kfs](#kfs) * [registerTransaction](#registertransaction) * [updateTransaction](#updatetransaction) +* [split](#split) * [listOfTransactions](#listoftransactions) * [loadTransactionById](#loadtransactionbyid) @@ -297,6 +298,113 @@ Transaction updated successfully. Refer `UpdateTransactionResponse` schema for r +--- + + +### split +Split transaction. + + + + +```java +transaction.split( lenderSlug, body body) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| lenderSlug | String | yes | This is lender slug | +| body | [SplitTransactionRequest](#SplitTransactionRequest) | yes | Request body | + + +Use this API to perform split transaction + +*Returned Response:* + + + + +[SplitTransactionResponse](#SplitTransactionResponse) + +Success. Returns a JSON object as shown below. Refer `SplitTransactionResponse` for more details. + + + + +
+  Examples: + + +
+  parentTransaction + +```json +{ + "id": "transaction.id", + "amount": "transaction.amount", + "status": "transaction.status", + "type": "DEBIT", + "subtype": "SPLIT_TRANSACTION" +} +``` +
+ +
+  loanTransaction + +```json +{ + "id": "loanTransaction.id", + "amount": "loanTransaction.amount", + "status": "loanTransaction.status", + "type": "DEBIT", + "subtype": "DEBIT" +} +``` +
+ +
+  downpaymentTransaction + +```json +{ + "id": "downpaymentTransaction.id", + "amount": "downpaymentTransaction.amount", + "status": "downpaymentTransaction.status", + "type": "DEBIT", + "subtype": "MERCHANT_DP" +} +``` +
+ +
+  lenderDownpaymentTransaction + +```json +{ + "id": "lenderDownpaymentTransaction.id", + "amount": "lenderDownpaymentTransaction.amount", + "status": "lenderDownpaymentTransaction.status", + "type": "DEBIT", + "subtype": "LENDER_DP" +} +``` +
+ +
+ + + + + + + + + --- @@ -1828,4 +1936,46 @@ Success. Returns a JSON object as shown below. Refer `TransactionDetails` for mo --- + + + #### [SplitTransactionRequest](#SplitTransactionRequest) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | token | String | no | It contains all the mercahant and order details. | + | emiTenure | Double | no | This will contain the EMI tenure | + +--- + + + + + #### [TransactionInSplitTransactionResponse](#TransactionInSplitTransactionResponse) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | id | String? | yes | | + | amount | Double? | yes | | + | status | String? | yes | | + | type | String? | yes | | + | subtype | String? | yes | | + +--- + + + + + #### [SplitTransactionResponse](#SplitTransactionResponse) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | parentTransaction | [TransactionInSplitTransactionResponse](#TransactionInSplitTransactionResponse)? | yes | | + | loanTransaction | [TransactionInSplitTransactionResponse](#TransactionInSplitTransactionResponse)? | yes | | + | downpaymentTransaction | [TransactionInSplitTransactionResponse](#TransactionInSplitTransactionResponse)? | yes | | + | lenderDownpaymentTransaction | [TransactionInSplitTransactionResponse](#TransactionInSplitTransactionResponse)? | yes | | + | headers | HashMap? | yes | | + +--- + + diff --git a/documentation/application/USER.md b/documentation/application/USER.md index 52a257c..5c74be5 100644 --- a/documentation/application/USER.md +++ b/documentation/application/USER.md @@ -16,7 +16,7 @@ Authentication Service * [getSupportCategories](#getsupportcategories) * [initiateTransaction](#initiatetransaction) * [getMobileNumberFromOnboardingToken](#getmobilenumberfromonboardingtoken) -* [getDataFromOnboardingToken](#getdatafromonboardingtoken) +* [getTokenData](#gettokendata) * [getMobileNumberFromLinkingToken](#getmobilenumberfromlinkingtoken) * [getSessionFromLinkingToken](#getsessionfromlinkingtoken) * [saveUserConsents](#saveuserconsents) @@ -653,14 +653,14 @@ Success. Returns a JSON object as shown below. Refer `RetrieveMobileFromToken` f --- -### getDataFromOnboardingToken +### getTokenData Get mobile number from onboarding token ```java -user.getDataFromOnboardingToken(body body) { +user.getTokenData(body body) { //use response } ``` @@ -2488,6 +2488,7 @@ Success. Check the example shown below or refer `ProfileEditSuccess` for more de | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | | token | String | no | | + | type | String? | yes | | --- @@ -3939,6 +3940,7 @@ Success. Check the example shown below or refer `ProfileEditSuccess` for more de | device | [Device](#Device) | no | | | meta | HashMap? | yes | | | fetchLimitOptions | Boolean? | yes | | + | callbackUrl | String? | yes | | --- diff --git a/documentation/platform/CREDIT.md b/documentation/platform/CREDIT.md index d3eff7c..1f423d4 100644 --- a/documentation/platform/CREDIT.md +++ b/documentation/platform/CREDIT.md @@ -502,6 +502,7 @@ Success. The request has been processed successfully and the response contains t "id": "TXN", "amount": 10000, "createdAt": "2024-08-20T06:37:27.150Z", + "utr": "ASCE124353H", "orderId": "DEMO-TRANSACTIOn", "settlementStatus": "PENDING", "settlementTime": "2024-08-22T15:20:02.274Z" @@ -1936,4 +1937,45 @@ Success. The request has been processed successfully and the response contains t --- + + + #### [SplitTransactionRequest](#SplitTransactionRequest) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | token | String | no | It contains all the mercahant and order details. | + | emiTenure | Double | no | This will contain the EMI tenure | + +--- + + + + + #### [TransactionInSplitTransactionResponse](#TransactionInSplitTransactionResponse) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | id | String? | yes | | + | amount | Double? | yes | | + | status | String? | yes | | + | type | String? | yes | | + | subtype | String? | yes | | + +--- + + + + + #### [SplitTransactionResponse](#SplitTransactionResponse) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | parentTransaction | [TransactionInSplitTransactionResponse](#TransactionInSplitTransactionResponse)? | yes | | + | loanTransaction | [TransactionInSplitTransactionResponse](#TransactionInSplitTransactionResponse)? | yes | | + | downpaymentTransaction | [TransactionInSplitTransactionResponse](#TransactionInSplitTransactionResponse)? | yes | | + | lenderDownpaymentTransaction | [TransactionInSplitTransactionResponse](#TransactionInSplitTransactionResponse)? | yes | | + +--- + + diff --git a/documentation/platform/CUSTOMER.md b/documentation/platform/CUSTOMER.md index b963954..c178a79 100644 --- a/documentation/platform/CUSTOMER.md +++ b/documentation/platform/CUSTOMER.md @@ -1682,6 +1682,7 @@ Success. Returns a JSON object as shown below. Refer `AddVintageResponse` for mo | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | | token | String | no | | + | type | String? | yes | | --- @@ -3121,6 +3122,7 @@ Success. Returns a JSON object as shown below. Refer `AddVintageResponse` for mo | device | [Device](#Device) | no | | | meta | HashMap? | yes | | | fetchLimitOptions | Boolean? | yes | | + | callbackUrl | String? | yes | | --- diff --git a/documentation/platform/MERCHANT.md b/documentation/platform/MERCHANT.md index 312f1fe..df02396 100644 --- a/documentation/platform/MERCHANT.md +++ b/documentation/platform/MERCHANT.md @@ -9,6 +9,12 @@ Authentication Service * [getAccessToken](#getaccesstoken) * [renewAccessToken](#renewaccesstoken) * [validateCredentials](#validatecredentials) +* [updateWebhook](#updatewebhook) +* [getWebhook](#getwebhook) +* [getAllWebhookCategoriesAndEvents](#getallwebhookcategoriesandevents) +* [getWhitelistedIp](#getwhitelistedip) +* [whitelistIp](#whitelistip) +* [removeWhitelistedIp](#removewhitelistedip) @@ -254,811 +260,1687 @@ Success. Returns a JSON object as shown below. Refer `ValidateCredentialsRespons
-  $ref +  ValidateCredentialsResponseExample ```json -"#/components/schemas/ValidateCredentialsResponseExample" +{ + "value": { + "message": "The request has been processed successfully.", + "data": { + "success": true, + "organizationId": "d5a2db76-499d-45fc-af67-435481af9a87", + "organizationName": "Settle Organization" + }, + "meta": { + "timestamp": "2024-07-15T12:57:06.818Z", + "version": "v1.0", + "product": "Settle Checkout" + } + } +} +``` +
+ + + + + + + + + + + +--- + + +### updateWebhook +Add or Update webhook details + + + + +```java +merchant.updateWebhook(body body) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| organizationId | String | yes | This is organizationId | +| body | [UpdateApiHook](#UpdateApiHook) | yes | Request body | + + +Use this API to update API webhook details of organization. + +*Returned Response:* + + + + +[UpdateApiHookResponse](#UpdateApiHookResponse) + +Success. Returns a JSON object as shown below. Refer `ValidateCredentialsResponse` for more details. + + + + +
+  Examples: + + +
+  UpdateApiHookResponseExample + +```json +{ + "value": { + "message": "The request has been processed successfully.", + "data": { + "success": true + }, + "meta": { + "timestamp": "2024-08-29T14:33:33.627Z", + "version": "v1.0", + "product": "Settle Checkout" + } + } +} +``` +
+ +
+ + + + + + + + + +--- + + +### getWebhook +Get Webhook Details + + + + +```java +merchant.getWebhook() { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| organizationId | String | yes | This is organization Id | + + + +Use this API to get API webhook details of organization. + +*Returned Response:* + + + + +[ApiHookDetailsResponse](#ApiHookDetailsResponse) + +Success. Returns a JSON object as shown below. Refer `ApiHookDetails` for more details. + + + + +
+  Examples: + + +
+  ApiHookDetailsExample + +```json +{ + "value": { + "message": "The request has been processed successfully.", + "data": { + "apiHookData": [ + { + "id": "4d26567c-3926-40a3-9590-22f310c808e6", + "organizationId": "8d29dca7-73c6-438a-aee0-58b361e32abc", + "url": "https://www.google.com", + "customHeaders": null, + "createdAt": "2024-08-29T14:11:46.793Z", + "updatedAt": "2024-08-29T14:16:31.489Z", + "deletedAt": null, + "meta": null, + "alertEmail": null, + "active": true, + "organizationWebhookEvents": [ + { + "id": "995fce47-3d64-4ec4-b04c-223b0207113f", + "organizationApiHookDetailsId": "4d26567c-3926-40a3-9590-22f310c808e6", + "webhookCategoryId": "de1a6c9d-e124-4a31-816d-258954fd7cd2", + "webhookCategorySlug": "disburse", + "isWebhookCategoryActive": true, + "webhookEventId": "e21443b0-eca3-4701-ad32-335a48c1bb78", + "webhookEventSlug": "start-disburse-test", + "isWebhookEventActive": true, + "meta": { + "test": 123 + }, + "createdAt": "2024-08-29T14:16:31.499Z", + "updatedAt": "2024-08-29T14:16:31.499Z", + "deletedAt": null + }, + { + "id": "fb12cfbb-634c-458f-8094-37dcf3450b20", + "organizationApiHookDetailsId": "4d26567c-3926-40a3-9590-22f310c808e6", + "webhookCategoryId": "84508f95-eb90-467f-9a41-d2f96bd7cd19", + "webhookCategorySlug": "payment", + "isWebhookCategoryActive": true, + "webhookEventId": "2c2ebfc4-e95f-428f-a4ca-b1b58716f635", + "webhookEventSlug": "end-payment-test", + "isWebhookEventActive": true, + "meta": { + "test2": 46 + }, + "createdAt": "2024-08-29T14:16:31.506Z", + "updatedAt": "2024-08-29T14:16:31.506Z", + "deletedAt": null + } + ] + } + ] + }, + "meta": { + "timestamp": "2024-08-30T11:18:00.481Z", + "version": "v1.0", + "product": "Settle Checkout" + } + } +} ```
-
+ + + + + + + + + + +--- + + +### getAllWebhookCategoriesAndEvents +Get all active webhook categories with their associated events. + + + + +```java +merchant.getAllWebhookCategoriesAndEvents( size, page, name, slug) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| organizationId | String | yes | This is organization Id | +| size | Double? | no | Max number of records per page for pagination | +| page | Double? | no | Page number for pagination | +| name | String? | no | Filter by event name (case-insensitive) | +| slug | List? | no | Filter by one or more event slugs (case-insensitive) | + + + +Use this API to get active webhook category details + +*Returned Response:* + + + + +[WebhookCategoriesResponse](#WebhookCategoriesResponse) + +Success. Returns a JSON object as shown below. Refer `WebhookCategoriesResponse` for more details. + + + + +
+  Examples: + + +
+  WebhookCatgeoriesExample + +```json +{ + "value": { + "message": "The request has been processed successfully.", + "data": { + "allCategories": [ + { + "id": "de1a6c9d-e124-4a31-816d-258954fd7cd2", + "name": "disburse", + "slug": "disburse", + "description": "payment webhook category", + "active": true, + "meta": { + "x-data": "xxx" + }, + "createdAt": "2024-08-29T13:53:05.127Z", + "updatedAt": "2024-08-29T13:53:05.127Z", + "deletedAt": null, + "webhookEvents": [ + { + "id": "e21443b0-eca3-4701-ad32-335a48c1bb78", + "name": "disburse start", + "slug": "start-disburse-test", + "description": "this webhook is called when disburse start", + "active": true, + "webhookCategoryId": "de1a6c9d-e124-4a31-816d-258954fd7cd2", + "webhookCategorySlug": "disburse", + "isWebhookCategoryActive": true, + "meta": { + "x-data": "xxx" + }, + "createdAt": "2024-08-29T13:53:05.150Z", + "updatedAt": "2024-08-29T13:53:05.150Z", + "deletedAt": null + } + ] + } + ], + "page": { + "type": "page", + "current": 1, + "hasPrevious": false, + "hasNext": false, + "size": 10, + "itemTotal": 1 + }, + "filters": [ + { + "key": { + "display": "Search", + "name": "search", + "kind": "multivalued" + }, + "values": [ + { + "display": "Name", + "isSelected": true, + "value": "WEBHOOKEVENTNAME" + }, + { + "display": "Slug", + "isSelected": true, + "value": "WEBHOOKEVENTSLUG" + } + ] + } + ] + }, + "meta": { + "timestamp": "2024-08-29T14:33:33.627Z", + "version": "v1.0", + "product": "Settle Checkout" + } + } +} +``` +
+ +
+ + + + + + + + + +--- + + +### getWhitelistedIp +Get all whitelisted Ip for organization + + + + +```java +merchant.getWhitelistedIp() { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| organizationId | String | yes | This is the organization ID | + + + +Use this API to get list of whitelisted ips related to organization + +*Returned Response:* + + + + +[OrganizationIpDetailsResponse](#OrganizationIpDetailsResponse) + +Success. Returns a JSON object as shown below. Refer `OrganizationIpDetailsResponse` for more details. + + + + +
+  Examples: + + +
+  OrganizationIpDetailsResponseExample + +```json +{ + "value": { + "message": "The request has been processed successfully.", + "data": { + "organizationIps": [ + { + "id": "b1983cc9-48e4-4f6f-8a3b-499edac45083", + "organizationId": "8d29dca7-73c6-438a-aee0-58b361e32abc", + "ip": "123.123.12.4", + "description": "Ip of the server", + "active": true, + "createdAt": "2024-10-16T10:19:38.243Z", + "updatedAt": "2024-10-16T10:19:38.243Z" + }, + { + "id": "607e814b-6aa7-4910-8d69-1032a6502583", + "organizationId": "8d29dca7-73c6-438a-aee0-58b361e32abc", + "ip": "123.123.112.1", + "description": "Ip of the another server", + "active": true, + "createdAt": "2024-10-16T12:06:12.905Z", + "updatedAt": "2024-10-16T12:11:18.727Z" + } + ] + }, + "meta": { + "timestamp": "2024-10-16T12:18:51.201Z", + "version": "v1.0", + "product": "Settle Checkout" + } + } +} +``` +
+ +
+ + + + + + + + + +--- + + +### whitelistIp +Add or Update ip to be whitelisted for Organization + + + + +```java +merchant.whitelistIp(body body) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| organizationId | String | yes | This is organizationId | +| body | [AddOrganizationIpDetails](#AddOrganizationIpDetails) | yes | Request body | + + +Use this API to add or update ip to whitelist for organization. + +*Returned Response:* + + + + +[OrganizationIpDetailsResponse](#OrganizationIpDetailsResponse) + +Success. Returns a JSON object as shown below. Refer `OrganizationIpDetailsResponse` for more details. + + + + +
+  Examples: + + +
+  OrganizationIpDetailsResponseExample + +```json +{ + "value": { + "message": "The request has been processed successfully.", + "data": { + "organizationIps": [ + { + "id": "b1983cc9-48e4-4f6f-8a3b-499edac45083", + "organizationId": "8d29dca7-73c6-438a-aee0-58b361e32abc", + "ip": "123.123.12.4", + "description": "Ip of the server", + "active": true, + "createdAt": "2024-10-16T10:19:38.243Z", + "updatedAt": "2024-10-16T10:19:38.243Z" + }, + { + "id": "607e814b-6aa7-4910-8d69-1032a6502583", + "organizationId": "8d29dca7-73c6-438a-aee0-58b361e32abc", + "ip": "123.123.112.1", + "description": "Ip of the another server", + "active": true, + "createdAt": "2024-10-16T12:06:12.905Z", + "updatedAt": "2024-10-16T12:11:18.727Z" + } + ] + }, + "meta": { + "timestamp": "2024-10-16T12:18:51.201Z", + "version": "v1.0", + "product": "Settle Checkout" + } + } +} +``` +
+ +
+ + + + + + + + + +--- + + +### removeWhitelistedIp +Remove the whitelisted IP address for the organization. + + + + +```java +merchant.removeWhitelistedIp(body body) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| organizationId | String | yes | This is organizationId | +| body | [DeleteOrganizationIpDetails](#DeleteOrganizationIpDetails) | yes | Request body | + + +Use this API to remove whitelisted ip for the organization. + +*Returned Response:* + + + + +[DeleteOrganizationIpResponse](#DeleteOrganizationIpResponse) + +Success. Returns a JSON object as shown below. Refer `DeleteOrganizationIpResponse` for more details. + + + + +
+  Examples: + + +
+  DeleteIpResponseExample + +```json +{ + "value": { + "message": "The request has been processed successfully.", + "data": { + "message": "123.123.112.1 deleted" + }, + "meta": { + "timestamp": "2024-10-16T12:19:42.959Z", + "version": "v1.0", + "product": "Settle Checkout" + } + } +} +``` +
+ +
+ + + + + + + + + +--- + + + +### Schemas + + + + #### [ErrorResponse](#ErrorResponse) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | message | String? | yes | | + | info | String? | yes | | + | code | String? | yes | | + | requestId | String? | yes | | + | meta | HashMap? | yes | | + +--- + + + + + #### [BlockUserRequestSchema](#BlockUserRequestSchema) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | status | Boolean? | yes | | + | userid | ArrayList? | yes | | + | reason | String? | yes | | + +--- + + + + + #### [EditEmailRequestSchema](#EditEmailRequestSchema) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | email | String? | yes | | + +--- + + + + + #### [SendVerificationLinkMobileRequestSchema](#SendVerificationLinkMobileRequestSchema) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | verified | Boolean? | yes | | + | active | Boolean? | yes | | + | countryCode | String? | yes | | + | phone | String? | yes | | + | primary | Boolean? | yes | | + +--- + + + + + #### [EditMobileRequestSchema](#EditMobileRequestSchema) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | countryCode | String? | yes | | + | phone | String? | yes | | +--- + + + #### [UpdateEmail](#UpdateEmail) + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | email | String | no | | + | additionalProperties | Object? | yes | | +--- + + + #### [EditProfileRequestSchema](#EditProfileRequestSchema) + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | firstName | String | no | | + | lastName | String | no | | + | countryCode | String? | yes | | + | mobile | String? | yes | | + | email | String? | yes | | + | gender | String? | yes | | + | registrationToken | String? | yes | | --- + + + #### [EditProfileMobileSchema](#EditProfileMobileSchema) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | phone | String? | yes | | + | countryCode | String? | yes | | + +--- -### Schemas - #### [ErrorResponse](#ErrorResponse) + #### [SendEmailOtpRequestSchema](#SendEmailOtpRequestSchema) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | message | String? | yes | | - | info | String? | yes | | - | code | String? | yes | | + | email | String? | yes | | + | action | String? | yes | | + | token | String? | yes | | + | registerToken | String? | yes | | + +--- + + + + + #### [VerifyEmailOtpRequestSchema](#VerifyEmailOtpRequestSchema) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | email | String? | yes | | + | action | String? | yes | | + | registerToken | String? | yes | | + | otp | String? | yes | | + +--- + + + + + #### [VerifyOtpRequest](#VerifyOtpRequest) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | requestId | String | no | | + | otp | String | no | | + | captchaCode | String? | yes | | + | androidHash | String? | yes | | + +--- + + + + + #### [SendMobileOtpRequest](#SendMobileOtpRequest) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | countryCode | String | no | | + | mobile | String | no | | + | captchaCode | String? | yes | | + | androidHash | String? | yes | | + | force | String? | yes | | + +--- + + + + + #### [ReSendMobileOtpRequestSchema](#ReSendMobileOtpRequestSchema) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | captchaCode | String? | yes | | + | token | String | no | | + | androidHash | String? | yes | | + +--- + + + + + #### [LoginSuccess](#LoginSuccess) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | user | [UserSchema](#UserSchema)? | yes | | | requestId | String? | yes | | - | meta | HashMap? | yes | | + | registerToken | String? | yes | | --- - #### [BlockUserRequestSchema](#BlockUserRequestSchema) + #### [VerifyOtpSuccess](#VerifyOtpSuccess) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | status | Boolean? | yes | | - | userid | ArrayList? | yes | | - | reason | String? | yes | | + | user | [UserSchema](#UserSchema)? | yes | | + | userExists | Boolean? | yes | | + | registerToken | String? | yes | | --- - #### [EditEmailRequestSchema](#EditEmailRequestSchema) + #### [ResetPasswordSuccess](#ResetPasswordSuccess) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | email | String? | yes | | + | status | String? | yes | | --- - #### [SendVerificationLinkMobileRequestSchema](#SendVerificationLinkMobileRequestSchema) + #### [RegisterFormSuccess](#RegisterFormSuccess) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | verified | Boolean? | yes | | - | active | Boolean? | yes | | + | email | String? | yes | | + | resendTimer | Integer? | yes | | + | resendToken | String? | yes | | + | resendEmailToken | String? | yes | | + | registerToken | String? | yes | | + | success | Boolean? | yes | | + | requestId | String? | yes | | + | message | String? | yes | | + | mobile | String? | yes | | | countryCode | String? | yes | | - | phone | String? | yes | | - | primary | Boolean? | yes | | + | verifyEmailOtp | Boolean? | yes | | + | verifyMobileOtp | Boolean? | yes | | + | userExists | Boolean? | yes | | --- - #### [EditMobileRequestSchema](#EditMobileRequestSchema) + #### [VerifyEmailSuccess](#VerifyEmailSuccess) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | countryCode | String? | yes | | - | phone | String? | yes | | + | message | String? | yes | | --- - #### [UpdateEmail](#UpdateEmail) + #### [LogoutSuccess](#LogoutSuccess) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | email | String | no | | - | additionalProperties | Object? | yes | | + | logout | Boolean? | yes | | --- - #### [EditProfileRequestSchema](#EditProfileRequestSchema) + #### [BlockUserSuccess](#BlockUserSuccess) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | firstName | String | no | | - | lastName | String | no | | + | success | Boolean? | yes | | + +--- + + + + + #### [ProfileEditSuccess](#ProfileEditSuccess) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | user | [UserSchema](#UserSchema)? | yes | | + | registerToken | String? | yes | | + | resendEmailToken | String? | yes | | + | userExists | Boolean? | yes | | + | verifyEmailLink | Boolean? | yes | | + | verifyEmailOtp | Boolean? | yes | | + | verifyMobileOtp | Boolean? | yes | | + | email | String? | yes | | + | requestId | String? | yes | | | countryCode | String? | yes | | | mobile | String? | yes | | - | email | String? | yes | | - | gender | String? | yes | | - | registrationToken | String? | yes | | + | success | Boolean? | yes | | + | message | String? | yes | | + | resendTimer | Integer? | yes | | + | resendToken | String? | yes | | + +--- + + + + + #### [OtpSuccess](#OtpSuccess) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | resendTimer | Integer? | yes | | + | resendToken | String? | yes | | + | registerToken | String? | yes | | + | success | Boolean? | yes | | + | requestId | String? | yes | | + | message | String? | yes | | + | mobile | String? | yes | | + | countryCode | String? | yes | | + +--- + + + + + #### [EmailOtpSuccess](#EmailOtpSuccess) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | success | Boolean? | yes | | + +--- + + + + + #### [SessionListSuccess](#SessionListSuccess) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | sessions | ArrayList? | yes | | + +--- + + + + + #### [VerifyMobileOTPSuccess](#VerifyMobileOTPSuccess) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | user | [UserSchema](#UserSchema)? | yes | | + | verifyMobileLink | Boolean? | yes | | + +--- + + + + + #### [VerifyEmailOTPSuccess](#VerifyEmailOTPSuccess) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | user | [UserSchema](#UserSchema)? | yes | | + | verifyEmailLink | Boolean? | yes | | --- - #### [EditProfileMobileSchema](#EditProfileMobileSchema) + #### [SendMobileVerifyLinkSuccess](#SendMobileVerifyLinkSuccess) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | phone | String? | yes | | - | countryCode | String? | yes | | + | verifyMobileLink | Boolean? | yes | | --- - #### [SendEmailOtpRequestSchema](#SendEmailOtpRequestSchema) + #### [SendEmailVerifyLinkSuccess](#SendEmailVerifyLinkSuccess) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | email | String? | yes | | - | action | String? | yes | | - | token | String? | yes | | - | registerToken | String? | yes | | + | verifyEmailLink | Boolean? | yes | | --- - #### [VerifyEmailOtpRequestSchema](#VerifyEmailOtpRequestSchema) + #### [UserSearchResponseSchema](#UserSearchResponseSchema) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | email | String? | yes | | - | action | String? | yes | | - | registerToken | String? | yes | | - | otp | String? | yes | | + | users | ArrayList<[UserSchema](#UserSchema)>? | yes | | --- - #### [VerifyOtpRequest](#VerifyOtpRequest) + #### [CustomerListResponseSchema](#CustomerListResponseSchema) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | requestId | String | no | | - | otp | String | no | | - | captchaCode | String? | yes | | - | androidHash | String? | yes | | + | items | ArrayList<[UserSchema](#UserSchema)>? | yes | | + | page | [PaginationSchema](#PaginationSchema)? | yes | | --- - #### [SendMobileOtpRequest](#SendMobileOtpRequest) + #### [PaginationSchema](#PaginationSchema) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | countryCode | String | no | | - | mobile | String | no | | - | captchaCode | String? | yes | | - | androidHash | String? | yes | | - | force | String? | yes | | + | size | Integer? | yes | | + | itemTotal | Integer? | yes | | + | hasNext | Boolean? | yes | | + | type | String? | yes | | + | current | Integer? | yes | | --- - #### [ReSendMobileOtpRequestSchema](#ReSendMobileOtpRequestSchema) + #### [UserObjectSchema](#UserObjectSchema) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | captchaCode | String? | yes | | - | token | String | no | | - | androidHash | String? | yes | | + | user | [UserSchema](#UserSchema)? | yes | | --- - #### [LoginSuccess](#LoginSuccess) + #### [CreateOrganization](#CreateOrganization) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | user | [UserSchema](#UserSchema)? | yes | | - | requestId | String? | yes | | - | registerToken | String? | yes | | + | name | String? | yes | | + | logo | String? | yes | | + | website | String? | yes | | + | disbursementAccountHolderName | String? | yes | | + | disbursementAccountNumber | String? | yes | | + | disbursementIfsc | String? | yes | | + | businessName | String? | yes | | + | email | String? | yes | | + | supportEmail | String? | yes | | + | description | String? | yes | | + | businessAddress | String? | yes | | + | pincode | String? | yes | | + | b2B | Boolean? | yes | | + | b2C | Boolean? | yes | | + | docType | String? | yes | | + | docNumber | String? | yes | | + | organizationId | String? | yes | | --- - #### [VerifyOtpSuccess](#VerifyOtpSuccess) + #### [UpdateLogo](#UpdateLogo) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | user | [UserSchema](#UserSchema)? | yes | | - | userExists | Boolean? | yes | | - | registerToken | String? | yes | | + | logo | String? | yes | | --- - #### [ResetPasswordSuccess](#ResetPasswordSuccess) + #### [AddMetaSchemaRequest](#AddMetaSchemaRequest) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | status | String? | yes | | + | merchantId | String? | yes | | + | schema | HashMap? | yes | | --- - #### [RegisterFormSuccess](#RegisterFormSuccess) + #### [AddMetaSchemaResponse](#AddMetaSchemaResponse) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | email | String? | yes | | - | resendTimer | Integer? | yes | | - | resendToken | String? | yes | | - | resendEmailToken | String? | yes | | - | registerToken | String? | yes | | - | success | Boolean? | yes | | - | requestId | String? | yes | | - | message | String? | yes | | - | mobile | String? | yes | | - | countryCode | String? | yes | | - | verifyEmailOtp | Boolean? | yes | | - | verifyMobileOtp | Boolean? | yes | | - | userExists | Boolean? | yes | | + | merchantId | String? | yes | | + | lenderId | String? | yes | | + | mid | String? | yes | | + | data | HashMap? | yes | | --- - #### [VerifyEmailSuccess](#VerifyEmailSuccess) + #### [UpdateOrganization](#UpdateOrganization) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | message | String? | yes | | + | id | String | no | | + | name | Object? | yes | | + | logo | Object? | yes | | + | website | Object? | yes | | + | disbursementAccountHolderName | Object? | yes | | + | disbursementAccountNumber | Object? | yes | | + | disbursementIfsc | Object? | yes | | + | active | Boolean? | yes | | --- - #### [LogoutSuccess](#LogoutSuccess) + #### [UpdateFinancials](#UpdateFinancials) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | logout | Boolean? | yes | | + | disbursementAccountHolderName | String | no | | + | disbursementAccountNumber | String | no | | + | disbursementIfsc | String | no | | --- - #### [BlockUserSuccess](#BlockUserSuccess) + #### [Documents](#Documents) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | success | Boolean? | yes | | + | docType | String | no | | + | docNumber | String | no | | --- - #### [ProfileEditSuccess](#ProfileEditSuccess) + #### [FinancialDetails](#FinancialDetails) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | user | [UserSchema](#UserSchema)? | yes | | - | registerToken | String? | yes | | - | resendEmailToken | String? | yes | | - | userExists | Boolean? | yes | | - | verifyEmailLink | Boolean? | yes | | - | verifyEmailOtp | Boolean? | yes | | - | verifyMobileOtp | Boolean? | yes | | + | disbursementAccountHolderName | String? | yes | | + | disbursementAccountNumber | String? | yes | | + | disbursementIfsc | String? | yes | | + | b2B | Boolean? | yes | | + | b2C | Boolean? | yes | | + | businessName | String? | yes | | | email | String? | yes | | - | requestId | String? | yes | | - | countryCode | String? | yes | | - | mobile | String? | yes | | - | success | Boolean? | yes | | - | message | String? | yes | | - | resendTimer | Integer? | yes | | - | resendToken | String? | yes | | + | supportEmail | String? | yes | | + | description | String? | yes | | + | businessAddress | String? | yes | | + | pincode | String? | yes | | + | documents | ArrayList<[Documents](#Documents)>? | yes | | --- - #### [OtpSuccess](#OtpSuccess) + #### [GetOrganization](#GetOrganization) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | resendTimer | Integer? | yes | | - | resendToken | String? | yes | | - | registerToken | String? | yes | | - | success | Boolean? | yes | | - | requestId | String? | yes | | - | message | String? | yes | | - | mobile | String? | yes | | - | countryCode | String? | yes | | + | organizationId | String? | yes | | + | createdAt | String? | yes | | + | updatedAt | String? | yes | | + | isAdmin | Boolean? | yes | | + | name | String? | yes | | + | isActive | Boolean? | yes | | --- - #### [EmailOtpSuccess](#EmailOtpSuccess) + #### [OrganizationDetails](#OrganizationDetails) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | success | Boolean? | yes | | + | name | String? | yes | | + | organizationId | String? | yes | | + | isAdmin | Boolean? | yes | | + | createdAt | String? | yes | | + | updatedAt | String? | yes | | + | deletedAt | String? | yes | | + | isActive | Boolean? | yes | | + | logo | String? | yes | | + | website | String? | yes | | + | disbursementAccountHolderName | String? | yes | | + | disbursementAccountNumber | String? | yes | | + | disbursementIfsc | String? | yes | | --- - #### [SessionListSuccess](#SessionListSuccess) + #### [Organization](#Organization) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | sessions | ArrayList? | yes | | + | id | String? | yes | | + | name | String? | yes | | + | active | Boolean? | yes | | + | createdAt | String? | yes | | + | updatedAt | String? | yes | | + | deletedAt | String? | yes | | --- - #### [VerifyMobileOTPSuccess](#VerifyMobileOTPSuccess) + #### [OrganizationList](#OrganizationList) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | user | [UserSchema](#UserSchema)? | yes | | - | verifyMobileLink | Boolean? | yes | | + | name | String? | yes | | + | logo | String? | yes | | + | id | Boolean? | yes | | + | createdAt | String? | yes | | + | updatedAt | String? | yes | | + | deletedAt | String? | yes | | + | isActive | Boolean? | yes | | + | epikId | String? | yes | | + | website | String? | yes | | + | disbursementAccountHolderName | String? | yes | | + | disbursementAccountNumber | String? | yes | | + | disbursementIfsc | String? | yes | | --- - #### [VerifyEmailOTPSuccess](#VerifyEmailOTPSuccess) + #### [OrganizationCount](#OrganizationCount) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | user | [UserSchema](#UserSchema)? | yes | | - | verifyEmailLink | Boolean? | yes | | + | count | String? | yes | | --- - #### [SendMobileVerifyLinkSuccess](#SendMobileVerifyLinkSuccess) + #### [TeamMembers](#TeamMembers) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | verifyMobileLink | Boolean? | yes | | + | members | ArrayList<[Member](#Member)>? | yes | | --- - #### [SendEmailVerifyLinkSuccess](#SendEmailVerifyLinkSuccess) + #### [Member](#Member) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | verifyEmailLink | Boolean? | yes | | + | id | String? | yes | | + | userId | String? | yes | | + | organizationId | String? | yes | | + | isAdmin | Boolean? | yes | | + | createdAt | String? | yes | | + | updatedAt | String? | yes | | + | deletedAt | String? | yes | | + | profile | [Profile](#Profile)? | yes | | --- - #### [UserSearchResponseSchema](#UserSearchResponseSchema) + #### [Profile](#Profile) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | users | ArrayList<[UserSchema](#UserSchema)>? | yes | | + | id | String? | yes | | + | userId | String? | yes | | + | organizationId | String? | yes | | + | isAdmin | Boolean? | yes | | + | createdAt | String? | yes | | + | updatedAt | String? | yes | | + | deletedAt | String? | yes | | --- - #### [CustomerListResponseSchema](#CustomerListResponseSchema) + #### [AddTeamMember](#AddTeamMember) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | items | ArrayList<[UserSchema](#UserSchema)>? | yes | | - | page | [PaginationSchema](#PaginationSchema)? | yes | | + | countryCode | String? | yes | | + | mobile | String? | yes | | + | email | String? | yes | | + | userIsAdmin | Boolean? | yes | | --- - #### [PaginationSchema](#PaginationSchema) + #### [UpdateTeamMemberRole](#UpdateTeamMemberRole) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | size | Integer? | yes | | - | itemTotal | Integer? | yes | | - | hasNext | Boolean? | yes | | - | type | String? | yes | | - | current | Integer? | yes | | + | userIsAdmin | Boolean? | yes | | + | userId | String? | yes | | --- - #### [UserObjectSchema](#UserObjectSchema) + #### [RemoveTeamMemberResponse](#RemoveTeamMemberResponse) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | user | [UserSchema](#UserSchema)? | yes | | + | success | Boolean? | yes | | --- - #### [CreateOrganization](#CreateOrganization) + #### [AddTeamMemberResponse](#AddTeamMemberResponse) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | name | String? | yes | | - | logo | String? | yes | | - | website | String? | yes | | - | disbursementAccountHolderName | String? | yes | | - | disbursementAccountNumber | String? | yes | | - | disbursementIfsc | String? | yes | | - | businessName | String? | yes | | - | email | String? | yes | | - | supportEmail | String? | yes | | - | description | String? | yes | | - | businessAddress | String? | yes | | - | pincode | String? | yes | | - | b2B | Boolean? | yes | | - | b2C | Boolean? | yes | | - | docType | String? | yes | | - | docNumber | String? | yes | | + | id | String? | yes | | + | userId | String? | yes | | | organizationId | String? | yes | | + | isAdmin | Boolean? | yes | | + | createdAt | String? | yes | | + | updatedAt | String? | yes | | + | deletedAt | String? | yes | | --- - #### [UpdateLogo](#UpdateLogo) + #### [ApiKey](#ApiKey) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | logo | String? | yes | | + | key | String? | yes | | + | secret | String? | yes | | --- - #### [AddMetaSchemaRequest](#AddMetaSchemaRequest) + #### [WebHookEvent](#WebHookEvent) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | merchantId | String? | yes | | - | schema | HashMap? | yes | | + | id | String? | yes | | + | name | String? | yes | | + | slug | String? | yes | | + | description | String? | yes | | + | active | Boolean? | yes | | + | meta | HashMap? | yes | | + | webhookCategoryId | String? | yes | | + | webhookCategorySlug | String? | yes | | + | isWebhookCategoryActive | Boolean? | yes | | + | createdAt | String? | yes | | + | updatedAt | String? | yes | | + | deletedAt | String? | yes | | --- - #### [AddMetaSchemaResponse](#AddMetaSchemaResponse) + #### [WebhookCatgeory](#WebhookCatgeory) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | merchantId | String? | yes | | - | lenderId | String? | yes | | - | mid | String? | yes | | - | data | HashMap? | yes | | + | id | String? | yes | | + | name | String? | yes | | + | slug | String? | yes | | + | description | String? | yes | | + | active | Boolean? | yes | | + | meta | HashMap? | yes | | + | createdAt | String? | yes | | + | updatedAt | String? | yes | | + | webhookEvents | ArrayList<[WebHookEvent](#WebHookEvent)>? | yes | | --- - #### [UpdateOrganization](#UpdateOrganization) + #### [WebhookPage](#WebhookPage) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | id | String | no | | - | name | Object? | yes | | - | logo | Object? | yes | | - | website | Object? | yes | | - | disbursementAccountHolderName | Object? | yes | | - | disbursementAccountNumber | Object? | yes | | - | disbursementIfsc | Object? | yes | | - | active | Boolean? | yes | | + | type | String? | yes | The type of pagination being used (e.g., 'page'). | + | current | Double? | yes | The current page number being displayed. | + | hasPrevious | Boolean? | yes | Indicates if there are pages available before the current page. | + | hasNext | Boolean? | yes | Indicates if there are more pages available after the current page. | + | size | Double? | yes | The number of items per page. | + | itemTotal | Double? | yes | The total number of items available. | --- - #### [UpdateFinancials](#UpdateFinancials) + #### [WebhookCategoryFilterKeys](#WebhookCategoryFilterKeys) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | disbursementAccountHolderName | String | no | | - | disbursementAccountNumber | String | no | | - | disbursementIfsc | String | no | | + | display | String? | yes | | + | name | String? | yes | | + | kind | String? | yes | | --- - #### [Documents](#Documents) + #### [WebhookCategoryFilterValues](#WebhookCategoryFilterValues) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | docType | String | no | | - | docNumber | String | no | | + | display | String? | yes | | + | isSelected | Boolean? | yes | | + | value | String? | yes | | --- - #### [FinancialDetails](#FinancialDetails) + #### [WebhookCategoryFilters](#WebhookCategoryFilters) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | disbursementAccountHolderName | String? | yes | | - | disbursementAccountNumber | String? | yes | | - | disbursementIfsc | String? | yes | | - | b2B | Boolean? | yes | | - | b2C | Boolean? | yes | | - | businessName | String? | yes | | - | email | String? | yes | | - | supportEmail | String? | yes | | - | description | String? | yes | | - | businessAddress | String? | yes | | - | pincode | String? | yes | | - | documents | ArrayList<[Documents](#Documents)>? | yes | | + | key | [WebhookCategoryFilterKeys](#WebhookCategoryFilterKeys)? | yes | | + | values | ArrayList<[WebhookCategoryFilterValues](#WebhookCategoryFilterValues)>? | yes | | --- - #### [GetOrganization](#GetOrganization) + #### [WebhookCategories](#WebhookCategories) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | organizationId | String? | yes | | - | createdAt | String? | yes | | - | updatedAt | String? | yes | | - | isAdmin | Boolean? | yes | | - | name | String? | yes | | - | isActive | Boolean? | yes | | + | allCategories | ArrayList<[WebhookCatgeory](#WebhookCatgeory)>? | yes | | + | page | [WebhookPage](#WebhookPage)? | yes | | + | filters | ArrayList<[WebhookCategoryFilters](#WebhookCategoryFilters)>? | yes | | --- - #### [OrganizationDetails](#OrganizationDetails) + #### [WebhookCategoriesResponse](#WebhookCategoriesResponse) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | name | String? | yes | | - | organizationId | String? | yes | | - | isAdmin | Boolean? | yes | | - | createdAt | String? | yes | | - | updatedAt | String? | yes | | - | deletedAt | String? | yes | | - | isActive | Boolean? | yes | | - | logo | String? | yes | | - | website | String? | yes | | - | disbursementAccountHolderName | String? | yes | | - | disbursementAccountNumber | String? | yes | | - | disbursementIfsc | String? | yes | | + | message | String | no | Response message indicating the result of the operation. | + | meta | [IntegrationResponseMeta](#IntegrationResponseMeta) | no | | + | data | [WebhookCategories](#WebhookCategories) | no | | --- - #### [Organization](#Organization) + #### [DeleteWebhookEventData](#DeleteWebhookEventData) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | id | String? | yes | | - | name | String? | yes | | - | active | Boolean? | yes | | - | createdAt | String? | yes | | - | updatedAt | String? | yes | | - | deletedAt | String? | yes | | + | id | String | no | | --- - #### [OrganizationList](#OrganizationList) + #### [UpdateWebhookCategoryEvent](#UpdateWebhookCategoryEvent) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | name | String? | yes | | - | logo | String? | yes | | - | id | Boolean? | yes | | - | createdAt | String? | yes | | - | updatedAt | String? | yes | | - | deletedAt | String? | yes | | - | isActive | Boolean? | yes | | - | epikId | String? | yes | | - | website | String? | yes | | - | disbursementAccountHolderName | String? | yes | | - | disbursementAccountNumber | String? | yes | | - | disbursementIfsc | String? | yes | | + | id | String? | yes | | + | name | String | no | | + | slug | String | no | | + | description | String? | yes | | + | active | Boolean | no | | + | meta | HashMap? | yes | | --- - #### [OrganizationCount](#OrganizationCount) + #### [UpdateWebhookCategory](#UpdateWebhookCategory) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | count | String? | yes | | + | id | String? | yes | | + | name | String | no | | + | slug | String | no | | + | description | String? | yes | | + | active | Boolean | no | | + | meta | HashMap? | yes | | + | eventList | ArrayList<[UpdateWebhookCategoryEvent](#UpdateWebhookCategoryEvent)>? | yes | | + | deletedEventList | ArrayList<[DeleteWebhookEventData](#DeleteWebhookEventData)>? | yes | | --- - #### [TeamMembers](#TeamMembers) + #### [UpdateWebhookCategoryResponse](#UpdateWebhookCategoryResponse) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | members | ArrayList<[Member](#Member)>? | yes | | + | id | String? | yes | | + | name | String? | yes | | + | slug | String? | yes | | + | description | String? | yes | | + | active | Boolean? | yes | | + | meta | HashMap? | yes | | + | createdAt | String? | yes | | + | updatedAt | String? | yes | | + | updatedEventList | ArrayList<[WebHookEvent](#WebHookEvent)>? | yes | | --- - #### [Member](#Member) + #### [DeleteWebhookCatgeory](#DeleteWebhookCatgeory) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | id | String? | yes | | - | userId | String? | yes | | - | organizationId | String? | yes | | - | isAdmin | Boolean? | yes | | - | createdAt | String? | yes | | - | updatedAt | String? | yes | | - | deletedAt | String? | yes | | - | profile | [Profile](#Profile)? | yes | | + | success | Boolean? | yes | | --- - #### [Profile](#Profile) + #### [WebHookSubscriptionEvent](#WebHookSubscriptionEvent) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | | id | String? | yes | | - | userId | String? | yes | | - | organizationId | String? | yes | | - | isAdmin | Boolean? | yes | | - | createdAt | String? | yes | | - | updatedAt | String? | yes | | - | deletedAt | String? | yes | | + | webhookEventId | String | no | | + | meta | HashMap? | yes | | --- - #### [AddTeamMember](#AddTeamMember) + #### [WebhookList](#WebhookList) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | countryCode | String? | yes | | - | mobile | String? | yes | | - | email | String? | yes | | - | userIsAdmin | Boolean? | yes | | + | id | String? | yes | | + | url | String | no | | + | customHeaders | HashMap? | yes | | + | alertEmail | String? | yes | | + | active | Boolean | no | | + | meta | HashMap? | yes | | + | webHookSubscriptionEvents | ArrayList<[WebHookSubscriptionEvent](#WebHookSubscriptionEvent)> | no | | --- - #### [UpdateTeamMemberRole](#UpdateTeamMemberRole) + #### [UpdateApiHook](#UpdateApiHook) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | userIsAdmin | Boolean? | yes | | - | userId | String? | yes | | + | webhookList | ArrayList<[WebhookList](#WebhookList)> | no | | + | removedWebhookIdList | ArrayList? | yes | | --- - #### [RemoveTeamMemberResponse](#RemoveTeamMemberResponse) + #### [OrganizationWebhookEventItem](#OrganizationWebhookEventItem) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | success | Boolean? | yes | | + | id | String? | yes | | + | organizationApiHookDetailsId | String? | yes | | + | webhookCategoryId | String? | yes | | + | webhookCategorySlug | String? | yes | | + | isWebhookCategoryActive | Boolean? | yes | | + | webhookEventId | String? | yes | | + | webhookEventSlug | String? | yes | | + | isWebhookEventActive | Boolean? | yes | | + | meta | HashMap? | yes | | + | createdAt | String? | yes | | + | updatedAt | String? | yes | | --- - #### [AddTeamMemberResponse](#AddTeamMemberResponse) + #### [ApiHookDetailsItem](#ApiHookDetailsItem) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | | id | String? | yes | | - | userId | String? | yes | | | organizationId | String? | yes | | - | isAdmin | Boolean? | yes | | + | url | String? | yes | | + | customHeaders | HashMap? | yes | | + | meta | HashMap? | yes | | + | alertEmail | String? | yes | | + | active | Boolean? | yes | | | createdAt | String? | yes | | | updatedAt | String? | yes | | - | deletedAt | String? | yes | | + | organizationWebhookEvents | ArrayList<[OrganizationWebhookEventItem](#OrganizationWebhookEventItem)>? | yes | | --- - #### [ApiKey](#ApiKey) + #### [ApiHookDetailsData](#ApiHookDetailsData) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | key | String? | yes | | - | secret | String? | yes | | + | apiHookData | ArrayList<[ApiHookDetailsItem](#ApiHookDetailsItem)>? | yes | | --- - #### [UpdateApiHook](#UpdateApiHook) + #### [ApiHookDetailsResponse](#ApiHookDetailsResponse) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | apiKey | String | no | | - | url | String | no | | - | customHeaders | HashMap? | yes | | + | message | String | no | Response message indicating the result of the operation. | + | meta | [IntegrationResponseMeta](#IntegrationResponseMeta) | no | | + | data | [ApiHookDetailsData](#ApiHookDetailsData) | no | | --- - #### [ApiHookDetails](#ApiHookDetails) + #### [UpdateApiHookResponseData](#UpdateApiHookResponseData) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | apiKey | String | no | | - | url | String | no | | - | customHeaders | HashMap? | yes | | - | createdAt | String? | yes | | - | updatedAt | String? | yes | | + | success | Boolean? | yes | | --- @@ -1069,7 +1951,9 @@ Success. Returns a JSON object as shown below. Refer `ValidateCredentialsRespons | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | success | Boolean? | yes | | + | message | String | no | Response message indicating the result of the operation. | + | meta | [IntegrationResponseMeta](#IntegrationResponseMeta) | no | | + | data | [UpdateApiHookResponseData](#UpdateApiHookResponseData) | no | | --- @@ -1082,6 +1966,7 @@ Success. Returns a JSON object as shown below. Refer `ValidateCredentialsRespons | ---------- | ---- | -------- | ----------- | | id | String? | yes | | | ip | String | no | | + | description | String? | yes | | --- @@ -1093,7 +1978,17 @@ Success. Returns a JSON object as shown below. Refer `ValidateCredentialsRespons | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | | organizationIps | ArrayList<[OrganizationIp](#OrganizationIp)>? | yes | | - | delete | String? | yes | | + +--- + + + + + #### [DeleteOrganizationIpDetails](#DeleteOrganizationIpDetails) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | deleteIp | String | no | | --- @@ -1337,22 +2232,60 @@ Success. Returns a JSON object as shown below. Refer `ValidateCredentialsRespons | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | + | id | String | no | | | organizationId | String | no | | | ip | String | no | | + | description | String? | yes | | | createdAt | String? | yes | | | updatedAt | String? | yes | | - | id | String | no | | --- - #### [OrganizationIpDetails](#OrganizationIpDetails) + #### [OrganizationIpData](#OrganizationIpData) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | organizationIps | ArrayList<[OrganizationIpResponse](#OrganizationIpResponse)> | no | | + +--- + + + + + #### [OrganizationIpDetailsResponse](#OrganizationIpDetailsResponse) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | message | String | no | Response message indicating the result of the operation. | + | meta | [IntegrationResponseMeta](#IntegrationResponseMeta) | no | | + | data | [OrganizationIpData](#OrganizationIpData) | no | | + +--- + + + + + #### [DeleteOrganizationIpData](#DeleteOrganizationIpData) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | message | String | no | | + +--- + + + + + #### [DeleteOrganizationIpResponse](#DeleteOrganizationIpResponse) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | organizationIps | ArrayList<[OrganizationIpResponse](#OrganizationIpResponse)>? | yes | | + | message | String | no | Response message indicating the result of the operation. | + | meta | [IntegrationResponseMeta](#IntegrationResponseMeta) | no | | + | data | [DeleteOrganizationIpData](#DeleteOrganizationIpData) | no | | --- diff --git a/documentation/platform/MULTIKYC.md b/documentation/platform/MULTIKYC.md index 6f16ff1..529f5f7 100644 --- a/documentation/platform/MULTIKYC.md +++ b/documentation/platform/MULTIKYC.md @@ -191,7 +191,7 @@ multikyc.approvedLenders() { | action | String? | yes | | | form | Object? | yes | | | uiSchema | Object? | yes | | - | workflowId | String? | yes | | + | validationWorkflow | String? | yes | | --- @@ -219,7 +219,11 @@ multikyc.approvedLenders() { | formId | String? | yes | | | merchantId | String? | yes | | | form | [Form](#Form) | no | | - | docSchema | Object | no | | + | docSchema | Object? | yes | | + | isOptional | Boolean? | yes | | + | isInternal | Boolean? | yes | | + | optionalWorkflow | String? | yes | | + | internalWorkflow | String? | yes | | --- @@ -319,6 +323,7 @@ multikyc.approvedLenders() { | creditType | String? | yes | | | userId | String | no | | | entityId | String | no | | + | isDefault | Boolean? | yes | | --- @@ -331,7 +336,6 @@ multikyc.approvedLenders() { | ---------- | ---- | -------- | ----------- | | id | String | no | | | type | String? | yes | | - | address | String? | yes | | | name | String? | yes | | | gender | String? | yes | | | dob | String? | yes | | @@ -357,7 +361,6 @@ multikyc.approvedLenders() { | disbursementIfsc | String? | yes | | | createdBy | String? | yes | | | active | Boolean? | yes | | - | category | String? | yes | | | createdAt | String? | yes | | | updatedAt | String? | yes | | | deletedAt | String? | yes | | @@ -1166,6 +1169,18 @@ multikyc.approvedLenders() { + #### [CreateUserLenderAssociationRequest](#CreateUserLenderAssociationRequest) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | organizationId | String | no | | + | role | String | no | | + +--- + + + + #### [FindDocResponse](#FindDocResponse) | Properties | Type | Nullable | Description | @@ -1301,6 +1316,7 @@ multikyc.approvedLenders() { | includeStatus | ArrayList? | yes | | | excludeStatus | ArrayList? | yes | | | allowDisabledLender | Object? | yes | | + | merchantIds | ArrayList? | yes | | --- @@ -1478,6 +1494,12 @@ multikyc.approvedLenders() { | iconUrl | String? | yes | | | isInteractive | Boolean | no | | | schema | Object? | yes | | + | meta | Object? | yes | | + | display | Object? | yes | | + | isOptional | Boolean? | yes | | + | optionalWorkflow | String? | yes | | + | isInternal | Boolean? | yes | | + | internalWorkflow | String? | yes | | --- @@ -2057,6 +2079,9 @@ multikyc.approvedLenders() { | slug | String | no | | | isDefault | Boolean | no | | | logoUrl | String | no | | + | lenderLogo | String? | yes | | + | merchantLogo | String? | yes | | + | merchantId | String? | yes | | --- @@ -2307,7 +2332,7 @@ multikyc.approvedLenders() { - #### [KycDetailsReponse](#KycDetailsReponse) + #### [KycDetailsResponse](#KycDetailsResponse) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | @@ -2458,7 +2483,7 @@ multikyc.approvedLenders() { - #### [CustomerKycDetailsReponse](#CustomerKycDetailsReponse) + #### [CustomerKycDetailsResponse](#CustomerKycDetailsResponse) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | diff --git a/documentation/platform/PAYMENTS.md b/documentation/platform/PAYMENTS.md index 262bfa1..abbf0a8 100644 --- a/documentation/platform/PAYMENTS.md +++ b/documentation/platform/PAYMENTS.md @@ -188,6 +188,7 @@ Success. Returns a JSON object as shown below. Refer `PaymentLinkResponse` for m | bankName | String | no | | | chargeToken | String? | yes | | | transactionId | String? | yes | | + | entityMapId | String? | yes | | --- @@ -215,6 +216,7 @@ Success. Returns a JSON object as shown below. Refer `PaymentLinkResponse` for m | vpa | String | no | | | chargeToken | String? | yes | | | transactionId | String? | yes | | + | entityMapId | String? | yes | | --- @@ -591,4 +593,28 @@ Success. Returns a JSON object as shown below. Refer `PaymentLinkResponse` for m --- + + + #### [VerifyUPIRequest](#VerifyUPIRequest) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | vpa | String | no | The Virtual Payment Address (VPA) for UPI. | + | lenderSlug | String? | yes | The lender slug associated with the request. Optional parameter. | + +--- + + + + + #### [UPIValidationSuccessResponse](#UPIValidationSuccessResponse) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | status | String? | yes | | + | name | String? | yes | | + +--- + + diff --git a/documentation/public/MERCHANT.md b/documentation/public/MERCHANT.md index 75327f1..0fd254c 100644 --- a/documentation/public/MERCHANT.md +++ b/documentation/public/MERCHANT.md @@ -15,6 +15,7 @@ Authentication Service * [refund](#refund) * [getOrganizations](#getorganizations) * [createOrganization](#createorganization) +* [getAllWebhookCategoriesAndEvents](#getallwebhookcategoriesandevents) * [getOrganizationDetails](#getorganizationdetails) * [getOrganizationFinanceDetails](#getorganizationfinancedetails) * [updateFinancialDetails](#updatefinancialdetails) @@ -23,10 +24,11 @@ Authentication Service * [removeTeamMemberFromOrganization](#removeteammemberfromorganization) * [updateMemberRole](#updatememberrole) * [getOrganizationApiKeyAndSecret](#getorganizationapikeyandsecret) -* [updateTransactionApiHookOfOrganization](#updatetransactionapihookoforganization) -* [getOrganizationApiHookDetails](#getorganizationapihookdetails) -* [getOrganizationIpDetails](#getorganizationipdetails) -* [addOrUpdateIpToWhiteListOfOrganization](#addorupdateiptowhitelistoforganization) +* [updateWebhook](#updatewebhook) +* [getWebhook](#getwebhook) +* [getWhitelistedIp](#getwhitelistedip) +* [whitelistIp](#whitelistip) +* [removeWhitelistedIp](#removewhitelistedip) * [updateOrganizationLogo](#updateorganizationlogo) * [addRestrictedSku](#addrestrictedsku) * [getRestrictedSku](#getrestrictedsku) @@ -41,6 +43,7 @@ Authentication Service * [generatePaymentLink](#generatepaymentlink) * [updateProfile](#updateprofile) * [getOutStandingDetails](#getoutstandingdetails) +* [getOutStandingAmountDetails](#getoutstandingamountdetails) @@ -624,6 +627,141 @@ Success. Returns a JSON object as shown below. Refer `GetOrganization` for more +--- + + +### getAllWebhookCategoriesAndEvents +Get all active webhook categories with their associated events. + + + + +```java +merchant.getAllWebhookCategoriesAndEvents( size, page, name, slug) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| size | Double? | no | Max number of records per page for pagination | +| page | Double? | no | Page number for pagination | +| name | String? | no | Filter by event name (case-insensitive) | +| slug | List? | no | Filter by one or more event slugs (case-insensitive) | + + + +Use this API to get active webhook category details + +*Returned Response:* + + + + +[WebhookCategoriesResponse](#WebhookCategoriesResponse) + +Success. Returns a JSON object as shown below. Refer `WebhookCategoriesResponse` for more details. + + + + +
+  Examples: + + +
+  WebhookCatgeoriesExample + +```json +{ + "value": { + "message": "The request has been processed successfully.", + "data": { + "allCategories": [ + { + "id": "de1a6c9d-e124-4a31-816d-258954fd7cd2", + "name": "disburse", + "slug": "disburse", + "description": "payment webhook category", + "active": true, + "meta": { + "x-data": "xxx" + }, + "createdAt": "2024-08-29T13:53:05.127Z", + "updatedAt": "2024-08-29T13:53:05.127Z", + "deletedAt": null, + "webhookEvents": [ + { + "id": "e21443b0-eca3-4701-ad32-335a48c1bb78", + "name": "disburse start", + "slug": "start-disburse-test", + "description": "this webhook is called when disburse start", + "active": true, + "webhookCategoryId": "de1a6c9d-e124-4a31-816d-258954fd7cd2", + "webhookCategorySlug": "disburse", + "isWebhookCategoryActive": true, + "meta": { + "x-data": "xxx" + }, + "createdAt": "2024-08-29T13:53:05.150Z", + "updatedAt": "2024-08-29T13:53:05.150Z", + "deletedAt": null + } + ] + } + ], + "page": { + "type": "page", + "current": 1, + "hasPrevious": false, + "hasNext": false, + "size": 10, + "itemTotal": 1 + }, + "filters": [ + { + "key": { + "display": "Search", + "name": "search", + "kind": "multivalued" + }, + "values": [ + { + "display": "Name", + "isSelected": true, + "value": "WEBHOOKEVENTNAME" + }, + { + "display": "Slug", + "isSelected": true, + "value": "WEBHOOKEVENTSLUG" + } + ] + } + ] + }, + "meta": { + "timestamp": "2024-08-29T14:33:33.627Z", + "version": "v1.0", + "product": "Settle Checkout" + } + } +} +``` +
+ +
+ + + + + + + + + --- @@ -1094,14 +1232,14 @@ Success. Returns a JSON object as shown below. Refer `ApiKey` for more details. --- -### updateTransactionApiHookOfOrganization -add or update api details of organization for transaction status update +### updateWebhook +Add or Update webhook details ```java -merchant.updateTransactionApiHookOfOrganization(body body) { +merchant.updateWebhook(body body) { //use response } ``` @@ -1110,11 +1248,11 @@ merchant.updateTransactionApiHookOfOrganization(body body) { | Argument | Type | Required | Description | | --------- | ----- | -------- | ----------- | -| organizationId | String | yes | This is the organization ID | +| organizationId | String | yes | This is organizationId | | body | [UpdateApiHook](#UpdateApiHook) | yes | Request body | -Use this API to update api hook of organization. +Use this API to update API webhook details of organization. *Returned Response:* @@ -1123,21 +1261,37 @@ Use this API to update api hook of organization. [UpdateApiHookResponse](#UpdateApiHookResponse) -Success. Returns a JSON object as shown below. Refer `UpdateApiHookResponse` for more details. +Success. Returns a JSON object as shown below. Refer `ValidateCredentialsResponse` for more details.
-  Example: +  Examples: + + +
+  UpdateApiHookResponseExample ```json { - "success": true + "value": { + "message": "The request has been processed successfully.", + "data": { + "success": true + }, + "meta": { + "timestamp": "2024-08-29T14:33:33.627Z", + "version": "v1.0", + "product": "Settle Checkout" + } + } } ```
+
+ @@ -1149,14 +1303,14 @@ Success. Returns a JSON object as shown below. Refer `UpdateApiHookResponse` for --- -### getOrganizationApiHookDetails -Get Organization API hook details +### getWebhook +Get Webhook Details ```java -merchant.getOrganizationApiHookDetails() { +merchant.getWebhook() { //use response } ``` @@ -1165,18 +1319,18 @@ merchant.getOrganizationApiHookDetails() { | Argument | Type | Required | Description | | --------- | ----- | -------- | ----------- | -| organizationId | String | yes | This is the organization ID | +| organizationId | String | yes | This is organization Id | -Use this API to get API hook details of Organization +Use this API to get API webhook details of organization. *Returned Response:* -[ApiHookDetails](#ApiHookDetails) +[ApiHookDetailsResponse](#ApiHookDetailsResponse) Success. Returns a JSON object as shown below. Refer `ApiHookDetails` for more details. @@ -1184,21 +1338,78 @@ Success. Returns a JSON object as shown below. Refer `ApiHookDetails` for more d
-  Example: +  Examples: + + +
+  ApiHookDetailsExample ```json { - "url": "http://google.com", - "customHeaders": { - "x-id": "123" - }, - "apiKey": "12345", - "createdAt": "2022-07-01T11:35:20.251Z", - "updatedAt": "2022-07-01T11:35:20.251Z" + "value": { + "message": "The request has been processed successfully.", + "data": { + "apiHookData": [ + { + "id": "4d26567c-3926-40a3-9590-22f310c808e6", + "organizationId": "8d29dca7-73c6-438a-aee0-58b361e32abc", + "url": "https://www.google.com", + "customHeaders": null, + "createdAt": "2024-08-29T14:11:46.793Z", + "updatedAt": "2024-08-29T14:16:31.489Z", + "deletedAt": null, + "meta": null, + "alertEmail": null, + "active": true, + "organizationWebhookEvents": [ + { + "id": "995fce47-3d64-4ec4-b04c-223b0207113f", + "organizationApiHookDetailsId": "4d26567c-3926-40a3-9590-22f310c808e6", + "webhookCategoryId": "de1a6c9d-e124-4a31-816d-258954fd7cd2", + "webhookCategorySlug": "disburse", + "isWebhookCategoryActive": true, + "webhookEventId": "e21443b0-eca3-4701-ad32-335a48c1bb78", + "webhookEventSlug": "start-disburse-test", + "isWebhookEventActive": true, + "meta": { + "test": 123 + }, + "createdAt": "2024-08-29T14:16:31.499Z", + "updatedAt": "2024-08-29T14:16:31.499Z", + "deletedAt": null + }, + { + "id": "fb12cfbb-634c-458f-8094-37dcf3450b20", + "organizationApiHookDetailsId": "4d26567c-3926-40a3-9590-22f310c808e6", + "webhookCategoryId": "84508f95-eb90-467f-9a41-d2f96bd7cd19", + "webhookCategorySlug": "payment", + "isWebhookCategoryActive": true, + "webhookEventId": "2c2ebfc4-e95f-428f-a4ca-b1b58716f635", + "webhookEventSlug": "end-payment-test", + "isWebhookEventActive": true, + "meta": { + "test2": 46 + }, + "createdAt": "2024-08-29T14:16:31.506Z", + "updatedAt": "2024-08-29T14:16:31.506Z", + "deletedAt": null + } + ] + } + ] + }, + "meta": { + "timestamp": "2024-08-30T11:18:00.481Z", + "version": "v1.0", + "product": "Settle Checkout" + } + } } ```
+
+ @@ -1210,14 +1421,14 @@ Success. Returns a JSON object as shown below. Refer `ApiHookDetails` for more d --- -### getOrganizationIpDetails -Get Organization's ip whitelist details +### getWhitelistedIp +Get all whitelisted Ip for organization ```java -merchant.getOrganizationIpDetails() { +merchant.getWhitelistedIp() { //use response } ``` @@ -1230,39 +1441,65 @@ merchant.getOrganizationIpDetails() { -Use this API to get list of ips related to organization +Use this API to get list of whitelisted ips related to organization *Returned Response:* -[OrganizationIpDetails](#OrganizationIpDetails) +[OrganizationIpDetailsResponse](#OrganizationIpDetailsResponse) -Success. Returns a JSON object as shown below. Refer `OrganizationIpDetails` for more details. +Success. Returns a JSON object as shown below. Refer `OrganizationIpDetailsResponse` for more details.
-  Example: +  Examples: + + +
+  OrganizationIpDetailsResponseExample ```json { - "organizationIps": [ - { - "id": "ba13ee97-5029-4ec9-91c2-f6388fd06298", - "organizationId": "f0ed1368-e3d5-4e9b-8de6-c7d97d62f339", - "ip": "127.0.0.3", - "active": true, - "createdAt": "2022-07-04T08:15:59.145Z", - "updatedAt": "2022-07-04T08:15:59.145Z" + "value": { + "message": "The request has been processed successfully.", + "data": { + "organizationIps": [ + { + "id": "b1983cc9-48e4-4f6f-8a3b-499edac45083", + "organizationId": "8d29dca7-73c6-438a-aee0-58b361e32abc", + "ip": "123.123.12.4", + "description": "Ip of the server", + "active": true, + "createdAt": "2024-10-16T10:19:38.243Z", + "updatedAt": "2024-10-16T10:19:38.243Z" + }, + { + "id": "607e814b-6aa7-4910-8d69-1032a6502583", + "organizationId": "8d29dca7-73c6-438a-aee0-58b361e32abc", + "ip": "123.123.112.1", + "description": "Ip of the another server", + "active": true, + "createdAt": "2024-10-16T12:06:12.905Z", + "updatedAt": "2024-10-16T12:11:18.727Z" + } + ] + }, + "meta": { + "timestamp": "2024-10-16T12:18:51.201Z", + "version": "v1.0", + "product": "Settle Checkout" } - ] + } } ```
+
+ @@ -1274,14 +1511,14 @@ Success. Returns a JSON object as shown below. Refer `OrganizationIpDetails` for --- -### addOrUpdateIpToWhiteListOfOrganization +### whitelistIp Add or Update ip to be whitelisted for Organization ```java -merchant.addOrUpdateIpToWhiteListOfOrganization(body body) { +merchant.whitelistIp(body body) { //use response } ``` @@ -1290,43 +1527,140 @@ merchant.addOrUpdateIpToWhiteListOfOrganization(body body) { | Argument | Type | Required | Description | | --------- | ----- | -------- | ----------- | -| organizationId | String | yes | This is the organization ID | +| organizationId | String | yes | This is organizationId | | body | [AddOrganizationIpDetails](#AddOrganizationIpDetails) | yes | Request body | -Use this API to add or update ip to whitelist of organization. +Use this API to add or update ip to whitelist for organization. *Returned Response:* -[OrganizationIpDetails](#OrganizationIpDetails) +[OrganizationIpDetailsResponse](#OrganizationIpDetailsResponse) -Success. Returns a JSON object as shown below. Refer `OrganizationIpDetails` for more details. +Success. Returns a JSON object as shown below. Refer `OrganizationIpDetailsResponse` for more details.
-  Example: +  Examples: + + +
+  OrganizationIpDetailsResponseExample ```json { - "organizationIps": [ - { - "organizationId": "f0ed1368-e3d5-4e9b-8de6-c7d97d62f339", - "ip": "127.0.0.1", - "active": true, - "createdAt": "2022-07-04T08:15:59.145Z", - "updatedAt": "2022-07-04T08:15:59.145Z", - "id": "ba13ee97-5029-4ec9-91c2-f6388fd06298" + "value": { + "message": "The request has been processed successfully.", + "data": { + "organizationIps": [ + { + "id": "b1983cc9-48e4-4f6f-8a3b-499edac45083", + "organizationId": "8d29dca7-73c6-438a-aee0-58b361e32abc", + "ip": "123.123.12.4", + "description": "Ip of the server", + "active": true, + "createdAt": "2024-10-16T10:19:38.243Z", + "updatedAt": "2024-10-16T10:19:38.243Z" + }, + { + "id": "607e814b-6aa7-4910-8d69-1032a6502583", + "organizationId": "8d29dca7-73c6-438a-aee0-58b361e32abc", + "ip": "123.123.112.1", + "description": "Ip of the another server", + "active": true, + "createdAt": "2024-10-16T12:06:12.905Z", + "updatedAt": "2024-10-16T12:11:18.727Z" + } + ] + }, + "meta": { + "timestamp": "2024-10-16T12:18:51.201Z", + "version": "v1.0", + "product": "Settle Checkout" } - ] + } +} +``` +
+ +
+ + + + + + + + + +--- + + +### removeWhitelistedIp +Remove the whitelisted IP address for the organization. + + + + +```java +merchant.removeWhitelistedIp(body body) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| organizationId | String | yes | This is organizationId | +| body | [DeleteOrganizationIpDetails](#DeleteOrganizationIpDetails) | yes | Request body | + + +Use this API to remove whitelisted ip for the organization. + +*Returned Response:* + + + + +[DeleteOrganizationIpResponse](#DeleteOrganizationIpResponse) + +Success. Returns a JSON object as shown below. Refer `DeleteOrganizationIpResponse` for more details. + + + + +
+  Examples: + + +
+  DeleteIpResponseExample + +```json +{ + "value": { + "message": "The request has been processed successfully.", + "data": { + "message": "123.123.112.1 deleted" + }, + "meta": { + "timestamp": "2024-10-16T12:19:42.959Z", + "version": "v1.0", + "product": "Settle Checkout" + } + } } ```
+
+ @@ -2198,6 +2532,86 @@ Success. Returns a JSON object as shown below. Refer `PaymentLinkResponse` for m +--- + + +### getOutStandingAmountDetails +Get user outstanding details. + + + + +```java +merchant.getOutStandingAmountDetails( entityMapId, lenderSlugs) { + //use response +} +``` + + + +| Argument | Type | Required | Description | +| --------- | ----- | -------- | ----------- | +| organizationId | String | yes | This is organizationId | +| entityMapId | String | yes | This is entityMapId | +| lenderSlugs | List? | no | This list of lender slugs. eg. ['cashe','liquiloans'] | + + + +This api is for getting outstanding details for the user with all the lenders. + +*Returned Response:* + + + + +[OutstandingDetailsResponse](#OutstandingDetailsResponse) + +Success. Returns a JSON object as shown below. Refer `PaymentLinkResponse` for more details. + + + + +
+  Examples: + + +
+  default + +```json +{ + "outstandingDetails": [ + { + "lenderDetails": { + "slug": "cashe", + "id": "f162ae3e-cc7c-4b96-85d1-19c3e0f7e780", + "name": "Bhanix", + "theme": { + "logoUrl": "", + "iconUrl": "" + } + }, + "availableLimit": 40000, + "crediLimit": 40000, + "dueAmount": 0, + "outstandingAmount": 0, + "dueDate": null + } + ] +} +``` +
+ +
+ + + + + + + + + --- @@ -2979,28 +3393,304 @@ Success. Returns a JSON object as shown below. Refer `PaymentLinkResponse` for m - #### [UpdateApiHook](#UpdateApiHook) + #### [WebHookEvent](#WebHookEvent) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | apiKey | String | no | | - | url | String | no | | - | customHeaders | HashMap? | yes | | + | id | String? | yes | | + | name | String? | yes | | + | slug | String? | yes | | + | description | String? | yes | | + | active | Boolean? | yes | | + | meta | HashMap? | yes | | + | webhookCategoryId | String? | yes | | + | webhookCategorySlug | String? | yes | | + | isWebhookCategoryActive | Boolean? | yes | | + | createdAt | String? | yes | | + | updatedAt | String? | yes | | + | deletedAt | String? | yes | | --- - #### [ApiHookDetails](#ApiHookDetails) + #### [WebhookCatgeory](#WebhookCatgeory) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | apiKey | String | no | | - | url | String | no | | + | id | String? | yes | | + | name | String? | yes | | + | slug | String? | yes | | + | description | String? | yes | | + | active | Boolean? | yes | | + | meta | HashMap? | yes | | + | createdAt | String? | yes | | + | updatedAt | String? | yes | | + | webhookEvents | ArrayList<[WebHookEvent](#WebHookEvent)>? | yes | | + +--- + + + + + #### [WebhookPage](#WebhookPage) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | type | String? | yes | The type of pagination being used (e.g., 'page'). | + | current | Double? | yes | The current page number being displayed. | + | hasPrevious | Boolean? | yes | Indicates if there are pages available before the current page. | + | hasNext | Boolean? | yes | Indicates if there are more pages available after the current page. | + | size | Double? | yes | The number of items per page. | + | itemTotal | Double? | yes | The total number of items available. | + +--- + + + + + #### [WebhookCategoryFilterKeys](#WebhookCategoryFilterKeys) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | display | String? | yes | | + | name | String? | yes | | + | kind | String? | yes | | + +--- + + + + + #### [WebhookCategoryFilterValues](#WebhookCategoryFilterValues) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | display | String? | yes | | + | isSelected | Boolean? | yes | | + | value | String? | yes | | + +--- + + + + + #### [WebhookCategoryFilters](#WebhookCategoryFilters) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | key | [WebhookCategoryFilterKeys](#WebhookCategoryFilterKeys)? | yes | | + | values | ArrayList<[WebhookCategoryFilterValues](#WebhookCategoryFilterValues)>? | yes | | + +--- + + + + + #### [WebhookCategories](#WebhookCategories) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | allCategories | ArrayList<[WebhookCatgeory](#WebhookCatgeory)>? | yes | | + | page | [WebhookPage](#WebhookPage)? | yes | | + | filters | ArrayList<[WebhookCategoryFilters](#WebhookCategoryFilters)>? | yes | | + +--- + + + + + #### [WebhookCategoriesResponse](#WebhookCategoriesResponse) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | message | String | no | Response message indicating the result of the operation. | + | meta | [IntegrationResponseMeta](#IntegrationResponseMeta) | no | | + | data | [WebhookCategories](#WebhookCategories) | no | | + | headers | HashMap? | yes | | + +--- + + + + + #### [DeleteWebhookEventData](#DeleteWebhookEventData) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | id | String | no | | + +--- + + + + + #### [UpdateWebhookCategoryEvent](#UpdateWebhookCategoryEvent) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | id | String? | yes | | + | name | String | no | | + | slug | String | no | | + | description | String? | yes | | + | active | Boolean | no | | + | meta | HashMap? | yes | | + +--- + + + + + #### [UpdateWebhookCategory](#UpdateWebhookCategory) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | id | String? | yes | | + | name | String | no | | + | slug | String | no | | + | description | String? | yes | | + | active | Boolean | no | | + | meta | HashMap? | yes | | + | eventList | ArrayList<[UpdateWebhookCategoryEvent](#UpdateWebhookCategoryEvent)>? | yes | | + | deletedEventList | ArrayList<[DeleteWebhookEventData](#DeleteWebhookEventData)>? | yes | | + +--- + + + + + #### [UpdateWebhookCategoryResponse](#UpdateWebhookCategoryResponse) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | id | String? | yes | | + | name | String? | yes | | + | slug | String? | yes | | + | description | String? | yes | | + | active | Boolean? | yes | | + | meta | HashMap? | yes | | + | createdAt | String? | yes | | + | updatedAt | String? | yes | | + | updatedEventList | ArrayList<[WebHookEvent](#WebHookEvent)>? | yes | | + +--- + + + + + #### [DeleteWebhookCatgeory](#DeleteWebhookCatgeory) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | success | Boolean? | yes | | + +--- + + + + + #### [WebHookSubscriptionEvent](#WebHookSubscriptionEvent) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | id | String? | yes | | + | webhookEventId | String | no | | + | meta | HashMap? | yes | | + +--- + + + + + #### [WebhookList](#WebhookList) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | id | String? | yes | | + | url | String | no | | + | customHeaders | HashMap? | yes | | + | alertEmail | String? | yes | | + | active | Boolean | no | | + | meta | HashMap? | yes | | + | webHookSubscriptionEvents | ArrayList<[WebHookSubscriptionEvent](#WebHookSubscriptionEvent)> | no | | + +--- + + + + + #### [UpdateApiHook](#UpdateApiHook) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | webhookList | ArrayList<[WebhookList](#WebhookList)> | no | | + | removedWebhookIdList | ArrayList? | yes | | + +--- + + + + + #### [OrganizationWebhookEventItem](#OrganizationWebhookEventItem) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | id | String? | yes | | + | organizationApiHookDetailsId | String? | yes | | + | webhookCategoryId | String? | yes | | + | webhookCategorySlug | String? | yes | | + | isWebhookCategoryActive | Boolean? | yes | | + | webhookEventId | String? | yes | | + | webhookEventSlug | String? | yes | | + | isWebhookEventActive | Boolean? | yes | | + | meta | HashMap? | yes | | + | createdAt | String? | yes | | + | updatedAt | String? | yes | | + +--- + + + + + #### [ApiHookDetailsItem](#ApiHookDetailsItem) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | id | String? | yes | | + | organizationId | String? | yes | | + | url | String? | yes | | | customHeaders | HashMap? | yes | | + | meta | HashMap? | yes | | + | alertEmail | String? | yes | | + | active | Boolean? | yes | | | createdAt | String? | yes | | | updatedAt | String? | yes | | + | organizationWebhookEvents | ArrayList<[OrganizationWebhookEventItem](#OrganizationWebhookEventItem)>? | yes | | + +--- + + + + + #### [ApiHookDetailsData](#ApiHookDetailsData) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | apiHookData | ArrayList<[ApiHookDetailsItem](#ApiHookDetailsItem)>? | yes | | + +--- + + + + + #### [ApiHookDetailsResponse](#ApiHookDetailsResponse) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | message | String | no | Response message indicating the result of the operation. | + | meta | [IntegrationResponseMeta](#IntegrationResponseMeta) | no | | + | data | [ApiHookDetailsData](#ApiHookDetailsData) | no | | | headers | HashMap? | yes | | --- @@ -3008,11 +3698,24 @@ Success. Returns a JSON object as shown below. Refer `PaymentLinkResponse` for m - #### [UpdateApiHookResponse](#UpdateApiHookResponse) + #### [UpdateApiHookResponseData](#UpdateApiHookResponseData) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | | success | Boolean? | yes | | + +--- + + + + + #### [UpdateApiHookResponse](#UpdateApiHookResponse) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | message | String | no | Response message indicating the result of the operation. | + | meta | [IntegrationResponseMeta](#IntegrationResponseMeta) | no | | + | data | [UpdateApiHookResponseData](#UpdateApiHookResponseData) | no | | | headers | HashMap? | yes | | --- @@ -3026,6 +3729,7 @@ Success. Returns a JSON object as shown below. Refer `PaymentLinkResponse` for m | ---------- | ---- | -------- | ----------- | | id | String? | yes | | | ip | String | no | | + | description | String? | yes | | --- @@ -3037,7 +3741,17 @@ Success. Returns a JSON object as shown below. Refer `PaymentLinkResponse` for m | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | | organizationIps | ArrayList<[OrganizationIp](#OrganizationIp)>? | yes | | - | delete | String? | yes | | + +--- + + + + + #### [DeleteOrganizationIpDetails](#DeleteOrganizationIpDetails) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | deleteIp | String | no | | --- @@ -3287,22 +4001,61 @@ Success. Returns a JSON object as shown below. Refer `PaymentLinkResponse` for m | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | + | id | String | no | | | organizationId | String | no | | | ip | String | no | | + | description | String? | yes | | | createdAt | String? | yes | | | updatedAt | String? | yes | | - | id | String | no | | --- - #### [OrganizationIpDetails](#OrganizationIpDetails) + #### [OrganizationIpData](#OrganizationIpData) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | - | organizationIps | ArrayList<[OrganizationIpResponse](#OrganizationIpResponse)>? | yes | | + | organizationIps | ArrayList<[OrganizationIpResponse](#OrganizationIpResponse)> | no | | + +--- + + + + + #### [OrganizationIpDetailsResponse](#OrganizationIpDetailsResponse) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | message | String | no | Response message indicating the result of the operation. | + | meta | [IntegrationResponseMeta](#IntegrationResponseMeta) | no | | + | data | [OrganizationIpData](#OrganizationIpData) | no | | + | headers | HashMap? | yes | | + +--- + + + + + #### [DeleteOrganizationIpData](#DeleteOrganizationIpData) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | message | String | no | | + +--- + + + + + #### [DeleteOrganizationIpResponse](#DeleteOrganizationIpResponse) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | message | String | no | Response message indicating the result of the operation. | + | meta | [IntegrationResponseMeta](#IntegrationResponseMeta) | no | | + | data | [DeleteOrganizationIpData](#DeleteOrganizationIpData) | no | | | headers | HashMap? | yes | | --- diff --git a/documentation/public/MULTIKYC.md b/documentation/public/MULTIKYC.md index 976b8a6..2346ea0 100644 --- a/documentation/public/MULTIKYC.md +++ b/documentation/public/MULTIKYC.md @@ -317,7 +317,7 @@ multikyc.getUserKycDetails( enitityMap, entityId) { -[CustomerKycDetailsReponse](#CustomerKycDetailsReponse) +[CustomerKycDetailsResponse](#CustomerKycDetailsResponse) @@ -464,7 +464,7 @@ multikyc.createPixelbinSignedUrl( documentName, purpose, extention) { | action | String? | yes | | | form | Object? | yes | | | uiSchema | Object? | yes | | - | workflowId | String? | yes | | + | validationWorkflow | String? | yes | | --- @@ -492,7 +492,11 @@ multikyc.createPixelbinSignedUrl( documentName, purpose, extention) { | formId | String? | yes | | | merchantId | String? | yes | | | form | [Form](#Form) | no | | - | docSchema | Object | no | | + | docSchema | Object? | yes | | + | isOptional | Boolean? | yes | | + | isInternal | Boolean? | yes | | + | optionalWorkflow | String? | yes | | + | internalWorkflow | String? | yes | | --- @@ -633,6 +637,7 @@ multikyc.createPixelbinSignedUrl( documentName, purpose, extention) { | creditType | String? | yes | | | userId | String | no | | | entityId | String | no | | + | isDefault | Boolean? | yes | | --- @@ -645,7 +650,6 @@ multikyc.createPixelbinSignedUrl( documentName, purpose, extention) { | ---------- | ---- | -------- | ----------- | | id | String | no | | | type | String? | yes | | - | address | String? | yes | | | name | String? | yes | | | gender | String? | yes | | | dob | String? | yes | | @@ -671,7 +675,6 @@ multikyc.createPixelbinSignedUrl( documentName, purpose, extention) { | disbursementIfsc | String? | yes | | | createdBy | String? | yes | | | active | Boolean? | yes | | - | category | String? | yes | | | createdAt | String? | yes | | | updatedAt | String? | yes | | | deletedAt | String? | yes | | @@ -1480,6 +1483,18 @@ multikyc.createPixelbinSignedUrl( documentName, purpose, extention) { + #### [CreateUserLenderAssociationRequest](#CreateUserLenderAssociationRequest) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | organizationId | String | no | | + | role | String | no | | + +--- + + + + #### [FindDocResponse](#FindDocResponse) | Properties | Type | Nullable | Description | @@ -1615,6 +1630,7 @@ multikyc.createPixelbinSignedUrl( documentName, purpose, extention) { | includeStatus | ArrayList? | yes | | | excludeStatus | ArrayList? | yes | | | allowDisabledLender | Object? | yes | | + | merchantIds | ArrayList? | yes | | --- @@ -1792,6 +1808,12 @@ multikyc.createPixelbinSignedUrl( documentName, purpose, extention) { | iconUrl | String? | yes | | | isInteractive | Boolean | no | | | schema | Object? | yes | | + | meta | Object? | yes | | + | display | Object? | yes | | + | isOptional | Boolean? | yes | | + | optionalWorkflow | String? | yes | | + | isInternal | Boolean? | yes | | + | internalWorkflow | String? | yes | | --- @@ -2392,6 +2414,9 @@ multikyc.createPixelbinSignedUrl( documentName, purpose, extention) { | slug | String | no | | | isDefault | Boolean | no | | | logoUrl | String | no | | + | lenderLogo | String? | yes | | + | merchantLogo | String? | yes | | + | merchantId | String? | yes | | --- @@ -2645,7 +2670,7 @@ multikyc.createPixelbinSignedUrl( documentName, purpose, extention) { - #### [KycDetailsReponse](#KycDetailsReponse) + #### [KycDetailsResponse](#KycDetailsResponse) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | @@ -2796,7 +2821,7 @@ multikyc.createPixelbinSignedUrl( documentName, purpose, extention) { - #### [CustomerKycDetailsReponse](#CustomerKycDetailsReponse) + #### [CustomerKycDetailsResponse](#CustomerKycDetailsResponse) | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | diff --git a/documentation/public/TRANSACTION.md b/documentation/public/TRANSACTION.md index 8961339..2a6ac55 100644 --- a/documentation/public/TRANSACTION.md +++ b/documentation/public/TRANSACTION.md @@ -109,7 +109,7 @@ transaction.getAllTransactionsCSV( status, type, id, orderId, startDate, en | Argument | Type | Required | Description | | --------- | ----- | -------- | ----------- | -| status | Double? | no | This is page number | +| status | List? | no | This is transaction status | | type | List? | no | This is transaction type | | organizationId | String | yes | This is the organization ID | | id | String? | no | This is the search term | @@ -1974,4 +1974,45 @@ Success. Returns a JSON object as shown below. Refer `UniqueCustomersInOrg` for --- + + + #### [SplitTransactionRequest](#SplitTransactionRequest) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | token | String | no | It contains all the mercahant and order details. | + | emiTenure | Double | no | This will contain the EMI tenure | + +--- + + + + + #### [TransactionInSplitTransactionResponse](#TransactionInSplitTransactionResponse) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | id | String? | yes | | + | amount | Double? | yes | | + | status | String? | yes | | + | type | String? | yes | | + | subtype | String? | yes | | + +--- + + + + + #### [SplitTransactionResponse](#SplitTransactionResponse) + + | Properties | Type | Nullable | Description | + | ---------- | ---- | -------- | ----------- | + | parentTransaction | [TransactionInSplitTransactionResponse](#TransactionInSplitTransactionResponse)? | yes | | + | loanTransaction | [TransactionInSplitTransactionResponse](#TransactionInSplitTransactionResponse)? | yes | | + | downpaymentTransaction | [TransactionInSplitTransactionResponse](#TransactionInSplitTransactionResponse)? | yes | | + | lenderDownpaymentTransaction | [TransactionInSplitTransactionResponse](#TransactionInSplitTransactionResponse)? | yes | | + +--- + + diff --git a/documentation/public/USER.md b/documentation/public/USER.md index c34d30e..f316f74 100644 --- a/documentation/public/USER.md +++ b/documentation/public/USER.md @@ -963,6 +963,7 @@ Success. Returns a JSON object as shown below. Refer `UserResponse` for more det | Properties | Type | Nullable | Description | | ---------- | ---- | -------- | ----------- | | token | String | no | | + | type | String? | yes | | --- @@ -2404,6 +2405,7 @@ Success. Returns a JSON object as shown below. Refer `UserResponse` for more det | device | [Device](#Device) | no | | | meta | HashMap? | yes | | | fetchLimitOptions | Boolean? | yes | | + | callbackUrl | String? | yes | | --- diff --git a/pom.xml b/pom.xml index cfd6238..14f56d9 100644 --- a/pom.xml +++ b/pom.xml @@ -4,23 +4,30 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 - com.github.gofynd - fynd-client-java - 1.0-SNAPSHOT + com.github.settle-finance + java-integration-sdk + 1.0.3 + + + 1.8 + 1.8 + UTF-8 + org.springframework.boot spring-boot-starter-parent - 3.2.3 + 2.7.18 org.apache.maven.plugins maven-compiler-plugin + 2.5.1 - 21 - 21 + 1.8 + 1.8 @@ -30,7 +37,7 @@ com.squareup.retrofit2 retrofit - 2.3.0 + 2.11.0 @@ -52,9 +59,9 @@ - org.projectlombok - lombok - 1.18.30 + org.projectlombok + lombok + 1.18.30 @@ -84,16 +91,16 @@ - com.github.mrmike - ok2curl - 0.7.0 - + com.github.mrmike + ok2curl + 0.7.0 + com.fasterxml.jackson.core jackson-databind - + \ No newline at end of file diff --git a/src/main/java/com/sdk/common/RequestSigner.java b/src/main/java/com/sdk/common/RequestSigner.java index caf4de9..f73c32e 100644 --- a/src/main/java/com/sdk/common/RequestSigner.java +++ b/src/main/java/com/sdk/common/RequestSigner.java @@ -9,7 +9,7 @@ import org.springframework.util.ObjectUtils; import org.springframework.web.client.HttpClientErrorException; import org.springframework.web.client.HttpServerErrorException; - +import java.io.UnsupportedEncodingException; import javax.crypto.Mac; import javax.crypto.spec.SecretKeySpec; import java.io.IOException; @@ -23,7 +23,9 @@ import java.util.concurrent.atomic.AtomicReference; import java.util.regex.Matcher; import java.util.regex.Pattern; +import lombok.extern.slf4j.Slf4j; +@Slf4j public class RequestSigner { private Request request; @@ -31,10 +33,10 @@ public class RequestSigner { private String nowDateTime; private boolean signQuery; - static final List HEADERS_TO_IGNORE = List.of("authorization", "connection", "x-amzn-trace-id", + static final List HEADERS_TO_IGNORE = Arrays.asList("authorization", "connection", "x-amzn-trace-id", "user-agent", "expect", "presigned-expires", "range"); - static final List HEADERS_TO_INCLUDE = List.of("x-ptl-.*", "host"); + static final List HEADERS_TO_INCLUDE = Arrays.asList("x-ptl-.*", "host"); public RequestSigner(Request request) { this.request = request; @@ -169,10 +171,14 @@ private String canonicalPath() { return encodedPathPieces.toString(); } - private void addQueryParam(String encodedQueryName, StringBuilder encodedQueryPieces) { - updatedReq.url().queryParameterValues(URLDecoder.decode(encodedQueryName, StandardCharsets.UTF_8)).stream() - .sorted().forEach(queryValue -> includeQueryValue(queryValue, encodedQueryName, encodedQueryPieces)); - } + private void addQueryParam(String encodedQueryName, StringBuilder encodedQueryPieces) { + try { + updatedReq.url().queryParameterValues(URLDecoder.decode(encodedQueryName, StandardCharsets.UTF_8.name())).stream() + .sorted().forEach(queryValue -> includeQueryValue(queryValue, encodedQueryName, encodedQueryPieces)); + } catch (UnsupportedEncodingException e) { + log.error("Exception in adding query param", e); + } + } private void includeQueryValue(String queryValue, String encodedQueryName, StringBuilder encodedQueryPieces) { String query = encodedQueryName + "=" + queryValue; @@ -184,8 +190,14 @@ private void includeQueryValue(String queryValue, String encodedQueryName, Strin } private String encode(String parameter) { - return URLEncoder.encode(parameter, StandardCharsets.UTF_8); - } + try { + return URLEncoder.encode(parameter, StandardCharsets.UTF_8.name()); + } catch (UnsupportedEncodingException e) { + // Log the exception if needed + log.error("Error in encoding", e); + return ""; // Return an empty string in case of an exception + } + } private void addHeaderValues(String headerName, StringBuilder canonicalHeader) { updatedReq.headers().values(headerName).forEach(headerValue -> { diff --git a/src/main/java/com/sdk/platform/PlatformApiList.java b/src/main/java/com/sdk/platform/PlatformApiList.java index 5a36ff4..2a7c465 100644 --- a/src/main/java/com/sdk/platform/PlatformApiList.java +++ b/src/main/java/com/sdk/platform/PlatformApiList.java @@ -274,6 +274,72 @@ interface MerchantApiList { @POST ("/service/integration/staff/authentication/oauth/{organizationId}/validate-credentials") Call validateCredentials(@Path("organizationId") String organizationId ); + + + + + + + @POST ("/service/integration/staff/organization/{organizationId}/api-hook") + Call updateWebhook(@Path("organizationId") String organizationId ,@Body PlatformModels.UpdateApiHook payload); + + + + + + + + @GET ("/service/integration/staff/organization/{organizationId}/api-hook") + Call getWebhook(@Path("organizationId") String organizationId ); + + + + + + + + + + + + + + + + + + + + @GET ("/service/integration/staff/organization/{organizationId}/webhook-category-events") + Call getAllWebhookCategoriesAndEvents(@Path("organizationId") String organizationId , @Query("size") Double size , @Query("page") Double page , @Query("name") String name , @Query("slug") List slug ); + + + + + + + + @GET ("/service/integration/staff/organization/{organizationId}/ip") + Call getWhitelistedIp(@Path("organizationId") String organizationId ); + + + + + + + + @PUT ("/service/integration/staff/organization/{organizationId}/ip") + Call whitelistIp(@Path("organizationId") String organizationId ,@Body PlatformModels.AddOrganizationIpDetails payload); + + + + + + + + @DELETE ("/service/integration/staff/organization/{organizationId}/ip") + Call removeWhitelistedIp(@Path("organizationId") String organizationId ,@Body PlatformModels.DeleteOrganizationIpDetails payload); + } interface PaymentsApiList { diff --git a/src/main/java/com/sdk/platform/PlatformModels.java b/src/main/java/com/sdk/platform/PlatformModels.java index 678323e..915e582 100644 --- a/src/main/java/com/sdk/platform/PlatformModels.java +++ b/src/main/java/com/sdk/platform/PlatformModels.java @@ -2344,6 +2344,12 @@ public static class GetDataFromToken { + @JsonProperty("type") + private String type; + + + + } /* @@ -6592,6 +6598,12 @@ public static class CheckEligibilityRequest { + @JsonProperty("callbackUrl") + private String callbackUrl; + + + + } /* @@ -11092,6 +11104,123 @@ public static class UpdateTransactionResponse { +} + +/* + Model: SplitTransactionRequest +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class SplitTransactionRequest { + + + + + @JsonProperty("token") + private String token; + + + + + @JsonProperty("emiTenure") + private Double emiTenure; + + + + +} + +/* + Model: TransactionInSplitTransactionResponse +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class TransactionInSplitTransactionResponse { + + + + + @JsonProperty("id") + private String id; + + + + + @JsonProperty("amount") + private Double amount; + + + + + @JsonProperty("status") + private String status; + + + + + @JsonProperty("type") + private String type; + + + + + @JsonProperty("subtype") + private String subtype; + + + + +} + +/* + Model: SplitTransactionResponse +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class SplitTransactionResponse { + + + + + @JsonProperty("parentTransaction") + private TransactionInSplitTransactionResponse parentTransaction; + + + + + @JsonProperty("loanTransaction") + private TransactionInSplitTransactionResponse loanTransaction; + + + + + @JsonProperty("downpaymentTransaction") + private TransactionInSplitTransactionResponse downpaymentTransaction; + + + + + @JsonProperty("lenderDownpaymentTransaction") + private TransactionInSplitTransactionResponse lenderDownpaymentTransaction; + + + + } @@ -11593,8 +11722,8 @@ public static class Form { - @JsonProperty("workflowId") - private String workflowId; + @JsonProperty("validationWorkflow") + private String validationWorkflow; @@ -11724,6 +11853,30 @@ public static class LenderKycStepMap { + @JsonProperty("isOptional") + private Boolean isOptional; + + + + + @JsonProperty("isInternal") + private Boolean isInternal; + + + + + @JsonProperty("optionalWorkflow") + private String optionalWorkflow; + + + + + @JsonProperty("internalWorkflow") + private String internalWorkflow; + + + + } /* @@ -12103,6 +12256,12 @@ public static class EntityMapDto { + @JsonProperty("isDefault") + private Boolean isDefault; + + + + } /* @@ -12132,12 +12291,6 @@ public static class EntityDto { - @JsonProperty("address") - private String address; - - - - @JsonProperty("name") private String name; @@ -12245,12 +12398,6 @@ public static class MerchantSchema { - @JsonProperty("category") - private String category; - - - - @JsonProperty("createdAt") private String createdAt; @@ -14465,6 +14612,35 @@ public static class KycCountByStatus { +} + +/* + Model: CreateUserLenderAssociationRequest +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class CreateUserLenderAssociationRequest { + + + + + @JsonProperty("organizationId") + private String organizationId; + + + + + @JsonProperty("role") + private String role; + + + + } /* @@ -14924,6 +15100,12 @@ public static class LenderFilters { + @JsonProperty("merchantIds") + private List merchantIds; + + + + } /* @@ -15513,6 +15695,42 @@ public static class LenderState { + @JsonProperty("meta") + private Object meta; + + + + + @JsonProperty("display") + private Object display; + + + + + @JsonProperty("isOptional") + private Boolean isOptional; + + + + + @JsonProperty("optionalWorkflow") + private String optionalWorkflow; + + + + + @JsonProperty("isInternal") + private Boolean isInternal; + + + + + @JsonProperty("internalWorkflow") + private String internalWorkflow; + + + + } /* @@ -17224,6 +17442,24 @@ public static class IntgrAvailableCreditLimit { + @JsonProperty("lenderLogo") + private String lenderLogo; + + + + + @JsonProperty("merchantLogo") + private String merchantLogo; + + + + + @JsonProperty("merchantId") + private String merchantId; + + + + } /* @@ -17831,7 +18067,7 @@ public static class CreditReportResponse { } /* - Model: KycDetailsReponse + Model: KycDetailsResponse */ @AllArgsConstructor @NoArgsConstructor @@ -17840,7 +18076,7 @@ public static class CreditReportResponse { @Setter @JsonIgnoreProperties(ignoreUnknown = true) @JsonInclude(JsonInclude.Include.NON_NULL) -public static class KycDetailsReponse { +public static class KycDetailsResponse { @@ -18221,7 +18457,7 @@ public static class ManualKycResponse { } /* - Model: CustomerKycDetailsReponse + Model: CustomerKycDetailsResponse */ @AllArgsConstructor @NoArgsConstructor @@ -18230,7 +18466,7 @@ public static class ManualKycResponse { @Setter @JsonIgnoreProperties(ignoreUnknown = true) @JsonInclude(JsonInclude.Include.NON_NULL) -public static class CustomerKycDetailsReponse { +public static class CustomerKycDetailsResponse { @@ -20087,7 +20323,7 @@ public static class ApiKey { } /* - Model: UpdateApiHook + Model: WebHookEvent */ @AllArgsConstructor @NoArgsConstructor @@ -20096,72 +20332,948 @@ public static class ApiKey { @Setter @JsonIgnoreProperties(ignoreUnknown = true) @JsonInclude(JsonInclude.Include.NON_NULL) -public static class UpdateApiHook { +public static class WebHookEvent { - @JsonProperty("apiKey") - private String apiKey; + @JsonProperty("id") + private String id; - @JsonProperty("url") - private String url; + @JsonProperty("name") + private String name; - @JsonProperty("customHeaders") - private Object customHeaders; + @JsonProperty("slug") + private String slug; -} - -/* - Model: ApiHookDetails -*/ -@AllArgsConstructor -@NoArgsConstructor -@Builder -@Getter -@Setter -@JsonIgnoreProperties(ignoreUnknown = true) -@JsonInclude(JsonInclude.Include.NON_NULL) -public static class ApiHookDetails { + @JsonProperty("description") + private String description; - @JsonProperty("apiKey") - private String apiKey; + @JsonProperty("active") + private Boolean active; - @JsonProperty("url") - private String url; + @JsonProperty("meta") + private Object meta; + + + + + @JsonProperty("webhookCategoryId") + private String webhookCategoryId; + + + + + @JsonProperty("webhookCategorySlug") + private String webhookCategorySlug; + + + + + @JsonProperty("isWebhookCategoryActive") + private Boolean isWebhookCategoryActive; + + + + + @JsonProperty("createdAt") + private String createdAt; + + + + + @JsonProperty("updatedAt") + private String updatedAt; + + + + + @JsonProperty("deletedAt") + private String deletedAt; + + + + +} + +/* + Model: WebhookCatgeory +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class WebhookCatgeory { + + + + + @JsonProperty("id") + private String id; + + + + + @JsonProperty("name") + private String name; + + + + + @JsonProperty("slug") + private String slug; + + + + + @JsonProperty("description") + private String description; + + + + + @JsonProperty("active") + private Boolean active; + + + + + @JsonProperty("meta") + private Object meta; + + + + + @JsonProperty("createdAt") + private String createdAt; + + + + + @JsonProperty("updatedAt") + private String updatedAt; + + + + + @JsonProperty("webhookEvents") + private List webhookEvents; + + + + +} + +/* + Model: WebhookPage +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class WebhookPage { + + + + + @JsonProperty("type") + private String type; + + + + + @JsonProperty("current") + private Double current; + + + + + @JsonProperty("hasPrevious") + private Boolean hasPrevious; + + + + + @JsonProperty("hasNext") + private Boolean hasNext; + + + + + @JsonProperty("size") + private Double size; + + + + + @JsonProperty("itemTotal") + private Double itemTotal; + + + + +} + +/* + Model: WebhookCategoryFilterKeys +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class WebhookCategoryFilterKeys { + + + + + @JsonProperty("display") + private String display; + + + + + @JsonProperty("name") + private String name; + + + + + @JsonProperty("kind") + private String kind; + + + + +} + +/* + Model: WebhookCategoryFilterValues +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class WebhookCategoryFilterValues { + + + + + @JsonProperty("display") + private String display; + + + + + @JsonProperty("isSelected") + private Boolean isSelected; + + + + + @JsonProperty("value") + private String value; + + + + +} + +/* + Model: WebhookCategoryFilters +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class WebhookCategoryFilters { + + + + + @JsonProperty("key") + private WebhookCategoryFilterKeys key; + + + + + @JsonProperty("values") + private List values; + + + + +} + +/* + Model: WebhookCategories +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class WebhookCategories { + + + + + @JsonProperty("allCategories") + private List allCategories; + + + + + @JsonProperty("page") + private WebhookPage page; + + + + + @JsonProperty("filters") + private List filters; + + + + +} + +/* + Model: WebhookCategoriesResponse +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class WebhookCategoriesResponse { + + + + + @JsonProperty("message") + private String message; + + + + + @JsonProperty("meta") + private IntegrationResponseMeta meta; + + + + + @JsonProperty("data") + private WebhookCategories data; + + + + +} + +/* + Model: DeleteWebhookEventData +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class DeleteWebhookEventData { + + + + + @JsonProperty("id") + private String id; + + + + +} + +/* + Model: UpdateWebhookCategoryEvent +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class UpdateWebhookCategoryEvent { + + + + + @JsonProperty("id") + private String id; + + + + + @JsonProperty("name") + private String name; + + + + + @JsonProperty("slug") + private String slug; + + + + + @JsonProperty("description") + private String description; + + + + + @JsonProperty("active") + private Boolean active; + + + + + @JsonProperty("meta") + private Object meta; + + + + +} + +/* + Model: UpdateWebhookCategory +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class UpdateWebhookCategory { + + + + + @JsonProperty("id") + private String id; + + + + + @JsonProperty("name") + private String name; + + + + + @JsonProperty("slug") + private String slug; + + + + + @JsonProperty("description") + private String description; + + + + + @JsonProperty("active") + private Boolean active; + + + + + @JsonProperty("meta") + private Object meta; + + + + + @JsonProperty("eventList") + private List eventList; + + + + + @JsonProperty("deletedEventList") + private List deletedEventList; + + + + +} + +/* + Model: UpdateWebhookCategoryResponse +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class UpdateWebhookCategoryResponse { + + + + + @JsonProperty("id") + private String id; + + + + + @JsonProperty("name") + private String name; + + + + + @JsonProperty("slug") + private String slug; + + + + + @JsonProperty("description") + private String description; + + + + + @JsonProperty("active") + private Boolean active; + + + + + @JsonProperty("meta") + private Object meta; + + + + + @JsonProperty("createdAt") + private String createdAt; + + + + + @JsonProperty("updatedAt") + private String updatedAt; + + + + + @JsonProperty("updatedEventList") + private List updatedEventList; + + + + +} + +/* + Model: DeleteWebhookCatgeory +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class DeleteWebhookCatgeory { + + + + + @JsonProperty("success") + private Boolean success; + + + + +} + +/* + Model: WebHookSubscriptionEvent +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class WebHookSubscriptionEvent { + + + + + @JsonProperty("id") + private String id; + + + + + @JsonProperty("webhookEventId") + private String webhookEventId; + + + + + @JsonProperty("meta") + private Object meta; + + + + +} + +/* + Model: WebhookList +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class WebhookList { + + + + + @JsonProperty("id") + private String id; + + + + + @JsonProperty("url") + private String url; + + + + + @JsonProperty("customHeaders") + private Object customHeaders; + + + + + @JsonProperty("alertEmail") + private String alertEmail; + + + + + @JsonProperty("active") + private Boolean active; + + + + + @JsonProperty("meta") + private Object meta; + + + + + @JsonProperty("webHookSubscriptionEvents") + private List webHookSubscriptionEvents; + + + + +} + +/* + Model: UpdateApiHook +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class UpdateApiHook { + + + + + @JsonProperty("webhookList") + private List webhookList; + + + + + @JsonProperty("removedWebhookIdList") + private List removedWebhookIdList; + + + + +} + +/* + Model: OrganizationWebhookEventItem +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class OrganizationWebhookEventItem { + + + + + @JsonProperty("id") + private String id; + + + + + @JsonProperty("organizationApiHookDetailsId") + private String organizationApiHookDetailsId; + + + + + @JsonProperty("webhookCategoryId") + private String webhookCategoryId; + + + + + @JsonProperty("webhookCategorySlug") + private String webhookCategorySlug; + + + + + @JsonProperty("isWebhookCategoryActive") + private Boolean isWebhookCategoryActive; + + + + + @JsonProperty("webhookEventId") + private String webhookEventId; + + + + + @JsonProperty("webhookEventSlug") + private String webhookEventSlug; + + + + + @JsonProperty("isWebhookEventActive") + private Boolean isWebhookEventActive; + + + + + @JsonProperty("meta") + private Object meta; + + + + + @JsonProperty("createdAt") + private String createdAt; + + + + + @JsonProperty("updatedAt") + private String updatedAt; + + + + +} + +/* + Model: ApiHookDetailsItem +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class ApiHookDetailsItem { + + + + + @JsonProperty("id") + private String id; + + + + + @JsonProperty("organizationId") + private String organizationId; + + + + + @JsonProperty("url") + private String url; + + + + + @JsonProperty("customHeaders") + private Object customHeaders; + + + + + @JsonProperty("meta") + private Object meta; + + + + + @JsonProperty("alertEmail") + private String alertEmail; + + + + + @JsonProperty("active") + private Boolean active; + + + + + @JsonProperty("createdAt") + private String createdAt; + + + + + @JsonProperty("updatedAt") + private String updatedAt; + + + + + @JsonProperty("organizationWebhookEvents") + private List organizationWebhookEvents; + + + + +} + +/* + Model: ApiHookDetailsData +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class ApiHookDetailsData { - @JsonProperty("customHeaders") - private Object customHeaders; + @JsonProperty("apiHookData") + private List apiHookData; - @JsonProperty("createdAt") - private String createdAt; +} + +/* + Model: ApiHookDetailsResponse +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class ApiHookDetailsResponse { - @JsonProperty("updatedAt") - private String updatedAt; + @JsonProperty("message") + private String message; + + + + + @JsonProperty("meta") + private IntegrationResponseMeta meta; + + + + + @JsonProperty("data") + private ApiHookDetailsData data; @@ -20169,7 +21281,7 @@ public static class ApiHookDetails { } /* - Model: UpdateApiHookResponse + Model: UpdateApiHookResponseData */ @AllArgsConstructor @NoArgsConstructor @@ -20178,7 +21290,7 @@ public static class ApiHookDetails { @Setter @JsonIgnoreProperties(ignoreUnknown = true) @JsonInclude(JsonInclude.Include.NON_NULL) -public static class UpdateApiHookResponse { +public static class UpdateApiHookResponseData { @@ -20189,6 +21301,41 @@ public static class UpdateApiHookResponse { +} + +/* + Model: UpdateApiHookResponse +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class UpdateApiHookResponse { + + + + + @JsonProperty("message") + private String message; + + + + + @JsonProperty("meta") + private IntegrationResponseMeta meta; + + + + + @JsonProperty("data") + private UpdateApiHookResponseData data; + + + + } /* @@ -20218,6 +21365,12 @@ public static class OrganizationIp { + @JsonProperty("description") + private String description; + + + + } /* @@ -20241,8 +21394,25 @@ public static class AddOrganizationIpDetails { - @JsonProperty("delete") - private String delete; +} + +/* + Model: DeleteOrganizationIpDetails +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class DeleteOrganizationIpDetails { + + + + + @JsonProperty("deleteIp") + private String deleteIp; @@ -20974,6 +22144,12 @@ public static class OrganizationIpResponse { + @JsonProperty("id") + private String id; + + + + @JsonProperty("organizationId") private String organizationId; @@ -20986,6 +22162,12 @@ public static class OrganizationIpResponse { + @JsonProperty("description") + private String description; + + + + @JsonProperty("createdAt") private String createdAt; @@ -20998,8 +22180,25 @@ public static class OrganizationIpResponse { - @JsonProperty("id") - private String id; +} + +/* + Model: OrganizationIpData +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class OrganizationIpData { + + + + + @JsonProperty("organizationIps") + private List organizationIps; @@ -21007,7 +22206,7 @@ public static class OrganizationIpResponse { } /* - Model: OrganizationIpDetails + Model: OrganizationIpDetailsResponse */ @AllArgsConstructor @NoArgsConstructor @@ -21016,13 +22215,83 @@ public static class OrganizationIpResponse { @Setter @JsonIgnoreProperties(ignoreUnknown = true) @JsonInclude(JsonInclude.Include.NON_NULL) -public static class OrganizationIpDetails { +public static class OrganizationIpDetailsResponse { - @JsonProperty("organizationIps") - private List organizationIps; + @JsonProperty("message") + private String message; + + + + + @JsonProperty("meta") + private IntegrationResponseMeta meta; + + + + + @JsonProperty("data") + private OrganizationIpData data; + + + + +} + +/* + Model: DeleteOrganizationIpData +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class DeleteOrganizationIpData { + + + + + @JsonProperty("message") + private String message; + + + + +} + +/* + Model: DeleteOrganizationIpResponse +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class DeleteOrganizationIpResponse { + + + + + @JsonProperty("message") + private String message; + + + + + @JsonProperty("meta") + private IntegrationResponseMeta meta; + + + + + @JsonProperty("data") + private DeleteOrganizationIpData data; @@ -21773,6 +23042,12 @@ public static class RepaymentUsingNetbanking { + @JsonProperty("entityMapId") + private String entityMapId; + + + + } /* @@ -21849,6 +23124,12 @@ public static class RepaymentUsingUPI { + @JsonProperty("entityMapId") + private String entityMapId; + + + + } /* @@ -22764,6 +24045,64 @@ public static class OutstandingDetailsData { +} + +/* + Model: VerifyUPIRequest +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class VerifyUPIRequest { + + + + + @JsonProperty("vpa") + private String vpa; + + + + + @JsonProperty("lenderSlug") + private String lenderSlug; + + + + +} + +/* + Model: UPIValidationSuccessResponse +*/ +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Getter +@Setter +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonInclude(JsonInclude.Include.NON_NULL) +public static class UPIValidationSuccessResponse { + + + + + @JsonProperty("status") + private String status; + + + + + @JsonProperty("name") + private String name; + + + + } diff --git a/src/main/java/com/sdk/platform/PlatformOauthClient.java b/src/main/java/com/sdk/platform/PlatformOauthClient.java index 6bc0d0b..8d25f99 100644 --- a/src/main/java/com/sdk/platform/PlatformOauthClient.java +++ b/src/main/java/com/sdk/platform/PlatformOauthClient.java @@ -114,7 +114,7 @@ public String getAuthorizationURL(List scope, String redirectUri, String + "&redirect_uri=" + redirectUri + "&state=" + state + "&access_mode=" + accessMode + "&response_type=code"; - var queryString = config.getDomain() + URI + config.getApiKey() + "/authorize?" + query; + String queryString = config.getDomain() + URI + config.getApiKey() + "/authorize?" + query; Request request = new Request.Builder().url(queryString) .get() .build(); diff --git a/src/main/java/com/sdk/platform/PlatformService.java b/src/main/java/com/sdk/platform/PlatformService.java index ca9b403..c78e26a 100644 --- a/src/main/java/com/sdk/platform/PlatformService.java +++ b/src/main/java/com/sdk/platform/PlatformService.java @@ -726,6 +726,148 @@ public PlatformModels.ValidateCredentialsResponse validateCredentials(String org + + + + + + + + + + + public PlatformModels.UpdateApiHookResponse updateWebhook(String organizationId ,PlatformModels.UpdateApiHook body) throws IOException { + Response response = merchantApiList.updateWebhook(organizationId , body).execute(); + if (!response.isSuccessful()) { + throw new IOException(response.errorBody() != null + ? response.errorBody().string() : Fields.UNKNOWN_ERROR); + } + return response.body(); + } + + + + + + + + + + + + + + public PlatformModels.ApiHookDetailsResponse getWebhook(String organizationId ) throws IOException { + Response response = merchantApiList.getWebhook(organizationId ).execute(); + if (!response.isSuccessful()) { + throw new IOException(response.errorBody() != null + ? response.errorBody().string() : Fields.UNKNOWN_ERROR); + } + return response.body(); + } + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + public PlatformModels.WebhookCategoriesResponse getAllWebhookCategoriesAndEvents(String organizationId , Double size , Double page , String name , List slug ) throws IOException { + Response response = merchantApiList.getAllWebhookCategoriesAndEvents(organizationId ,size , page , name , slug ).execute(); + if (!response.isSuccessful()) { + throw new IOException(response.errorBody() != null + ? response.errorBody().string() : Fields.UNKNOWN_ERROR); + } + return response.body(); + } + + + + + + + + + + + + + + public PlatformModels.OrganizationIpDetailsResponse getWhitelistedIp(String organizationId ) throws IOException { + Response response = merchantApiList.getWhitelistedIp(organizationId ).execute(); + if (!response.isSuccessful()) { + throw new IOException(response.errorBody() != null + ? response.errorBody().string() : Fields.UNKNOWN_ERROR); + } + return response.body(); + } + + + + + + + + + + + + + + public PlatformModels.OrganizationIpDetailsResponse whitelistIp(String organizationId ,PlatformModels.AddOrganizationIpDetails body) throws IOException { + Response response = merchantApiList.whitelistIp(organizationId , body).execute(); + if (!response.isSuccessful()) { + throw new IOException(response.errorBody() != null + ? response.errorBody().string() : Fields.UNKNOWN_ERROR); + } + return response.body(); + } + + + + + + + + + + + + + + public PlatformModels.DeleteOrganizationIpResponse removeWhitelistedIp(String organizationId ,PlatformModels.DeleteOrganizationIpDetails body) throws IOException { + Response response = merchantApiList.removeWhitelistedIp(organizationId , body).execute(); + if (!response.isSuccessful()) { + throw new IOException(response.errorBody() != null + ? response.errorBody().string() : Fields.UNKNOWN_ERROR); + } + return response.body(); + } + + + public class ApplicationClient { @@ -748,6 +890,18 @@ public class ApplicationClient { + + + + + + + + + + + + }