# Razorpay

Payment gateway and financial services platform for businesses in India

- **Category:** payment processing
- **Auth:** API_KEY, OAUTH2
- **Composio Managed App Available?** No
- **Tools:** 42
- **Triggers:** 0
- **Slug:** `RAZORPAY`
- **Version:** 00000000_00

## Tools

### Cancel Invoice

**Slug:** `RAZORPAY_CANCEL_INVOICE`

Tool to cancel an existing Razorpay invoice. Use this when you need to cancel an invoice that has been issued but not yet paid. Only invoices in 'issued' status can be cancelled.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `invoice_id` | string | Yes | The unique identifier of the invoice to cancel |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Cancel Payment Link

**Slug:** `RAZORPAY_CANCEL_PAYMENT_LINK`

Tool to cancel a specific payment link. Use when you need to cancel an active payment link before it expires. The payment link cannot be used after cancellation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `plink_id` | string | Yes | The unique identifier of the payment link to cancel |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create an Order

**Slug:** `RAZORPAY_CREATE_AN_ORDER`

Tool to create a Razorpay order with specified amount and currency. Use when you need to initiate a payment order before collecting payment from a customer. Amount and currency are mandatory parameters; receipt and notes are optional for internal tracking.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `notes` | object | No | Key-value pairs for additional information (max 15 pairs) |
| `amount` | integer | Yes | Amount for which the order is created, in currency subunits. For INR, 1 rupee = 100 paise. E.g., ₹500.00 = 50000 paise. |
| `receipt` | string | No | Receipt number for internal reference (max 40 characters) |
| `currency` | string | Yes | ISO 4217 currency code (uppercase, 3 letters) |
| `partial_payment` | boolean | No | Whether to enable partial payments for this order |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Contact

**Slug:** `RAZORPAY_CREATE_CONTACT`

Tool to create a contact for payouts in RazorpayX. Use when you need to add a new contact (employee, vendor, or customer) for making payouts.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Name of the contact |
| `type` | string ("employee" | "vendor" | "customer") | Yes | Type of contact - employee, vendor, or customer |
| `email` | string | No | Email address of the contact |
| `notes` | object | No | Key-value pairs for storing additional information about the contact |
| `contact` | string | No | Phone number of the contact |
| `reference_id` | string | No | A unique reference identifier for the contact in your system |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Customer

**Slug:** `RAZORPAY_CREATE_CUSTOMER`

Tool to create a new customer in Razorpay. Use when you need to register a customer for recurring payments or saved cards. Returns a customer_id that can be used for future transactions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The name of the customer |
| `email` | string | No | The email address of the customer |
| `gstin` | string | No | The GST identification number of the customer (India-specific) |
| `notes` | object | No | Custom key-value pairs for storing additional information about the customer |
| `contact` | string | No | The contact number of the customer |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create an Invoice

**Slug:** `RAZORPAY_CREATE_INVOICE`

Tool to create an invoice for billing customers. Use when you need to generate an invoice with customer details and line items. You can create a blank invoice in draft state, update it later, and issue it when ready.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `type` | string | No | Type of invoice: 'invoice' or 'link' |
| `notes` | object | No | Key-value pairs for additional information |
| `terms` | string | No | Terms and conditions text |
| `amount` | integer | No | Total invoice amount in smallest currency unit. If not provided, calculated from line_items |
| `tax_id` | string | No | Tax ID for the entire invoice |
| `comment` | string | No | Comments on the invoice |
| `receipt` | string | No | Receipt/reference number (max 40 characters) |
| `currency` | string | No | Three-letter ISO currency code. Defaults to INR if not specified |
| `customer` | object | No | Customer details for invoice recipient. |
| `order_id` | string | No | Associated order ID |
| `tax_rate` | integer | No | Tax rate in basis points for the entire invoice |
| `expire_by` | integer | No | Unix timestamp when invoice should expire |
| `issued_at` | integer | No | Unix timestamp for custom invoice issue date |
| `short_url` | boolean | No | Generate and return short URL |
| `view_less` | boolean | No | Show compact view |
| `line_items` | array | Yes | Array of line items (products/services) included in the invoice. At least one line item is required |
| `payment_id` | string | No | Pre-associate a payment ID |
| `sms_notify` | integer | No | Send SMS notification (1=yes, 0=no) |
| `billing_end` | integer | No | Billing period end as Unix timestamp |
| `customer_id` | string | No | Reference to existing customer ID. If provided, customer details can be omitted |
| `description` | string | No | Brief description of the invoice |
| `email_notify` | integer | No | Send email notification (1=yes, 0=no) |
| `billing_start` | integer | No | Billing period start as Unix timestamp |
| `invoice_number` | string | No | Custom invoice number |
| `idempotency_key` | string | No | Unique key for idempotent requests to prevent duplicate invoice creation |
| `partial_payment` | boolean | No | Whether partial payments are allowed |
| `group_taxes_discounts` | boolean | No | Group taxes and discounts together |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Item

**Slug:** `RAZORPAY_CREATE_ITEM`

Tool to create an item that can be used in Razorpay invoices. Use when you need to create a new product or service entry for invoicing purposes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | Name of the item. This will appear on invoices and receipts. |
| `amount` | integer | Yes | Amount in the smallest currency unit (paise for INR). For example, 10000 paise = 100 INR. Must be non-negative. |
| `currency` | string | Yes | Three-letter ISO currency code. Common values: INR (Indian Rupee), USD (US Dollar), EUR (Euro), GBP (British Pound). |
| `description` | string | No | Brief description of the item. Use this to provide additional context about what the item represents. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Payment Link

**Slug:** `RAZORPAY_CREATE_PAYMENT_LINK`

Tool to create a payment link for collecting payments via a shareable URL. Use when you need to generate a payment link for a customer to complete payment online.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `notes` | object | No | Key-value pairs for storing additional information |
| `amount` | integer | Yes | Amount to be paid in currency subunits (e.g., paise for INR). For example, 100000 paise = 1000 INR |
| `notify` | object | No | Notification preferences for the payment link. |
| `currency` | string ("INR" | "USD" | "EUR" | "GBP" | "AED" | "SGD") | Yes | Currency code for the payment |
| `customer` | object | No | Customer details for the payment link. |
| `expire_by` | integer | No | Unix timestamp after which the payment link expires |
| `description` | string | No | Description of the payment link purpose |
| `callback_url` | string | No | URL to redirect customer after payment completion |
| `reference_id` | string | No | Reference ID for the payment link in your system |
| `callback_method` | string | No | HTTP method for callback (get or post) |
| `reminder_enable` | boolean | No | Whether to enable payment reminders |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Invoice

**Slug:** `RAZORPAY_DELETE_INVOICE`

Tool to delete an invoice in Razorpay. Use when you need to permanently remove an invoice from the system. Note: Only invoices in 'draft' status can be deleted. Invoices in other statuses (issued, paid, cancelled) cannot be deleted.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `invoice_id` | string | Yes | The unique identifier of the invoice to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete item

**Slug:** `RAZORPAY_DELETE_ITEM`

Tool to delete an existing item from Razorpay. Use when you need to permanently remove an item from the system. Items can only be deleted if they are not associated with any invoices.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `item_id` | string | Yes | The unique identifier of the item to delete. This is the ID returned when creating an item. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch All Customers

**Slug:** `RAZORPAY_FETCH_ALL_CUSTOMERS`

Tool to retrieve a paginated list of all customers from Razorpay. Use when you need to get customer details for multiple customers or iterate through the customer base.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `skip` | integer | No | Number of customers to skip for pagination (default: 0) |
| `count` | integer | No | Number of customers to fetch (default: 10, max: 100) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch All Invoices

**Slug:** `RAZORPAY_FETCH_ALL_INVOICES`

Tool to fetch all invoices with pagination and filtering support. Use when you need to retrieve a list of invoices, optionally filtered by payment ID, customer ID, receipt, or date range.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `to` | integer | No | Unix timestamp (in seconds) before which the invoices were created. Use for date range filtering. |
| `from` | integer | No | Unix timestamp (in seconds) after which the invoices were created. Use for date range filtering. |
| `skip` | integer | No | Number of invoices to skip from the beginning of the result set. Use for pagination. Default is 0. |
| `type` | string | No | Entity type filter. Use 'invoice' to filter by invoice type. |
| `count` | integer | No | Number of invoices to fetch per request. Default is 10 if not specified. Maximum is 100. |
| `receipt` | string | No | The unique receipt number that you entered for internal purposes. Use to filter invoices by receipt. |
| `payment_id` | string | No | The unique identifier of the payment made by the customer against the invoice. Use to filter invoices by specific payment. |
| `customer_id` | string | No | The unique identifier of the customer. Use to filter invoices for a specific customer. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch All Payment Links

**Slug:** `RAZORPAY_FETCH_ALL_PAYMENT_LINKS`

Tool to fetch all payment links with pagination and filtering support. Use when you need to retrieve a list of payment links, optionally filtered by payment ID, reference ID, or date range.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `to` | integer | No | Unix timestamp (in seconds) before which the payment links were created. Use for date range filtering. |
| `from` | integer | No | Unix timestamp (in seconds) after which the payment links were created. Use for date range filtering. |
| `skip` | integer | No | Number of payment links to skip from the beginning of the result set. Use for pagination. Default is 0. |
| `count` | integer | No | Number of payment links to fetch per request. Default is 10 if not specified. Maximum is typically 100. |
| `payment_id` | string | No | Unique identifier of the payment associated with the Payment Link. Use to filter payment links by payment ID. |
| `reference_id` | string | No | The unique reference number entered while creating the Payment Link. Use to filter payment links by your custom reference. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch All Payments

**Slug:** `RAZORPAY_FETCH_ALL_PAYMENTS`

Tool to retrieve all payments from your Razorpay account with pagination and time filtering support. Use when you need to list payments, audit transactions, or analyze payment history. Returns payments in descending order by creation time (newest first).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `to` | integer | No | Unix timestamp (in seconds) until which to fetch payments. Filters payments created on or before this timestamp. |
| `from` | integer | No | Unix timestamp (in seconds) from which to fetch payments. Filters payments created on or after this timestamp. |
| `skip` | integer | No | Number of payments to skip for pagination. Use this to paginate through results. |
| `count` | integer | No | Number of payments to fetch. Default is 10, maximum is 100. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch all refunds for a payment

**Slug:** `RAZORPAY_FETCH_ALL_REFUNDS_FOR_A_PAYMENT`

Tool to retrieve all refunds for a specific payment using the Razorpay API. Use when you need to check refund status, track refund history, or list all refunds associated with a particular payment.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `skip` | integer | No | Number of refunds to skip for pagination. Use with count to navigate through pages. |
| `count` | integer | No | Number of refunds to fetch. Default is 10. |
| `payment_id` | string | Yes | The unique identifier of the payment for which to fetch refunds. |
| `to_timestamp` | integer | No | Unix timestamp before which the refunds were created. Filter refunds created on or before this time. |
| `from_timestamp` | integer | No | Unix timestamp after which the refunds were created. Filter refunds created on or after this time. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch a Payment Link

**Slug:** `RAZORPAY_FETCH_A_PAYMENT_LINK`

Tool to retrieve details of a specific payment link by its ID. Use when you need to check the status, amount, customer details, or other attributes of an existing payment link.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `plink_id` | string | Yes | The unique identifier of the payment link to fetch. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch Invoice by ID

**Slug:** `RAZORPAY_FETCH_INVOICE_BY_ID`

Tool to fetch a specific invoice by its ID from Razorpay. Use when you need to retrieve complete details of an invoice including customer information, line items, amounts, and payment status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `invoice_id` | string | Yes | The unique identifier of the invoice to retrieve |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch All Orders

**Slug:** `RAZORPAY_FETCH_ORDERS`

Tool to retrieve a paginated list of all orders from Razorpay. Use when you need to fetch multiple orders, filter by date range, receipt, or authorization status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `skip` | integer | No | Number of orders to skip for pagination (default: 0) |
| `count` | integer | No | Number of orders to fetch (default: 10, max: 100) |
| `receipt` | string | No | Filter orders by specific receipt reference number |
| `authorized` | integer | No | Filter orders by authorization status. Set to 1 for authorized orders, 0 for unauthorized orders |
| `to_timestamp` | integer | No | Unix timestamp to fetch orders created before this time |
| `from_timestamp` | integer | No | Unix timestamp to fetch orders created after this time |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch Order by ID

**Slug:** `RAZORPAY_FETCH_ORDERS_BY_ID`

Tool to fetch details of a specific Razorpay order using its order ID. Use when you need to retrieve order information, check order status, or verify payment details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `order_id` | string | Yes | The unique identifier of the order to retrieve |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch payments by order

**Slug:** `RAZORPAY_FETCH_PAYMENTS_BY_ORDER`

Tool to fetch all payments made for a particular order. Use when you need to retrieve payment details associated with a specific order ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `order_id` | string | Yes | The unique identifier of the order for which to fetch payments. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fetch All Refunds

**Slug:** `RAZORPAY_FETCH_REFUNDS`

Tool to retrieve all refunds created by you using the Razorpay API. Use when you need to list refunds, track refund status, or analyze refund history with pagination support.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `skip` | integer | No | Number of refunds to skip for pagination. Use with count to navigate through pages. |
| `count` | integer | No | Number of refunds to fetch. Default is 10. |
| `to_timestamp` | integer | No | Unix timestamp before which the refunds were created. Filter refunds created on or before this time. |
| `from_timestamp` | integer | No | Unix timestamp after which the refunds were created. Filter refunds created on or after this time. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Contact

**Slug:** `RAZORPAY_GET_CONTACT`

Tool to retrieve details of a specific contact by ID in RazorpayX. Use when you need to fetch information about an existing contact including their name, email, contact details, and metadata.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `contact_id` | string | Yes | The unique identifier of the contact to retrieve. Must start with 'cont_' followed by alphanumeric characters. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve Customer

**Slug:** `RAZORPAY_GET_CUSTOMER`

Tool to retrieve details of a specific customer by their ID. Use when you need to fetch customer information including name, email, contact details, and custom notes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `customer_id` | string | Yes | The unique identifier of the customer to retrieve. Must start with 'cust_' followed by alphanumeric characters. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Fund Account

**Slug:** `RAZORPAY_GET_FUND_ACCOUNT`

Tool to retrieve details of a specific fund account by its ID. Use when you need to fetch fund account information including associated contact, account type, and payment details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fund_account_id` | string | Yes | The unique identifier of the fund account to retrieve. Must start with 'fa_' followed by alphanumeric characters. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Item

**Slug:** `RAZORPAY_GET_ITEM`

Tool to retrieve complete details of a specific Razorpay item by its ID. Use when you need to fetch information about an item including its name, description, amount, tax details, and other metadata.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `item_id` | string | Yes | The unique identifier of the item to retrieve |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Settlement Reconciliation Report

**Slug:** `RAZORPAY_GET_SETTLEMENT_RECON`

Tool to fetch settlement reconciliation report for a specific date or month from Razorpay. Use when you need to retrieve detailed settlement transaction data for accounting and reconciliation purposes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `day` | integer | No | Optional day for the reconciliation report (1-31). If not provided, fetches data for the entire month. |
| `year` | integer | Yes | Year for the reconciliation report (e.g., 2024) |
| `month` | integer | Yes | Month for the reconciliation report (1-12) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Transfer Reversals

**Slug:** `RAZORPAY_GET_TRANSFER_REVERSALS`

Tool to fetch all reversals for a specific transfer using the Razorpay Route API. Use when you need to check reversal status, track reversal history, or list all reversals associated with a particular transfer.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `skip` | integer | No | Number of reversals to skip for pagination. Use with count to navigate through pages. |
| `count` | integer | No | Number of reversals to fetch. Default is 10, maximum is 100. |
| `transfer_id` | string | Yes | The unique identifier of the transfer for which to fetch reversals. |
| `to_timestamp` | integer | No | Unix timestamp before which the reversals were created. Filter reversals created on or before this time. |
| `from_timestamp` | integer | No | Unix timestamp after which the reversals were created. Filter reversals created on or after this time. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Issue an Invoice

**Slug:** `RAZORPAY_ISSUE_AN_INVOICE`

Tool to issue a draft Razorpay invoice to send it to the customer. Use when you need to issue an invoice that has been created in draft status. Only invoices in 'draft' status can be issued.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `invoice_id` | string | Yes | The unique identifier of the invoice to issue |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Customer Tokens

**Slug:** `RAZORPAY_LIST_CUSTOMER_TOKENS`

Tool to retrieve all tokens (saved payment methods) for a customer. Use when you need to fetch the list of saved payment methods associated with a specific customer ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `customer_id` | string | Yes | Unique identifier of the customer whose tokens are to be retrieved. Format: cust_<14 alphanumeric characters> |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Disputes

**Slug:** `RAZORPAY_LIST_DISPUTES`

Tool to retrieve a list of all disputes with pagination support. Use when you need to view chargebacks, fraud claims, or other payment disputes. Supports filtering by date range and pagination for efficient retrieval of dispute records.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `to` | integer | No | Unix timestamp to retrieve disputes created before this time |
| `from` | integer | No | Unix timestamp to retrieve disputes created after this time |
| `skip` | integer | No | Number of records to skip for pagination (offset, defaults to 0) |
| `count` | integer | No | Number of dispute records to retrieve (defaults to 10) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Fund Accounts

**Slug:** `RAZORPAY_LIST_FUND_ACCOUNTS`

Tool to retrieve a list of all fund accounts from RazorpayX with pagination support. Use when you need to fetch payout destinations, view beneficiary accounts, or manage fund account records. Supports filtering by contact and account type for efficient retrieval.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `skip` | integer | No | Number of fund accounts to skip for pagination. Use with count to navigate through pages. |
| `count` | integer | No | Number of fund accounts to retrieve per page. Maximum 100 accounts per request. |
| `contact_id` | string | No | Filter fund accounts by contact ID. Returns only fund accounts associated with the specified contact. |
| `account_type` | string | No | Filter fund accounts by account type (e.g., 'bank_account', 'vpa', 'card', 'wallet'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Fund Validations

**Slug:** `RAZORPAY_LIST_FUND_VALIDATIONS`

Tool to fetch all fund account validation transactions from RazorpayX with pagination support. Use when you need to retrieve validation records, check account verification status, or monitor validation transactions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `to` | integer | No | Unix timestamp (in seconds) to filter validations created before this time. Use for date range filtering. |
| `from` | integer | No | Unix timestamp (in seconds) to filter validations created after this time. Use for date range filtering. |
| `skip` | integer | No | Number of validation transactions to skip for pagination. Use with count to navigate through pages. Default is 0. |
| `count` | integer | No | Number of validation transactions to retrieve per page. Default is 10. Maximum is 100. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Items

**Slug:** `RAZORPAY_LIST_ITEMS`

Tool to retrieve a list of all items from Razorpay with pagination support. Use when you need to fetch invoice items, view available products, or manage item catalog. Supports filtering by active status and date range for efficient retrieval.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `skip` | integer | No | Number of items to skip for pagination. Use with count to navigate through pages. |
| `count` | integer | No | Number of items to retrieve per page. Maximum 100 items per request. |
| `active` | boolean | No | Filter items by active status. True returns only active items, False returns only inactive items. |
| `to_timestamp` | integer | No | Unix timestamp to filter items created on or before this time. |
| `from_timestamp` | integer | No | Unix timestamp to filter items created on or after this time. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Payment Downtimes

**Slug:** `RAZORPAY_LIST_PAYMENT_DOWNTIMES`

Tool to fetch all active payment method downtimes from Razorpay. Use when you need to check the current status of payment methods and identify any ongoing or scheduled downtimes.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Notify Payment Link

**Slug:** `RAZORPAY_NOTIFY_PAYMENT_LINK`

Tool to send or resend notification for a payment link via SMS or email. Use when you need to notify a customer about a payment link.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `medium` | string ("sms" | "email") | Yes | The notification medium to use for sending the payment link notification. Choose 'sms' to send via SMS or 'email' to send via email. |
| `plink_id` | string | Yes | The unique identifier of the payment link to send notification for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Send/Resend Invoice Notification

**Slug:** `RAZORPAY_SEND_OR_RESEND_NOTIFICATION`

Tool to send or resend an invoice notification via email or SMS. Use when you need to notify customers about an invoice through their preferred communication channel.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `medium` | string ("email" | "sms") | Yes | The medium through which to send the notification (email or sms) |
| `invoice_id` | string | Yes | The unique identifier of the invoice for which to send notification |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Contact

**Slug:** `RAZORPAY_UPDATE_CONTACT`

Tool to update an existing contact's details in RazorpayX. Use when you need to modify contact information such as name, email, phone number, type, reference ID, or notes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Updated name of the contact. Provide this to change the contact's name. |
| `type` | string ("employee" | "vendor" | "customer") | No | Type of contact in RazorpayX. |
| `email` | string | No | Updated email address of the contact. Provide this to change the contact's email. |
| `notes` | object | No | Updated key-value pairs for storing additional information about the contact. Provide this to change or add notes. |
| `contact` | string | No | Updated phone number of the contact. Provide this to change the contact's phone number. |
| `contact_id` | string | Yes | The unique identifier of the contact to update. This is the contact ID returned from Razorpay (e.g., 'cont_SMoUIhAssfaDoy'). |
| `reference_id` | string | No | Updated reference identifier for the contact in your system. Provide this to change the reference ID. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Customer

**Slug:** `RAZORPAY_UPDATE_CUSTOMER`

Tool to update an existing customer's details in Razorpay. Use when you need to modify customer information such as name, email, or contact number.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The updated name of the customer. Provide this to change the customer's name. |
| `email` | string | No | The updated email address of the customer. Provide this to change the customer's email. |
| `contact` | string | No | The updated contact number of the customer. Provide this to change the customer's phone number. Should be a valid phone number string. |
| `customer_id` | string | Yes | The unique identifier of the customer to update. This is the customer ID returned from Razorpay (e.g., 'cust_SMoQL8RbRrw4w5'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Invoice

**Slug:** `RAZORPAY_UPDATE_INVOICE`

Tool to update an existing draft invoice in Razorpay. Use when you need to modify invoice details such as customer information, line items, description, notes, or other fields. Only invoices in draft state can be updated.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `date` | integer | No | Invoice date as Unix timestamp |
| `type` | string | No | Type of invoice: 'invoice' or 'link' |
| `notes` | object | No | Key-value pairs for additional information |
| `terms` | string | No | Terms and conditions text |
| `amount` | integer | No | Total invoice amount in smallest currency unit. If not provided, calculated from line_items |
| `tax_id` | string | No | Tax ID for the entire invoice |
| `comment` | string | No | Comments on the invoice |
| `receipt` | string | No | Receipt/reference number (max 40 characters) |
| `currency` | string | No | Three-letter ISO currency code |
| `customer` | object | No | Customer details for invoice recipient. |
| `order_id` | string | No | Associated order ID |
| `tax_rate` | integer | No | Tax rate in basis points for the entire invoice (e.g., 1800 for 18%) |
| `expire_by` | integer | No | Unix timestamp when invoice should expire |
| `issued_at` | integer | No | Unix timestamp for custom invoice issue date |
| `short_url` | boolean | No | Generate and return short URL |
| `view_less` | boolean | No | Show compact view |
| `invoice_id` | string | Yes | The unique identifier of the invoice to update. Only draft invoices can be updated. |
| `line_items` | array | No | Array of line items to update or add. Include 'id' field to update existing items |
| `payment_id` | string | No | Pre-associate a payment ID |
| `sms_notify` | integer | No | Send SMS notification (1=yes, 0=no) |
| `billing_end` | integer | No | Billing period end as Unix timestamp |
| `customer_id` | string | No | Reference to existing customer ID |
| `description` | string | No | Brief description of the invoice |
| `email_notify` | integer | No | Send email notification (1=yes, 0=no) |
| `billing_start` | integer | No | Billing period start as Unix timestamp |
| `invoice_number` | string | No | Custom invoice number |
| `idempotency_key` | string | No | Unique key for idempotent requests to prevent duplicates |
| `partial_payment` | boolean | No | Whether partial payments are allowed |
| `group_taxes_discounts` | boolean | No | Group taxes and discounts together |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Item

**Slug:** `RAZORPAY_UPDATE_ITEM`

Tool to update an existing item's details in Razorpay. Use when you need to modify the name, description, or amount of an item. Only the fields provided in the request will be updated; other fields remain unchanged.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Name of the item. This will appear on invoices and receipts. |
| `amount` | integer | No | Amount in the smallest currency unit (paise for INR). For example, 15000 paise = 150 INR. Must be non-negative. |
| `item_id` | string | Yes | The unique identifier of the item to update. This is the ID returned when creating an item. |
| `description` | string | No | Brief description of the item. Use this to provide additional context about what the item represents. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Order

**Slug:** `RAZORPAY_UPDATE_ORDER`

Tool to update an existing order in Razorpay. Use when you need to modify the notes field of an order to store or update additional metadata.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `notes` | object | No | Key-value pairs to store additional information about the order. Use this to update custom metadata fields. |
| `order_id` | string | Yes | The unique identifier of the order to update. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update payment link

**Slug:** `RAZORPAY_UPDATE_PAYMENT_LINK`

Tool to update an existing payment link in Razorpay. Use when you need to modify payment link details such as reference ID, expiry time, partial payment settings, notes, or reminder preferences.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `notes` | object | No | Key-value pairs for storing additional information. Maximum 15 pairs, each key and value limited to 256 characters. |
| `plink_id` | string | Yes | The unique identifier of the payment link to update. Must start with 'plink_'. |
| `expire_by` | integer | No | Timestamp in Unix format when the payment link should expire. Must be a future timestamp. |
| `reference_id` | string | No | Adds a unique reference number to an existing link for your internal records. |
| `accept_partial` | boolean | No | Indicates whether customers can make partial payments using the Payment Link. |
| `reminder_enable` | boolean | No | Controls whether automatic payment reminders are enabled for this payment link. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
