openapi: "3.0.2"
info:
  title: UPay API Documentation
  version: "2.0.1"
  description:
    $ref: ./info-description.md
servers:
  - url: https://payment-test
    description: Test Environment
  - url: https://payment-prod
    description: Production Environment
  - url: https://operatorurl
    description: Operator Environment
tags:
  - name: APIs
  - name: Operator APIs
  - name: Appendix
    description:
      $ref: ./md/appendix.md
paths:
  /api/upay/qr-code:
    $ref: paths/deposit.yaml
  /api/upay/withdraw:
    $ref: paths/withdraw.yaml
  /api/upay/withdraw/settlement:
    $ref: paths/withdraw-settlement.yaml
  /api/upay/deposit/transactions:
    $ref: paths/deposit-transactions.yaml
  /api/upay/withdraw/transactions:
    $ref: paths/withdraw-transactions.yaml
  /api/upay/balance:
    $ref: paths/agent-balance.yaml
  /api/upay/deposit/status-retry:
    $ref: paths/deposit-status.yaml
  /api/upay/withdraw/status-retry:
    $ref: paths/withdraw-status.yaml
  /{{Callback deposit transaction to operator url}}:
    $ref: paths/deposit-callback.yaml
  /{{Callback withdraw transaction to operator url}}:
    $ref: paths/withdraw-callback.yaml
components:
  securitySchemes:
    bearerAuth:
      $ref: ./components/securitySchemes/jwt.yaml
