# Refunds

## Endpoints

### Create a refund

- [POST /v1/refunds](https://docs.stripe.com/api/refunds/create.md)

### Update a refund

- [POST /v1/refunds/:id](https://docs.stripe.com/api/refunds/update.md)

### Retrieve a refund

- [GET /v1/refunds/:id](https://docs.stripe.com/api/refunds/retrieve.md)

### List all refunds

- [GET /v1/refunds](https://docs.stripe.com/api/refunds/list.md)

### Cancel a refund

- [POST /v1/refunds/:id/cancel](https://docs.stripe.com/api/refunds/cancel.md)

## Events

- `charge.refund.updated`
Occurs whenever a refund is updated on selected payment methods. For updates on all refunds, listen to `refund.updated` instead.

- `refund.created`
Occurs whenever a refund is created.

- `refund.failed`
Occurs whenever a refund has failed.

- `refund.updated`
Occurs whenever a refund is updated.

Refund objects allow you to refund a previously created charge that isn’t refunded yet. Funds are refunded to the credit or debit card that’s initially charged.

Related guide: [Refunds](https://docs.stripe.com/docs/refunds.md)
