> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vultlocal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Refund POS payment

> Refund a previous POS payment transaction



## OpenAPI

````yaml /olive-openapi.json post /payment/refund
openapi: 3.0.0
info:
  description: >-
    API Gateway for OLIVE NFC Card Payment System - Comprehensive payment, card
    management, agent operations, and admin authentication. All /api/v1 routes
    require authentication using either API Key or JWT token.
  title: OLIVE NFC Card Payment API
  termsOfService: http://swagger.io/terms/
  contact:
    name: API Support
    email: support@olive.sl
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
  version: 1.0.0
servers:
  - url: https://olive-gateway-a6ba.onrender.com/api/v1
security: []
paths:
  /payment/refund:
    post:
      tags:
        - POS
      summary: Refund POS payment
      description: Refund a previous POS payment transaction
      requestBody:
        $ref: '#/components/requestBodies/handler.POSRefundRequest'
      responses:
        '200':
          description: Refund processed
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
        '400':
          description: Refund failed
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
components:
  requestBodies:
    handler.POSRefundRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/handler.POSRefundRequest'
      description: Refund details
      required: true
  schemas:
    handler.POSRefundRequest:
      type: object
      required:
        - amount
        - initiated_by
        - original_transaction_id
        - reason
      properties:
        amount:
          description: Accepts decimal format like "150.00" or "150"
          type: string
          example: '150.00'
        initiated_by:
          type: string
          example: admin-user-id
        original_transaction_id:
          type: string
          example: txn-uuid
        reason:
          type: string
          example: Customer returned goods

````