Flutterwave Refunds API

Initiate and inspect refunds against successful charges.

OpenAPI Specification

flutterwave-refunds-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Flutterwave Banks AccountResolution Refunds API
  description: 'Flutterwave v4 reference data APIs for supported banks, bank branches,

    mobile networks, and bank account name resolution. These endpoints are

    used to populate dropdowns and validate destination accounts before

    initiating payouts.

    '
  version: 4.0.0
  contact:
    name: Flutterwave
    url: https://developer.flutterwave.com
    email: developers@flutterwavego.com
  license:
    name: Flutterwave Terms of Service
    url: https://flutterwave.com/us/terms
servers:
- url: https://api.flutterwave.cloud/f4b/production
  description: Production
- url: https://api.flutterwave.cloud/f4b/sandbox
  description: Sandbox
security:
- OAuth2: []
tags:
- name: Refunds
  description: Initiate and inspect refunds against successful charges.
paths:
  /refunds:
    get:
      summary: List Refunds
      operationId: listRefunds
      tags:
      - Refunds
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RefundList'
    post:
      summary: Create A Refund
      operationId: createRefund
      tags:
      - Refunds
      parameters:
      - $ref: '#/components/parameters/IdempotencyKey'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RefundRequest'
      responses:
        '201':
          description: Refund Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Refund'
  /refunds/{id}:
    parameters:
    - in: path
      name: id
      required: true
      schema:
        type: string
    get:
      summary: Retrieve A Refund
      operationId: getRefund
      tags:
      - Refunds
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Refund'
components:
  schemas:
    RefundRequest:
      type: object
      required:
      - charge_id
      - amount
      properties:
        charge_id:
          type: string
        amount:
          type: number
        reason:
          type: string
    Refund:
      type: object
      properties:
        id:
          type: string
        charge_id:
          type: string
        amount:
          type: number
        currency:
          type: string
        status:
          type: string
          enum:
          - pending
          - processing
          - succeeded
          - failed
        reason:
          type: string
        created_datetime:
          type: string
          format: date-time
    RefundList:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Refund'
  parameters:
    IdempotencyKey:
      in: header
      name: X-Idempotency-Key
      required: false
      schema:
        type: string
        format: uuid
  securitySchemes:
    OAuth2:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://idp.flutterwave.com/realms/flutterwave/protocol/openid-connect/token
          scopes: {}