# Create a refund for a transaction

Endpoint: POST /payment/{serviceId}/transactions/{transactionId}/refunds
Version: 1.0.0
Security: bearerAuth

## Path parameters:

  - `serviceId` (string, required)
    Service ID

  - `transactionId` (string, required)
    Transaction ID

## Response 200 fields (application/json):

  - `success` (boolean, required)
    Request status
    Example: true

  - `data` (object, required)
    Example: {"refund_id":"019483a5-885e-70f7-9b5b-94387a6690da"}

  - `data.refund_id` (string, required)
    Refund ID

## Response 400 fields (application/json):

  - `success` (boolean, required)
    Request status

  - `errorCode` (string)
    Error status code

  - `message` (string, required)
    Error message
    Example: "The wallet balance is smaller than the transaction amount."

## Response 401 fields (application/json):

  - `success` (boolean, required)
    Request status

  - `errorCode` (string, required)
    Error status code
    Enum: "UNAUTHORIZED"

## Response 403 fields (application/json):

  - `success` (boolean, required)
    Request status

  - `errorCode` (string, required)
    Error status code
    Enum: "INVALID_ABILITY_PROVIDED", "IP_ADDRESS_NOT_WHITELISTED"

## Response 404 fields (application/json):

  - `success` (boolean, required)
    Request status

  - `errorCode` (string, required)
    Error status code
    Enum: "SERVICE_NOT_FOUND", "TRANSACTION_NOT_FOUND", "ROUTE_NOT_FOUND"

## Response 409 fields (application/json):

  - `success` (boolean, required)
    Request status

  - `errorCode` (string)
    Error status code
    Example: "TRANSACTION_NOT_PAID"

  - `message` (string, required)
    Error message
    Example: "Transaction is not paid."


