Skip to content

Latest commit

 

History

History
228 lines (189 loc) · 7.25 KB

webhook.md

File metadata and controls

228 lines (189 loc) · 7.25 KB

Webhook

Create a Webhook

String accountId = "acc_GP4lfNA0iIMn5B";

JSONObject webhookRequest = new JSONObject();
webhookRequest.put("url","https://google.com");
webhookRequest.put("alert_email","[email protected]");
webhookRequest.put("secret","12345");

ArrayList<String> events = new ArrayList<String>();
events.add("payment.authorized");
events.add("payment.failed");
events.add("payment.captured");
events.add("payment.dispute.created");
events.add("refund.failed");
events.add("refund.created");

webhookRequest.put("events",events);

Webhook webhook = instance.webhook.create(accountId, webhookRequest);

Parameters:

Name Type Description
accountId* string The unique identifier of a sub-merchant account generated by Razorpay.
url* string The URL where you receive the webhook payload when an event is triggered. The maximum length is 255 characters.
alert_email string This is the email address to which notifications must be sent in case of webhook failure.
secret string A secret for the webhook endpoint that is used to validate that the webhook is from Razorpay.
events string The required events from the list of Active Events. For example payment.authorized, payment.captured, payment.failed, payment.dispute.created, refund.failed, refund.created and so on.

Response:

{
  "id": "JebiXkKGYwua5L",
  "created_at": 1654605478,
  "updated_at": 1654605478,
  "service": "beta-api-live",
  "owner_id": "JOGUdtKu3dB03d",
  "owner_type": "merchant",
  "context": [],
  "disabled_at": 0,
  "url": "https://google.com",
  "alert_email": "[email protected]",
  "secret_exists": true,
  "entity": "webhook",
  "active": true,
  "events": [
    "payment.authorized",
    "payment.failed",
    "payment.captured",
    "payment.dispute.created",
    "refund.failed",
    "refund.created"
  ]
}

Edit Webhook

String accountId = "acc_GP4lfNA0iIMn5B";

String webhookId = "HK890egfiItP3H";

JSONObject webhookRequest = new JSONObject();
webhookRequest.put("url","https://www.linkedin.com");
ArrayList<String> events = new ArrayList<String>();
events.add("refund.created");
webhookRequest.put("events",events);

Webhook webhook = instance.webhook.edit(accountId, webhookId, webhookRequest);

Parameters:

Name Type Description
accountId* string The unique identifier of a sub-merchant account generated by Razorpay.
webhookId* string The unique identifier of the webhook whose details are to be updated
url string The URL where you receive the webhook payload when an event is triggered. The maximum length is 255 characters.
events string The required events from the list of Active Events. For example payment.authorized, payment.captured, payment.failed, payment.dispute.created, refund.failed, refund.created and so on.

Response:

{
  "id": "HK890egfiItP3H",
  "created_at": 1623060358,
  "updated_at": 1623067148,
  "service": "beta-api-test",
  "owner_id": "H3kYHQ635sBwXG",
  "owner_type": "merchant",
  "context": [],
  "disabled_at": 0,
  "url": "https://www.linkedin.com",
  "alert_email": "[email protected]",
  "secret_exists": true,
  "entity": "webhook",
  "active": true,
  "events": [
    "refund.created"
  ]
}

Delete an account

String accountId = "acc_GP4lfNA0iIMn5B";

String webhookId = "HK890egfiItP3H";

List<Webhook> webhook = instance.webhook.delete(accountId, webhookId);

Parameters:

Name Type Description
accountId* string The unique identifier of a sub-merchant account that must be deleted.
webhookId* string The unique identifier of the webhook whose details are to be updated

Response:

[]

Fetch a webhook

String accountId = "acc_GP4lfNA0iIMn5B";

String webhookId = "HK890egfiItP3H";

Webhook webhook = instance.webhook.fetch(accountId, webhookId);

Parameters:

Name Type Description
accountId* string The unique identifier of a sub-merchant account generated by Razorpay.
webhookId* string The unique identifier of the webhook whose details are to be updated

Response:

{
  "id": "HK890egfiItP3H",
  "created_at": 1623060358,
  "updated_at": 1623060358,
  "owner_id": "H3kYHQ635sBwXG",
  "owner_type": "merchant",
  "context": [],
  "disabled_at": 0,
  "url": "https://en1mwkqo5ioct.x.pipedream.net",
  "alert_email": "[email protected]",
  "secret_exists": true,
  "entity": "webhook",
  "active": true,
  "events": [
    "payment.authorized",
    "payment.failed",
    "payment.captured",
    "payment.dispute.created",
    "refund.failed",
    "refund.created"
  ]
}

Fetch all Webhooks

String accountId = "acc_GP4lfNA0iIMn5B";

Webhook webhook = instance.webhook.fetchAll(accountId);

Parameters:

Name Type Description
accountId* string The unique identifier of a sub-merchant account generated by Razorpay.
from integer Timestamp, in seconds, from when the webhooks are to be fetched.
to integer Timestamp, in seconds, till when the webhooks are to be fetched.
count integer Number of webhooks to be fetched. The default value is 10 and the maximum value is 100. This can be used for pagination, in combination with skip.
skip integer Number of records to be skipped while fetching the webhooks. This can be used for pagination, in combination with count.

Response:

{
  "id": "HK890egfiItP3H",
  "created_at": 1623060358,
  "updated_at": 1623060358,
  "owner_id": "H3kYHQ635sBwXG",
  "owner_type": "merchant",
  "context": [],
  "disabled_at": 0,
  "url": "https://en1mwkqo5ioct.x.pipedream.net",
  "alert_email": "[email protected]",
  "secret_exists": true,
  "entity": "webhook",
  "active": true,
  "events": [
    "payment.authorized",
    "payment.failed",
    "payment.captured",
    "payment.dispute.created",
    "refund.failed",
    "refund.created"
  ]
}

PN: * indicates mandatory fields

For reference click here