## Addons
```rb
require "razorpay"
Razorpay.setup('key_id', 'key_secret')
```
### Create an addon
```rb
subscriptionId = "sub_JBELhNBHtTCyhh"
Razorpay::Addon.create(subscriptionId,{
"item":{
"name":"Extra appala (papadum)",
"amount":30000,
"currency":"INR",
"description":"1 extra oil fried appala with meals"
},
"quantity":2
})
```
**Parameters:**
| Name | Type | Description |
|-------|-----------|--------------------------------------------------|
| subscriptionId* | boolean | The subscription ID to which the add-on is being added. |
| items* | object | Details of the add-on you want to create. |
| quantity* | integer | This specifies the number of units of the add-on to be charged to the customer. |
**Response:**
```json
{
"id":"ao_00000000000001",
"entity":"addon",
"item":{
"id":"item_00000000000001",
"active":true,
"name":"Extra appala (papadum)",
"description":"1 extra oil fried appala with meals",
"amount":30000,
"unit_amount":30000,
"currency":"INR",
"type":"addon",
"unit":null,
"tax_inclusive":false,
"hsn_code":null,
"sac_code":null,
"tax_rate":null,
"tax_id":null,
"tax_group_id":null,
"created_at":1581597318,
"updated_at":1581597318
},
"quantity":2,
"created_at":1581597318,
"subscription_id":"sub_00000000000001",
"invoice_id":null
}
```
-------------------------------------------------------------------------------------------------------
### Fetch all addons
```rb
options = {"count": 2}
Razorpay::Addon.all(options)
```
**Parameters:**
| Name | Type | Description |
|-------|-----------|--------------------------------------------------|
| from | timestamp | timestamp after which the payments were created |
| to | timestamp | timestamp before which the payments were created |
| count | integer | number of payments to fetch (default: 10) |
| skip | integer | number of payments to be skipped (default: 0) |
**Response:**
```json
{
"entity": "collection",
"count": 1,
"items": [
{
"id": "ao_00000000000002",
"entity": "addon",
"item": {
"id": "item_00000000000002",
"active": true,
"name": "Extra sweet",
"description": "1 extra sweet of the day with meals",
"amount": 90000,
"unit_amount": 90000,
"currency": "INR",
"type": "addon",
"unit": null,
"tax_inclusive": false,
"hsn_code": null,
"sac_code": null,
"tax_rate": null,
"tax_id": null,
"tax_group_id": null,
"created_at": 1581597318,
"updated_at": 1581597318
},
"quantity": 1,
"created_at": 1581597318,
"subscription_id": "sub_00000000000001",
"invoice_id": "inv_00000000000001"
}
]
}
```
-------------------------------------------------------------------------------------------------------
### Fetch an addon
```rb
addonId = "ao_IrSY3UIqDRx7df"
Razorpay::Addon.fetch(addonId)
```
**Parameters:**
| Name | Type | Description |
|-----------------|---------|------------------------------------|
| addonId* | string | addon id to be fetched |
**Response:**
```json
{
"id":"ao_IrSY3UIqDRx7df",
"entity":"addon",
"item":{
"id":"item_00000000000001",
"active":true,
"name":"Extra appala (papadum)",
"description":"1 extra oil fried appala with meals",
"amount":30000,
"unit_amount":30000,
"currency":"INR",
"type":"addon",
"unit":null,
"tax_inclusive":false,
"hsn_code":null,
"sac_code":null,
"tax_rate":null,
"tax_id":null,
"tax_group_id":null,
"created_at":1581597318,
"updated_at":1581597318
},
"quantity":2,
"created_at":1581597318,
"subscription_id":"sub_00000000000001",
"invoice_id":null
}
```
-------------------------------------------------------------------------------------------------------
**PN: * indicates mandatory fields**
**For reference click [here](https://razorpay.com/docs/api/subscriptions/#add-ons)**