{
  "openapi": "3.0.1",
  "x-stoplight": {
    "id": "nshbpafle66mc"
  },
  "info": {
    "title": "POS",
    "version": "v1",
    "description": "Endpoints which are operating with myPOS Terminals"
  },
  "paths": {
    "/epos/v1/payments": {
      "post": {
        "tags": [
          "Payment"
        ],
        "summary": "Create Payment",
        "parameters": [
          {
            "name": "X-Session",
            "in": "header",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "name": "X-Partner-Id",
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "name": "X-Application-Id",
            "required": true
          }
        ],
        "requestBody": {
          "content": {
            "application/json; x-api-version=1": {
              "schema": {
                "$ref": "#/components/schemas/Application.Common.Models.DTO.PaymentRequestDTO"
              },
              "examples": {
                "Example 1": {
                  "value": {
                    "reference_number": "REF1234567890",
                    "amount": {
                      "value": 1500,
                      "currency_code": "EUR",
                      "tip": 500
                    },
                    "description": "Test request",
                    "terminal_id": "80123457",
                    "app_name": "Test123",
                    "app_version": "12",
                    "operator_code": "0123"
                  }
                }
              }
            },
            "text/json; x-api-version=1": {
              "schema": {
                "$ref": "#/components/schemas/Application.Common.Models.DTO.PaymentRequestDTO"
              }
            },
            "application/*+json; x-api-version=1": {
              "schema": {
                "$ref": "#/components/schemas/Application.Common.Models.DTO.PaymentRequestDTO"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Application.Common.Models.DTO.PaymentResponseDTO"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "payment_id": "68ff25a853659f6448da0eba",
                      "status": "68ff25a853659f6448da0eba",
                      "amount": {
                        "value": 1500,
                        "currency_code": "EUR",
                        "tip": 500
                      },
                      "created_at": "2025-10-27T09:56:24",
                      "updated_at": "2025-10-27T09:56:24",
                      "reference_number": "REF1234567890",
                      "description": "Test request",
                      "expire_at": "2025-11-27T09:56:24"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request\r\n\r\n",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "errors": {
                        "additionalProp1": [
                          "string"
                        ],
                        "additionalProp2": [
                          "string"
                        ],
                        "additionalProp3": [
                          "string"
                        ]
                      },
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "x-stoplight": {
          "id": "bxcq30rheh6r0"
        },
        "description": "Initiate a payment on a POS device.",
        "operationId": "epos-create-payment"
      },
      "parameters": [],
      "get": {
        "tags": [
          "Payment"
        ],
        "summary": "Get Terminal Payments By TID",
        "parameters": [
          {
            "name": "terminal_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "X-Session",
            "in": "header",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "required": true,
            "name": "X-Partner-Id"
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "required": true,
            "name": "X-Application-Id"
          },
          {
            "schema": {
              "type": "integer"
            },
            "in": "query",
            "name": "page"
          },
          {
            "schema": {
              "type": "integer"
            },
            "in": "query",
            "name": "size"
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "query",
            "name": "terminal_id",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Application.Common.Models.DTO.GetTerminalPaymentsByTidResponseDTO"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "items": [
                        {
                          "payment_id": "67f52eb66d0295252b5ec009",
                          "status": "InProgress",
                          "amount": {
                            "value": 1500,
                            "currency_code": "EUR",
                            "tip": 500
                          },
                          "created_at": "2025-05-02T09:38:59.4483833+03:00",
                          "updated_at": "0001-01-01T00:00:00",
                          "reference_number": "REF1234567890",
                          "description": "Test request",
                          "expire_at": "2025-11-26T07:35:48",
                          "dcc_amount": 0,
                          "dcc_card_exchange_rate": 0,
                          "stan": "000408",
                          "auth_code": "VISSIM",
                          "transaction_date_local": "250620165140",
                          "status_message": "TRANSACTION_SUCCESS",
                          "dcc_available": false,
                          "reference_type": "OFF",
                          "signature_required": false,
                          "aid": "A0000000031010",
                          "card_qualifier": "VISA",
                          "response_code": "00",
                          "pan": "****6693",
                          "rrn": "517114115174"
                        }
                      ],
                      "page": 0,
                      "page_size": 0,
                      "total_pages": 0,
                      "total_count": 0,
                      "has_previous_page": true,
                      "has_next_page": true
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "errors": {
                        "additionalProp1": [
                          "string"
                        ],
                        "additionalProp2": [
                          "string"
                        ],
                        "additionalProp3": [
                          "string"
                        ]
                      },
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "x-stoplight": {
          "id": "axdt23vcxfaer"
        },
        "operationId": "epos-get-terminal-payments-by-tid"
      }
    },
    "/epos/v1/payments/{id}": {
      "get": {
        "tags": [
          "Payment"
        ],
        "summary": "Get Payment By ID",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "X-Session",
            "in": "header",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "name": "X-Partner-Id",
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "name": "X-Application-Id",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Application.Common.Models.DTO.GetPaymentByIdResponseDTO"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "payment_id": "67f826f21b62d43a1f65833a",
                      "status": "InProgress",
                      "amount": {
                        "value": 1500,
                        "currency_code": "EUR",
                        "tip": 500
                      },
                      "created_at": "2025-10-27T07:35:48",
                      "updated_at": "2025-10-27T07:35:48",
                      "reference_number": "REF1234567890",
                      "description": "Test request",
                      "expire_at": "2025-11-26T07:35:48",
                      "dcc_amount": 0,
                      "dcc_card_exchange_rate": 0,
                      "stan": "000408",
                      "auth_code": "VISSIM",
                      "transaction_date_local": "250620165140",
                      "status_message": "TRANSACTION_SUCCESS",
                      "dcc_available": false,
                      "reference_type": "OFF",
                      "signature_required": false,
                      "aid": "A0000000031010",
                      "card_qualifier": "VISA",
                      "response_code": "00",
                      "pan": "****6693",
                      "rrn": "517114115174"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "errors": {
                        "additionalProp1": [
                          "string"
                        ],
                        "additionalProp2": [
                          "string"
                        ],
                        "additionalProp3": [
                          "string"
                        ]
                      },
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "x-stoplight": {
          "id": "o6g2kyeh5dvym"
        },
        "description": "Check the status of a previously initiated payment and get the details.",
        "operationId": "epos-get-payment-by-id"
      },
      "delete": {
        "tags": [
          "Payment"
        ],
        "summary": "Cancel Payment By ID",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "X-Session",
            "in": "header",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "name": "X-Partner-Id",
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "required": true,
            "name": "X-Application-Id"
          }
        ],
        "responses": {
          "202": {
            "description": "Accepted",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Application.Common.Models.DTO.PaymentInfoDTO"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "request_id": "67f7d0a2f7151530e5996a0d",
                      "status": "InProgress",
                      "app_name": "CashApp",
                      "app_version": "1.0.0",
                      "operator_code": "10",
                      "reference_number": "REF1234567890",
                      "description": "Client cancelled the order"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "errors": {
                        "additionalProp1": [
                          "string"
                        ],
                        "additionalProp2": [
                          "string"
                        ],
                        "additionalProp3": [
                          "string"
                        ]
                      },
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "x-stoplight": {
          "id": "n4z08swwlljf9"
        },
        "description": "Cancel a payment that has not yet been completed.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {}
              },
              "examples": {
                "Example 1": {
                  "value": {}
                }
              }
            }
          }
        },
        "operationId": "epos-delete-payment-by-id"
      },
      "parameters": [
        {
          "schema": {
            "type": "string"
          },
          "name": "id",
          "in": "path",
          "required": true
        }
      ]
    },
    "/epos/v1/payments/{payment_id}/reversal": {
      "post": {
        "tags": [
          "Payment"
        ],
        "summary": "Void Payment",
        "parameters": [
          {
            "name": "payment_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "X-Session",
            "in": "header",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "required": true,
            "name": "X-Partner-Id"
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "required": true,
            "name": "X-Application-Id"
          }
        ],
        "requestBody": {
          "content": {
            "application/json; x-api-version=1": {
              "schema": {
                "$ref": "#/components/schemas/Application.Common.Models.DTO.PaymentReversalByIdRequestDTO"
              },
              "examples": {
                "Example 1": {
                  "value": {
                    "description": "Customer requested reversal due to duplicate transaction",
                    "terminal_id": "80123457",
                    "app_name": "MyPOSApp",
                    "app_version": "1.0.3"
                  }
                }
              }
            },
            "text/json; x-api-version=1": {
              "schema": {
                "$ref": "#/components/schemas/Application.Common.Models.DTO.PaymentReversalByIdRequestDTO"
              }
            },
            "application/*+json; x-api-version=1": {
              "schema": {
                "$ref": "#/components/schemas/Application.Common.Models.DTO.PaymentReversalByIdRequestDTO"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MediatR.Unit"
                },
                "examples": {
                  "Example 1": {
                    "value": {}
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Application.Common.Models.DTO.PaymentReversalByIdResponseDTO"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "payment_id": "67f82b071b62d43a1f65833b",
                      "status": "InProgress",
                      "amount": {
                        "value": 1500,
                        "currency_code": "EUR",
                        "tip": 500
                      },
                      "created_at": "2025-10-27T07:56:24",
                      "updated_at": "2025-10-27T07:56:24",
                      "reference_number": "REF1234567890",
                      "description": "Test request",
                      "expire_at": "2025-11-26T07:35:48"
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "x-stoplight": {
          "id": "gwnk91sr9xvfr"
        },
        "description": "Void a previously completed payment. The funds will be returned to the cardholder.",
        "operationId": "epos-reversal-by-payment-id"
      },
      "parameters": [
        {
          "schema": {
            "type": "string"
          },
          "name": "payment_id",
          "in": "path",
          "required": true
        }
      ]
    },
    "/epos/v1/payments/refund": {
      "post": {
        "tags": [
          "Payment"
        ],
        "summary": "Create Refund",
        "parameters": [
          {
            "name": "X-Session",
            "in": "header",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "required": true,
            "name": "X-Partner-Id"
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "required": true,
            "name": "X-Application-Id"
          }
        ],
        "requestBody": {
          "content": {
            "application/json; x-api-version=1": {
              "schema": {
                "$ref": "#/components/schemas/Application.Common.Models.DTO.PaymentRefundRequestDTO"
              },
              "examples": {
                "Example 1": {
                  "value": {
                    "amount": {
                      "value": 1500,
                      "currency_code": "EUR"
                    },
                    "description": "Refund issued due to customer complaint",
                    "terminal_id": "80123457",
                    "app_name": "RefundApp",
                    "app_version": "2.1.0"
                  }
                }
              }
            },
            "text/json; x-api-version=1": {
              "schema": {
                "$ref": "#/components/schemas/Application.Common.Models.DTO.PaymentRefundRequestDTO"
              }
            },
            "application/*+json; x-api-version=1": {
              "schema": {
                "$ref": "#/components/schemas/Application.Common.Models.DTO.PaymentRefundRequestDTO"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Application.Common.Models.DTO.PaymentRefundRequestDTO"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "amount": {
                        "value": 1500,
                        "currency_code": "EUR",
                        "tip": 500
                      },
                      "description": "Refund issued due to customer complaint",
                      "terminal_id": "80123457",
                      "app_name": "RefundApp",
                      "app_version": "2.1.0"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "errors": {
                        "additionalProp1": [
                          "string"
                        ],
                        "additionalProp2": [
                          "string"
                        ],
                        "additionalProp3": [
                          "string"
                        ]
                      },
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "x-stoplight": {
          "id": "oscapl1fvsz08"
        },
        "description": "Initiate a refund operation on a POS device",
        "operationId": "epos-create-refund"
      },
      "parameters": []
    },
    "/pos/v1/terminals": {
      "get": {
        "tags": [
          "Terminal"
        ],
        "summary": "Get Terminals",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "example": 1
            },
            "description": "The page with transactions to be returned. Default is 1"
          },
          {
            "name": "size",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "example": 20
            },
            "description": "The number of returned transactions transactions. Possible values are 1÷100. Default value is 20."
          },
          {
            "name": "terminal_id",
            "in": "query",
            "schema": {
              "type": "string",
              "example": "90005826"
            },
            "description": "The unique identifier of the POS device."
          },
          {
            "name": "serial_number",
            "in": "query",
            "schema": {
              "type": "string",
              "example": "UN2050667462"
            },
            "description": "The serial number of the POS device."
          },
          {
            "name": "model",
            "in": "query",
            "schema": {
              "type": "string",
              "example": "UN20"
            },
            "description": "The model of the POS device."
          },
          {
            "name": "X-Session",
            "in": "header",
            "schema": {
              "type": "string"
            },
            "description": "Non Interactive User Session",
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "name": "X-Partner-Id",
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "name": "X-Application-Id",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Application.Common.Models.DTO.GetTerminalResponseDTO"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "pagination": {
                        "page_size": 0,
                        "page": 0,
                        "total": 0
                      },
                      "terminals": [
                        {
                          "terminal_id": "80026232",
                          "serial_number": "N96N960WC15224",
                          "model": "N96"
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "errors": {
                        "additionalProp1": [
                          "string"
                        ],
                        "additionalProp2": [
                          "string"
                        ],
                        "additionalProp3": [
                          "string"
                        ]
                      },
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "property1": null,
                      "property2": null
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "property1": null,
                      "property2": null
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "property1": null,
                      "property2": null
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "property1": null,
                      "property2": null
                    }
                  }
                }
              }
            }
          }
        },
        "x-stoplight": {
          "id": "mu1w333ozunol"
        },
        "operationId": "epos-get-terminals",
        "description": "Get a list of all POS devices associated with the merchants account."
      },
      "parameters": []
    },
    "/pos/v1/terminals/{terminal_id}": {
      "get": {
        "tags": [
          "Terminal"
        ],
        "summary": "Get Terminals Details",
        "parameters": [
          {
            "name": "terminal_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "X-Session",
            "in": "header",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "name": "X-Partner-Id",
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "name": "X-Application-Id",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Application.Common.Models.DTO.GetTerminalDetailsResponseDTO"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "terminal_name": "Demo Ultra",
                      "outlet_id": 20577,
                      "outlet_name": "test",
                      "device_currency": "EUR",
                      "status": "Active",
                      "last_transaction_date": "2025-10-13 10:12:14",
                      "transactions_count": 11,
                      "settlement_account_number": "50480563548",
                      "settlement_account_name": "EUR Account",
                      "settlement_account_currency": "EUR",
                      "billing_descriptor": "DEMO ULTRA",
                      "receipt_footer_row_1": "string",
                      "receipt_footer_row_2": "string",
                      "forbidden_preauthorization": "False",
                      "forbidden_moto": "True",
                      "forbidden_reversal": "False",
                      "forbidden_refund": "False",
                      "forbidden_topup": "False",
                      "card_topup_enabled": "False",
                      "terminal_id": "80026232",
                      "serial_number": "N96N960WC15224",
                      "model": "N96"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "errors": {
                        "additionalProp1": [
                          "string"
                        ],
                        "additionalProp2": [
                          "string"
                        ],
                        "additionalProp3": [
                          "string"
                        ]
                      },
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "property1": null,
                      "property2": null
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "property1": null,
                      "property2": null
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "property1": null,
                      "property2": null
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "property1": null,
                      "property2": null
                    }
                  }
                }
              }
            }
          }
        },
        "x-stoplight": {
          "id": "b584a8jza3z7x"
        },
        "description": "Get detailed information about the specified POS device",
        "operationId": "epos-get-terminals-details"
      },
      "parameters": [
        {
          "schema": {
            "type": "string"
          },
          "name": "terminal_id",
          "in": "path",
          "required": true
        }
      ]
    },
    "/pos/v1/terminals/transactions": {
      "get": {
        "tags": [
          "Terminal"
        ],
        "summary": "Get All Transactions",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "example": 1
            },
            "description": "The page with transactions to be returned. Default is 1"
          },
          {
            "name": "size",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "example": 20
            },
            "description": "The number of returned transactions transactions. Possible values are 1÷100. Default value is 20."
          },
          {
            "name": "terminal_id",
            "in": "query",
            "schema": {
              "type": "string",
              "example": "90005826"
            },
            "description": "The unique identifier of the POS device."
          },
          {
            "name": "terminal_name",
            "in": "query",
            "schema": {
              "type": "string",
              "example": "Front Desk POS"
            },
            "description": "The custom name of the POS device."
          },
          {
            "name": "from_date",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time",
              "example": "2025-04-20"
            },
            "description": "Starting date of the transaction list in format \"YYYY-MM-DD\"."
          },
          {
            "name": "to_date",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time",
              "example": "2025-04-21"
            },
            "description": "End date of the transaction list, default is “today” if not given. Format is \"YYYY-MM-DD\"."
          },
          {
            "name": "rrn",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "stan",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "from_amount",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            },
            "description": "The minimum amount of a transactions."
          },
          {
            "name": "to_amount",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            },
            "description": "The maximum amount of a transactions."
          },
          {
            "name": "reference_number",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "X-Session",
            "in": "header",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "required": true,
            "name": "X-Partner-Id"
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "required": true,
            "name": "X-Application-Id"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Application.Common.Models.DTO.GetTerminalTransactionsResponseDTO"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "pagination": {
                        "page_size": 0,
                        "page": 0,
                        "total": 0
                      },
                      "transactions": [
                        {
                          "terminal_id": "80026232",
                          "date": "2025-10-13 10:12:06",
                          "terminal_name": "Demo Ultra",
                          "outlet_name": "string",
                          "tran_status": "Approved",
                          "payment_status": "Paid",
                          "amount": 0.22,
                          "currency": "EUR",
                          "rrn": "528607108520",
                          "stan": "000029",
                          "settlement_date": "2025-10-13 10:12:16",
                          "settlement_amount": 0.22,
                          "settlement_currency": "EUR",
                          "fee": 0.01,
                          "pan": "*9766",
                          "card_scheme": "Business Premium Debit",
                          "payment_reference": "POSA015257Y6IR59",
                          "billing_descriptor": "DEMO ULTRA",
                          "reference_number": "REF1234567890"
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "errors": {
                        "additionalProp1": [
                          "string"
                        ],
                        "additionalProp2": [
                          "string"
                        ],
                        "additionalProp3": [
                          "string"
                        ]
                      },
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "x-stoplight": {
          "id": "zil2zsci8afsa"
        },
        "operationId": "epos-get-all-transactions"
      },
      "parameters": []
    },
    "/pos/v1/terminals/{terminal_id}/transactions": {
      "get": {
        "tags": [
          "Terminal"
        ],
        "summary": "Get Terminal Transactions by Id",
        "parameters": [
          {
            "name": "terminal_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "example": 1
            },
            "description": "The page with transactions to be returned. Default is 1"
          },
          {
            "name": "size",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "example": 20
            },
            "description": "The number of returned transactions transactions. Possible values are 1÷100. Default value is 20."
          },
          {
            "name": "from_date",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time",
              "example": "2025-04-20"
            },
            "description": "Starting date of the transaction list in format \"YYYY-MM-DD\"."
          },
          {
            "name": "to_date",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time",
              "example": "2025-04-21"
            },
            "description": "End date of the transaction list, default is “today” if not given. Format is \"YYYY-MM-DD\"."
          },
          {
            "name": "rrn",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "stan",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "System Trace Audit Number"
          },
          {
            "name": "from_amount",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            },
            "description": "The minimum amount of a transactions."
          },
          {
            "name": "to_amount",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            },
            "description": "The maximum amount of a transactions."
          },
          {
            "name": "reference_number",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "The reference number of a transaction. Can be filtered by custom client reference."
          },
          {
            "name": "X-Session",
            "in": "header",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "name": "X-Partner-Id",
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "name": "X-Application-Id",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Application.Common.Models.DTO.GetTerminalTransactionsByIdResponseDTO"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "transactions": [
                        {
                          "terminal_id": "80026232",
                          "date": "2025-10-13 10:12:06",
                          "terminal_name": "Demo Ultra",
                          "outlet_name": "string",
                          "tran_status": "Approved",
                          "payment_status": "Paid",
                          "amount": 0.22,
                          "currency": "EUR",
                          "rrn": "528607108520",
                          "stan": "000029",
                          "settlement_date": "2025-10-13 10:12:16",
                          "settlement_amount": 0.22,
                          "settlement_currency": "EUR",
                          "fee": 0.01,
                          "pan": "*9766",
                          "card_scheme": "Business Premium Debit",
                          "payment_reference": "POSA015257Y6IR59",
                          "billing_descriptor": "DEMO ULTRA",
                          "reference_number": "REF1234567890"
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "errors": {
                        "additionalProp1": [
                          "string"
                        ],
                        "additionalProp2": [
                          "string"
                        ],
                        "additionalProp3": [
                          "string"
                        ]
                      },
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "x-stoplight": {
          "id": "qv031cc9gioyu"
        },
        "description": "List transactions made on a specific POS device",
        "operationId": "epos-get-terminal-transactions-by-id"
      },
      "parameters": [
        {
          "schema": {
            "type": "string"
          },
          "name": "terminal_id",
          "in": "path",
          "required": true
        }
      ]
    },
    "/pos/v1/terminals/models": {
      "get": {
        "tags": [
          "Terminal"
        ],
        "summary": "Get Terminal Models",
        "parameters": [
          {
            "name": "X-Session",
            "in": "header",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "required": true,
            "name": "X-Partner-Id"
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "required": true,
            "name": "X-Application-Id"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Application.Common.Models.DTO.TerminalModelResponseDTO"
                  }
                },
                "examples": {
                  "Example 1": {
                    "value": [
                      {
                        "code": "N96",
                        "description": "myPOS Ultra"
                      }
                    ]
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "errors": {
                        "additionalProp1": [
                          "string"
                        ],
                        "additionalProp2": [
                          "string"
                        ],
                        "additionalProp3": [
                          "string"
                        ]
                      },
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "x-stoplight": {
          "id": "tojyjvov4h0ap"
        },
        "operationId": "epos-get-terminal-models"
      },
      "parameters": []
    },
    "/pos/v1/terminals/outlets": {
      "get": {
        "tags": [
          "Terminal"
        ],
        "summary": "Get Terminal Оutlets",
        "parameters": [
          {
            "name": "X-Session",
            "in": "header",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "required": true,
            "name": "X-Partner-Id"
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "required": true,
            "name": "X-Application-Id"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Application.Common.Models.DTO.OutletResponseDTO"
                  }
                },
                "examples": {
                  "Example 1": {
                    "value": [
                      {
                        "outlet_id": 20577,
                        "name": "DEMO DEMO"
                      }
                    ]
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "errors": {
                        "additionalProp1": [
                          "string"
                        ],
                        "additionalProp2": [
                          "string"
                        ],
                        "additionalProp3": [
                          "string"
                        ]
                      },
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "x-stoplight": {
          "id": "0ho9o1yrqheft"
        },
        "operationId": "epos-get-terminal-outlets"
      },
      "parameters": []
    },
    "/pos/v1/terminals/activation": {
      "post": {
        "tags": [
          "Terminal"
        ],
        "summary": "Terminal Activation Code",
        "parameters": [
          {
            "name": "X-Session",
            "in": "header",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "name": "X-Partner-Id",
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "name": "X-Application-Id",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Application.Common.Models.DTO.ActivationDeactivationResponseDTO"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "code": "11315157"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "errors": {
                        "additionalProp1": [
                          "string"
                        ],
                        "additionalProp2": [
                          "string"
                        ],
                        "additionalProp3": [
                          "string"
                        ]
                      },
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "x-stoplight": {
          "id": "h1g7vludyhfct"
        },
        "description": "Generate Activation code for a terminal.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "product_code",
                  "currency",
                  "account_number",
                  "billing_descriptor"
                ],
                "properties": {
                  "outlet_id": {
                    "type": "integer",
                    "x-stoplight": {
                      "id": "np3jcouhf6stj"
                    },
                    "description": "Receive the available Outlets from \"**Terminal Оutlets**\" endpoint"
                  },
                  "product_code": {
                    "type": "string",
                    "x-stoplight": {
                      "id": "ivmhybozjjyek"
                    },
                    "description": "**Box Barcode** or **Serial Number**"
                  },
                  "currency": {
                    "type": "string",
                    "x-stoplight": {
                      "id": "udp5w05kxmoh1"
                    }
                  },
                  "account_number": {
                    "type": "string",
                    "x-stoplight": {
                      "id": "frb2vazx2xk1e"
                    }
                  },
                  "billing_descriptor": {
                    "type": "string",
                    "x-stoplight": {
                      "id": "oyyci0wk8utgs"
                    }
                  },
                  "terminal_name": {
                    "type": "string",
                    "x-stoplight": {
                      "id": "1tyb85b5uloka"
                    },
                    "description": "Device name"
                  }
                }
              },
              "examples": {
                "Example 1": {
                  "value": {
                    "outlet_id": 123140,
                    "product_code": "D21051564208",
                    "currency": "EUR",
                    "account_number": "02285088",
                    "billing_descriptor": "",
                    "terminal_name": "My Device"
                  }
                }
              }
            }
          },
          "description": "The related merchant (from **X-Session**) must to contains permission for **Device Management**."
        },
        "operationId": "epos-terminal-activation-code"
      },
      "parameters": []
    },
    "/pos/v1/terminals/deactivation": {
      "post": {
        "tags": [
          "Terminal"
        ],
        "summary": "Terminal Deactivation",
        "parameters": [
          {
            "name": "X-Session",
            "in": "header",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "required": true,
            "name": "X-Partner-Id"
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "required": true,
            "name": "X-Application-Id"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Application.Common.Models.DTO.ActivationDeactivationResponseDTO"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "terminal_id": "80026232"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "errors": {
                        "additionalProp1": [
                          "string"
                        ],
                        "additionalProp2": [
                          "string"
                        ],
                        "additionalProp3": [
                          "string"
                        ]
                      },
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "x-stoplight": {
          "id": "jv6bxzlsvlp4z"
        },
        "description": "Generate Deactivation Code.",
        "operationId": "epos-terminal-deactivation-code",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Application.Common.Models.DTO.ActivationDeactivationResponseDTO"
              },
              "examples": {
                "Example 1": {
                  "value": {
                    "code": "string"
                  }
                }
              }
            }
          }
        }
      },
      "parameters": []
    },
    "/pos/v1/terminals/receipt/{payment_reference}": {
      "get": {
        "tags": [
          "Terminal"
        ],
        "summary": "Get Terminal Receipt By Payment Reference",
        "parameters": [
          {
            "name": "payment_reference",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "X-Session",
            "in": "header",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "name": "X-Partner-Id",
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "name": "X-Application-Id",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Application.Common.Models.DTO.GetTerminalReceiptResponseDTO"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "is_declined": 0,
                      "receipt_layout_version": 0,
                      "exchange_rate": "string",
                      "date": "2025-04-03",
                      "time": "17:22:04",
                      "stan": "000015",
                      "terminal_id": "80025374",
                      "merchant_id": "000000010625902",
                      "merchant_name": "DEMO",
                      "address_line_1": "BULGARIA",
                      "address_line_2": "BULGARIA",
                      "pl_card_balance": "string",
                      "pl_card_balance_currency": "string",
                      "resp_code": "string",
                      "reference_number": "REF1234567890",
                      "application_preferred_name": "Visa",
                      "installment_type": "string",
                      "installment_number": "string",
                      "installment_interest_rate": "string",
                      "installment_first_amount": "string",
                      "installment_subseq_amount": "string",
                      "installment_annual_perc_rate": "string",
                      "installment_fee_rate": "string",
                      "installment_total_amount": "string",
                      "transaction_preauth_code": "string",
                      "card_scheme": "Business Premium Debit",
                      "pan": "\"*9766",
                      "emboss_name": "string",
                      "amount": "1.00",
                      "currency": "EUR",
                      "auth_code": "VISSIM",
                      "rrn": "509314069273",
                      "aid": "A0000000031010",
                      "amount_tip": "0",
                      "amount_total": "0",
                      "operator_code": "string",
                      "dcc_amount": "string",
                      "dcc_currency": "string",
                      "tran_type": "string",
                      "sign_row_1": "string",
                      "sign_row_2": "string",
                      "sign_row_3": "string",
                      "exchange_rate_translation": "string",
                      "tran_status": "Approved",
                      "receipt_footer_row_1": "string",
                      "receipt_footer_row_2": "string"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "errors": {
                        "additionalProp1": [
                          "string"
                        ],
                        "additionalProp2": [
                          "string"
                        ],
                        "additionalProp3": [
                          "string"
                        ]
                      },
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "x-stoplight": {
          "id": "64loqsnsf0chd"
        },
        "operationId": "epos-get-terminal-receipt-by-payment-reference"
      },
      "parameters": [
        {
          "schema": {
            "type": "string"
          },
          "name": "payment_reference",
          "in": "path",
          "required": true
        }
      ]
    },
    "/pos/v1/terminals/{terminal_id}/refund": {
      "post": {
        "tags": [
          "Terminal"
        ],
        "summary": "Terminal Refund",
        "parameters": [
          {
            "name": "terminal_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "X-Session",
            "in": "header",
            "schema": {
              "type": "string"
            },
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "name": "X-Partner-Id",
            "required": true
          },
          {
            "schema": {
              "type": "string"
            },
            "in": "header",
            "name": "X-Application-Id",
            "required": true
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ValidationProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "errors": {
                        "additionalProp1": [
                          "string"
                        ],
                        "additionalProp2": [
                          "string"
                        ],
                        "additionalProp3": [
                          "string"
                        ]
                      },
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                },
                "examples": {
                  "Example 1": {
                    "value": {
                      "type": "string",
                      "title": "string",
                      "status": 0,
                      "detail": "string",
                      "instance": "string",
                      "additionalProp1": "string",
                      "additionalProp2": "string",
                      "additionalProp3": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "x-stoplight": {
          "id": "5dcbf7j9h6u61"
        },
        "operationId": "epos-terminal-refund",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Application.Common.Models.DTO.TerminalRefundRequestDTO"
              },
              "examples": {
                "Example 1": {
                  "value": {
                    "reference_number": "REF1234567890",
                    "amount": 0.22
                  }
                }
              }
            }
          }
        }
      },
      "parameters": [
        {
          "schema": {
            "type": "string"
          },
          "name": "terminal_id",
          "in": "path",
          "required": true
        }
      ]
    }
  },
  "components": {
    "schemas": {
      "Application.Common.Models.DTO.ActivationDeactivationResponseDTO": {
        "type": "object",
        "x-examples": {
          "Example 1": {
            "code": "11315157"
          }
        },
        "title": "Application.Common.Models.DTO.ActivationDeactivationResponseDTO",
        "properties": {
          "code": {
            "type": "string",
            "example": "11315157",
            "x-stoplight": {
              "id": "vnupo6cfldiwo"
            }
          }
        }
      },
      "Application.Common.Models.DTO.CreateAmountDTO": {
        "type": "object",
        "properties": {
          "value": {
            "type": "integer",
            "format": "int32",
            "example": 1500
          },
          "currency_code": {
            "type": "string",
            "nullable": true,
            "example": "EUR"
          },
          "tip": {
            "type": "integer",
            "format": "int32",
            "example": 500
          }
        },
        "additionalProperties": false,
        "x-stoplight": {
          "id": "ti1z2h0kjul0r"
        },
        "title": "",
        "x-examples": {
          "Example 1": {
            "value": 1500,
            "currency_code": "EUR",
            "tip": 500
          }
        }
      },
      "Application.Common.Models.DTO.GetPaymentByIdResponseDTO": {
        "type": "object",
        "x-examples": {
          "Example 1": {
            "payment_id": "67f826f21b62d43a1f65833a",
            "status": "InProgress",
            "amount": {
              "value": 1500,
              "currency_code": "EUR",
              "tip": 500
            },
            "created_at": "2025-04-10T20:15:46.537Z",
            "updated_at": "0001-01-01T00:00:00Z",
            "reference_number": "REF1234567890",
            "description": "Payment for order #5678",
            "expire_at": "0001-01-01T00:00:00",
            "dcc_amount": 5,
            "dcc_card_exchange_rate": 0,
            "stan": "000408",
            "auth_code": "VISSIM",
            "transaction_date_local": "250620165140",
            "status_message": "TRANSACTION_SUCCESS",
            "dcc_available": false,
            "reference_type": "OFF",
            "signature_required": false,
            "aid": "A0000000031010",
            "card_qualifier": "VISA",
            "response_code": "00",
            "pan": "****6693",
            "rrn": "517114115174"
          }
        },
        "properties": {
          "payment_id": {
            "type": "string",
            "example": "67f826f21b62d43a1f65833a"
          },
          "status": {
            "type": "string",
            "example": "InProgress"
          },
          "amount": {
            "$ref": "#/components/schemas/Application.Common.Models.DTO.CreateAmountDTO"
          },
          "created_at": {
            "type": "string",
            "example": "2025-10-27T07:35:48"
          },
          "updated_at": {
            "type": "string",
            "example": "2025-10-27T07:35:48"
          },
          "reference_number": {
            "type": "string",
            "example": "REF1234567890"
          },
          "description": {
            "type": "string",
            "example": "Test request"
          },
          "expire_at": {
            "type": "string",
            "example": "2025-11-26T07:35:48"
          },
          "dcc_amount": {
            "type": "integer",
            "example": 0
          },
          "dcc_card_exchange_rate": {
            "type": "integer",
            "example": 0
          },
          "stan": {
            "type": "string",
            "example": "000408"
          },
          "auth_code": {
            "type": "string",
            "example": "VISSIM"
          },
          "transaction_date_local": {
            "type": "string",
            "example": "250620165140"
          },
          "status_message": {
            "type": "string",
            "example": "TRANSACTION_SUCCESS"
          },
          "dcc_available": {
            "type": "boolean",
            "default": false
          },
          "reference_type": {
            "type": "string",
            "example": "OFF"
          },
          "signature_required": {
            "type": "boolean",
            "default": false
          },
          "aid": {
            "type": "string",
            "example": "A0000000031010"
          },
          "card_qualifier": {
            "type": "string",
            "example": "VISA"
          },
          "response_code": {
            "type": "string",
            "example": "00"
          },
          "pan": {
            "type": "string",
            "example": "****6693"
          },
          "rrn": {
            "type": "string",
            "example": "517114115174"
          }
        }
      },
      "Application.Common.Models.DTO.GetTerminalDetailsResponseDTO": {
        "type": "object",
        "additionalProperties": false,
        "x-stoplight": {
          "id": "xn6m9ka0wzrhw"
        },
        "properties": {
          "terminal_name": {
            "type": "string",
            "example": "Demo Ultra",
            "nullable": true
          },
          "outlet_id": {
            "type": "integer",
            "format": "int64",
            "example": 20577
          },
          "outlet_name": {
            "type": "string",
            "example": "test",
            "nullable": true
          },
          "device_currency": {
            "type": "string",
            "example": "EUR",
            "nullable": true
          },
          "status": {
            "type": "string",
            "example": "Active",
            "nullable": true
          },
          "last_transaction_date": {
            "type": "string",
            "example": "2025-10-13 10:12:14",
            "nullable": true
          },
          "transactions_count": {
            "type": "integer",
            "format": "int32",
            "example": 11
          },
          "settlement_account_number": {
            "type": "string",
            "example": "50480563548",
            "nullable": true
          },
          "settlement_account_name": {
            "type": "string",
            "example": "EUR Account",
            "nullable": true
          },
          "settlement_account_currency": {
            "type": "string",
            "example": "EUR",
            "nullable": true
          },
          "billing_descriptor": {
            "type": "string",
            "example": "DEMO ULTRA",
            "nullable": true
          },
          "receipt_footer_row_1": {
            "type": "string",
            "nullable": true
          },
          "receipt_footer_row_2": {
            "type": "string",
            "nullable": true
          },
          "forbidden_preauthorization": {
            "type": "string",
            "example": "False",
            "nullable": true
          },
          "forbidden_moto": {
            "type": "string",
            "example": "True",
            "nullable": true
          },
          "forbidden_reversal": {
            "type": "string",
            "example": "False",
            "nullable": true
          },
          "forbidden_refund": {
            "type": "string",
            "example": "False",
            "nullable": true
          },
          "forbidden_topup": {
            "type": "string",
            "example": "False",
            "nullable": true
          },
          "card_topup_enabled": {
            "type": "string",
            "example": "False",
            "nullable": true
          },
          "terminal_id": {
            "type": "string",
            "example": "80026232",
            "nullable": true
          },
          "serial_number": {
            "type": "string",
            "example": "N96N960WC15224",
            "nullable": true
          },
          "model": {
            "type": "string",
            "example": "N96",
            "nullable": true
          }
        },
        "x-examples": {
          "Example 1": {
            "terminal_name": "Demo Ultra",
            "outlet_id": 20577,
            "outlet_name": "test",
            "device_currency": "EUR",
            "status": "Active",
            "last_transaction_date": "2025-10-13 10:12:14",
            "transactions_count": 11,
            "settlement_account_number": "50480563548",
            "settlement_account_name": "EUR Account",
            "settlement_account_currency": "EUR",
            "billing_descriptor": "DEMO ULTRA",
            "receipt_footer_row_1": "string",
            "receipt_footer_row_2": "string",
            "forbidden_preauthorization": "False",
            "forbidden_moto": "True",
            "forbidden_reversal": "False",
            "forbidden_refund": "False",
            "forbidden_topup": "False",
            "card_topup_enabled": "False",
            "terminal_id": "80026232",
            "serial_number": "N96N960WC15224",
            "model": "N96"
          }
        }
      },
      "Application.Common.Models.DTO.GetTerminalPaymentsByTidResponseDTO": {
        "type": "object",
        "x-examples": {
          "Example 1": {
            "items": [
              {
                "payment_id": "67f52eb66d0295252b5ec009",
                "status": "InProgress",
                "amount": {
                  "value": 1500,
                  "currency_code": "EUR",
                  "tip": 500
                },
                "created_at": "2025-05-02T09:38:59.4483833+03:00",
                "updated_at": "0001-01-01T00:00:00",
                "reference_number": "REF0000000000",
                "description": "Test request",
                "expire_at": "0001-01-01T00:00:00",
                "dcc_amount": 5,
                "dcc_card_exchange_rate": 0,
                "stan": "000408",
                "auth_code": "VISSIM",
                "transaction_date_local": "250620165140",
                "status_message": "TRANSACTION_SUCCESS",
                "dcc_available": false,
                "reference_type": "OFF",
                "signature_required": false,
                "aid": "A0000000031010",
                "card_qualifier": "VISA",
                "response_code": "00",
                "pan": "****6693",
                "rrn": "517114115174"
              }
            ],
            "page": 0,
            "page_size": 0,
            "total_pages": 0,
            "total_count": 0,
            "has_previous_page": true,
            "has_next_page": true
          }
        },
        "title": "Application.Common.Models.DTO.GetTerminalPaymentsByTidResponseDTO",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "payment_id": {
                  "type": "string",
                  "example": "67f52eb66d0295252b5ec009"
                },
                "status": {
                  "type": "string",
                  "example": "InProgress"
                },
                "amount": {
                  "$ref": "#/components/schemas/Application.Common.Models.DTO.CreateAmountDTO"
                },
                "created_at": {
                  "type": "string",
                  "example": "2025-05-02T09:38:59.4483833+03:00"
                },
                "updated_at": {
                  "type": "string",
                  "example": "0001-01-01T00:00:00"
                },
                "reference_number": {
                  "type": "string",
                  "example": "REF1234567890"
                },
                "description": {
                  "type": "string",
                  "example": "Test request"
                },
                "expire_at": {
                  "type": "string",
                  "example": "2025-11-26T07:35:48"
                },
                "dcc_amount": {
                  "type": "integer",
                  "example": 0
                },
                "dcc_card_exchange_rate": {
                  "type": "integer",
                  "example": 0
                },
                "stan": {
                  "type": "string",
                  "example": "000408"
                },
                "auth_code": {
                  "type": "string",
                  "example": "VISSIM"
                },
                "transaction_date_local": {
                  "type": "string",
                  "example": "250620165140"
                },
                "status_message": {
                  "type": "string",
                  "example": "TRANSACTION_SUCCESS"
                },
                "dcc_available": {
                  "type": "boolean",
                  "default": false
                },
                "reference_type": {
                  "type": "string",
                  "example": "OFF"
                },
                "signature_required": {
                  "type": "boolean",
                  "default": false
                },
                "aid": {
                  "type": "string",
                  "example": "A0000000031010"
                },
                "card_qualifier": {
                  "type": "string",
                  "example": "VISA"
                },
                "response_code": {
                  "type": "string",
                  "example": "00"
                },
                "pan": {
                  "type": "string",
                  "example": "****6693"
                },
                "rrn": {
                  "type": "string",
                  "example": "517114115174"
                }
              }
            }
          },
          "page": {
            "type": "integer",
            "example": 0
          },
          "page_size": {
            "type": "integer",
            "example": 0
          },
          "total_pages": {
            "type": "integer",
            "example": 0
          },
          "total_count": {
            "type": "integer",
            "example": 0
          },
          "has_previous_page": {
            "type": "boolean",
            "default": true
          },
          "has_next_page": {
            "type": "boolean",
            "default": true
          }
        }
      },
      "Application.Common.Models.DTO.GetTerminalReceiptResponseDTO": {
        "type": "object",
        "additionalProperties": false,
        "x-stoplight": {
          "id": "mqoe44qpqdd58"
        },
        "x-examples": {
          "Example 1": {
            "is_declined": 0,
            "receipt_layout_version": 0,
            "exchange_rate": "string",
            "date": "2025-04-03",
            "time": "17:22:04",
            "stan": "000015",
            "terminal_id": "80025374",
            "merchant_id": "000000010625902",
            "merchant_name": "DEMO",
            "address_line_1": "BULGARIA",
            "address_line_2": "BULGARIA",
            "pl_card_balance": "string",
            "pl_card_balance_currency": "string",
            "resp_code": "string",
            "reference_number": "REF1234567890",
            "application_preferred_name": "Visa",
            "installment_type": "string",
            "installment_number": "string",
            "installment_interest_rate": "string",
            "installment_first_amount": "string",
            "installment_subseq_amount": "string",
            "installment_annual_perc_rate": "string",
            "installment_fee_rate": "string",
            "installment_total_amount": "string",
            "transaction_preauth_code": "string",
            "card_scheme": "Business Premium Debit",
            "pan": "\"*9766",
            "emboss_name": "string",
            "amount": "1.00",
            "currency": "EUR",
            "auth_code": "VISSIM",
            "rrn": "509314069273",
            "aid": "A0000000031010",
            "amount_tip": "0",
            "amount_total": "0",
            "operator_code": "string",
            "dcc_amount": "string",
            "dcc_currency": "string",
            "tran_type": "string",
            "sign_row_1": "string",
            "sign_row_2": "string",
            "sign_row_3": "string",
            "exchange_rate_translation": "string",
            "tran_status": "Approved",
            "receipt_footer_row_1": "string",
            "receipt_footer_row_2": "string"
          }
        },
        "title": "Application.Common.Models.DTO.GetTerminalReceiptResponseDTO",
        "properties": {
          "is_declined": {
            "type": "integer",
            "format": "int32",
            "example": 0
          },
          "receipt_layout_version": {
            "type": "integer",
            "format": "int32",
            "example": 0
          },
          "exchange_rate": {
            "type": "string",
            "example": "string",
            "nullable": true
          },
          "date": {
            "type": "string",
            "example": "2025-04-03",
            "nullable": true
          },
          "time": {
            "type": "string",
            "example": "17:22:04",
            "nullable": true
          },
          "stan": {
            "type": "string",
            "example": "000015",
            "nullable": true
          },
          "terminal_id": {
            "type": "string",
            "example": "80025374",
            "nullable": true
          },
          "merchant_id": {
            "type": "string",
            "example": "000000010625902",
            "nullable": true
          },
          "merchant_name": {
            "type": "string",
            "example": "DEMO",
            "nullable": true
          },
          "address_line_1": {
            "type": "string",
            "example": "BULGARIA",
            "nullable": true
          },
          "address_line_2": {
            "type": "string",
            "example": "BULGARIA",
            "nullable": true
          },
          "pl_card_balance": {
            "type": "string",
            "example": "string",
            "nullable": true
          },
          "pl_card_balance_currency": {
            "type": "string",
            "example": "string",
            "nullable": true
          },
          "resp_code": {
            "type": "string",
            "example": "string",
            "nullable": true
          },
          "reference_number": {
            "type": "string",
            "example": "REF1234567890",
            "nullable": true
          },
          "application_preferred_name": {
            "type": "string",
            "example": "Visa",
            "nullable": true
          },
          "installment_type": {
            "type": "string",
            "example": "string",
            "nullable": true
          },
          "installment_number": {
            "type": "string",
            "example": "string",
            "nullable": true
          },
          "installment_interest_rate": {
            "type": "string",
            "example": "string",
            "nullable": true
          },
          "installment_first_amount": {
            "type": "string",
            "example": "string",
            "nullable": true
          },
          "installment_subseq_amount": {
            "type": "string",
            "nullable": true
          },
          "installment_annual_perc_rate": {
            "type": "string",
            "example": "string",
            "nullable": true
          },
          "installment_fee_rate": {
            "type": "string",
            "example": "string",
            "nullable": true
          },
          "installment_total_amount": {
            "type": "string",
            "example": "string",
            "nullable": true
          },
          "transaction_preauth_code": {
            "type": "string",
            "example": "string",
            "nullable": true
          },
          "card_scheme": {
            "type": "string",
            "example": "Business Premium Debit",
            "nullable": true
          },
          "pan": {
            "type": "string",
            "example": "\"*9766",
            "nullable": true
          },
          "emboss_name": {
            "type": "string",
            "example": "string",
            "nullable": true
          },
          "amount": {
            "type": "string",
            "example": "1.00",
            "nullable": true
          },
          "currency": {
            "type": "string",
            "example": "EUR",
            "nullable": true
          },
          "auth_code": {
            "type": "string",
            "example": "VISSIM",
            "nullable": true
          },
          "rrn": {
            "type": "string",
            "example": "509314069273",
            "nullable": true
          },
          "aid": {
            "type": "string",
            "example": "A0000000031010",
            "nullable": true
          },
          "amount_tip": {
            "type": "string",
            "example": "0",
            "nullable": true
          },
          "amount_total": {
            "type": "string",
            "example": "0",
            "nullable": true
          },
          "operator_code": {
            "type": "string",
            "example": "string",
            "nullable": true
          },
          "dcc_amount": {
            "type": "string",
            "example": "string",
            "nullable": true
          },
          "dcc_currency": {
            "type": "string",
            "example": "string",
            "nullable": true
          },
          "tran_type": {
            "type": "string",
            "nullable": true
          },
          "sign_row_1": {
            "type": "string",
            "example": "string",
            "nullable": true
          },
          "sign_row_2": {
            "type": "string",
            "example": "string",
            "nullable": true
          },
          "sign_row_3": {
            "type": "string",
            "example": "string",
            "nullable": true
          },
          "exchange_rate_translation": {
            "type": "string",
            "nullable": true
          },
          "tran_status": {
            "type": "string",
            "example": "Approved",
            "nullable": true
          },
          "receipt_footer_row_1": {
            "type": "string",
            "example": "string",
            "nullable": true
          },
          "receipt_footer_row_2": {
            "type": "string",
            "example": "string",
            "nullable": true
          }
        }
      },
      "Application.Common.Models.DTO.GetTerminalResponseDTO": {
        "type": "object",
        "x-examples": {
          "Example 2": {
            "pagination": {
              "page_size": 0,
              "page": 0,
              "total": 0
            },
            "terminals": [
              {
                "terminal_id": "80026232",
                "serial_number": "N96N960WC15224",
                "model": "N96"
              }
            ]
          }
        },
        "title": "Application.Common.Models.DTO.GetTerminalResponseDTO",
        "properties": {
          "pagination": {
            "type": "object",
            "properties": {
              "page_size": {
                "type": "integer",
                "example": 0
              },
              "page": {
                "type": "integer",
                "example": 0
              },
              "total": {
                "type": "integer",
                "example": 0
              }
            }
          },
          "terminals": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "terminal_id": {
                  "type": "string",
                  "example": "80026232"
                },
                "serial_number": {
                  "type": "string",
                  "example": "N96N960WC15224"
                },
                "model": {
                  "type": "string",
                  "example": "N96"
                }
              }
            }
          }
        }
      },
      "Application.Common.Models.DTO.GetTerminalTransactionsByIdResponseDTO": {
        "type": "object",
        "properties": {
          "transactions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Application.Common.Models.DTO.TerminalTransactionDTO"
            },
            "nullable": true
          }
        },
        "additionalProperties": false,
        "x-stoplight": {
          "id": "127s9pz1c3hax"
        }
      },
      "Application.Common.Models.DTO.GetTerminalTransactionsResponseDTO": {
        "type": "object",
        "x-examples": {
          "Example 1": {
            "pagination": {
              "page_size": 0,
              "page": 0,
              "total": 0
            },
            "transactions": [
              {
                "terminal_id": "80026232",
                "date": "2025-10-13 10:12:06",
                "terminal_name": "Demo Ultra",
                "outlet_name": "string",
                "tran_status": "Approved",
                "payment_status": "Paid",
                "amount": 0.22,
                "currency": "EUR",
                "rrn": "528607108520",
                "stan": "000029",
                "settlement_date": "2025-10-13 10:12:16",
                "settlement_amount": 0.22,
                "settlement_currency": "EUR",
                "fee": 0.01,
                "pan": "*9766",
                "card_scheme": "Business Premium Debit",
                "payment_reference": "POSA015257Y6IR59",
                "billing_descriptor": "DEMO ULTRA",
                "reference_number": "REF1234567890"
              }
            ]
          }
        },
        "title": "Application.Common.Models.DTO.GetTerminalTransactionsResponseDTO",
        "properties": {
          "pagination": {
            "type": "object",
            "properties": {
              "page_size": {
                "type": "integer",
                "example": 0
              },
              "page": {
                "type": "integer",
                "example": 0
              },
              "total": {
                "type": "integer",
                "example": 0
              }
            }
          },
          "transactions": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "terminal_id": {
                  "type": "string",
                  "example": "80026232"
                },
                "date": {
                  "type": "string",
                  "example": "2025-10-13 10:12:06"
                },
                "terminal_name": {
                  "type": "string",
                  "example": "Demo Ultra"
                },
                "outlet_name": {
                  "type": "string",
                  "example": "string"
                },
                "tran_status": {
                  "type": "string",
                  "example": "Approved"
                },
                "payment_status": {
                  "type": "string",
                  "example": "Paid"
                },
                "amount": {
                  "type": "integer",
                  "example": 0.22
                },
                "currency": {
                  "type": "string",
                  "example": "EUR"
                },
                "rrn": {
                  "type": "string",
                  "example": "528607108520"
                },
                "stan": {
                  "type": "string",
                  "example": "000029"
                },
                "settlement_date": {
                  "type": "string",
                  "example": "2025-10-13 10:12:16"
                },
                "settlement_amount": {
                  "type": "integer",
                  "example": 0.22
                },
                "settlement_currency": {
                  "type": "string",
                  "example": "EUR"
                },
                "fee": {
                  "type": "integer",
                  "example": 0.01
                },
                "pan": {
                  "type": "string",
                  "example": "*9766"
                },
                "card_scheme": {
                  "type": "string",
                  "example": "Business Premium Debit"
                },
                "payment_reference": {
                  "type": "string",
                  "example": "POSA015257Y6IR59"
                },
                "billing_descriptor": {
                  "type": "string",
                  "example": "DEMO ULTRA"
                },
                "reference_number": {
                  "type": "string",
                  "example": "REF1234567890"
                }
              }
            }
          }
        }
      },
      "Application.Common.Models.DTO.OutletResponseDTO": {
        "type": "object",
        "additionalProperties": false,
        "x-stoplight": {
          "id": "qyl7omticbiv3"
        },
        "properties": {
          "outlet_id": {
            "type": "integer",
            "format": "int64",
            "example": 20577
          },
          "name": {
            "type": "string",
            "example": "DEMO DEMO",
            "nullable": true
          }
        },
        "x-examples": {
          "Example 1": {
            "outlet_id": 20577,
            "name": "DEMO DEMO"
          }
        }
      },
      "Application.Common.Models.DTO.PaymentInfoDTO": {
        "type": "object",
        "x-examples": {
          "Example 1": {
            "request_id": "67f7d0a2f7151530e5996a0d",
            "status": "InProgress",
            "app_name": "CashApp",
            "app_version": "1.0.0",
            "operator_code": "10",
            "reference_number": "REF1234567890",
            "description": "Client cancelled the order."
          }
        },
        "title": "Application.Common.Models.DTO.PaymentInfoDTO",
        "properties": {
          "request_id": {
            "type": "string",
            "example": "67f7d0a2f7151530e5996a0d"
          },
          "status": {
            "type": "string",
            "example": "InProgress"
          },
          "app_name": {
            "type": "string",
            "example": "CashApp"
          },
          "app_version": {
            "type": "string",
            "example": "1.0.0"
          },
          "operator_code": {
            "type": "string",
            "example": "10"
          },
          "reference_number": {
            "type": "string",
            "example": "REF1234567890"
          },
          "description": {
            "type": "string",
            "example": "Client cancelled the order"
          }
        }
      },
      "Application.Common.Models.DTO.PaymentRefundRequestDTO": {
        "type": "object",
        "x-examples": {
          "Example 1": {
            "amount": {
              "value": 1500,
              "currency_code": "EUR",
              "tip": 500
            },
            "description": "Refund issued due to customer complaint",
            "terminal_id": "80123457",
            "app_name": "RefundApp",
            "app_version": "2.1.0"
          }
        },
        "title": "Application.Common.Models.DTO.PaymentRefundRequestDTO",
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/Application.Common.Models.DTO.CreateAmountDTO"
          },
          "description": {
            "type": "string",
            "example": "Refund issued due to customer complaint"
          },
          "terminal_id": {
            "type": "string",
            "example": "80123457"
          },
          "app_name": {
            "type": "string",
            "example": "RefundApp"
          },
          "app_version": {
            "type": "string",
            "example": "2.1.0"
          }
        }
      },
      "Application.Common.Models.DTO.PaymentRequestDTO": {
        "type": "object",
        "x-examples": {
          "Example 2": {
            "reference_number": "string",
            "amount": {
              "value": 1500,
              "currency_code": "EUR",
              "tip": 500
            },
            "description": "string",
            "terminal_id": "string",
            "app_name": "string",
            "app_version": "string",
            "operator_code": "string"
          }
        },
        "properties": {
          "reference_number": {
            "type": "string"
          },
          "amount": {
            "$ref": "#/components/schemas/Application.Common.Models.DTO.CreateAmountDTO"
          },
          "description": {
            "type": "string"
          },
          "terminal_id": {
            "type": "string"
          },
          "app_name": {
            "type": "string"
          },
          "app_version": {
            "type": "string"
          },
          "operator_code": {
            "type": "string"
          }
        },
        "title": "Application.Common.Models.DTO.PaymentRequestDTO"
      },
      "Application.Common.Models.DTO.PaymentReversalByIdRequestDTO": {
        "type": "object",
        "x-examples": {
          "Example 1": {
            "description": "Customer requested reversal due to duplicate transaction",
            "terminal_id": "80123457",
            "app_name": "MyPOSApp",
            "app_version": "1.0.3"
          }
        },
        "properties": {
          "description": {
            "type": "string",
            "example": "Customer requested reversal due to duplicate transaction"
          },
          "terminal_id": {
            "type": "string",
            "example": "80123457"
          },
          "app_name": {
            "type": "string",
            "example": "MyPOSApp"
          },
          "app_version": {
            "type": "string",
            "example": "1.0.3"
          }
        }
      },
      "Application.Common.Models.DTO.PaymentReversalByIdResponseDTO": {
        "type": "object",
        "x-examples": {
          "Example 1": {
            "payment_id": "67f82b071b62d43a1f65833b",
            "status": "InProgress",
            "amount": {
              "value": 1500,
              "currency_code": "EUR",
              "tip": 500
            },
            "created_at": "2025-10-27T07:56:24",
            "updated_at": "2025-10-27T07:56:24",
            "reference_number": "REF1234567890",
            "description": "Test request",
            "expire_at": "2025-11-26T07:35:48"
          }
        },
        "title": "Application.Common.Models.DTO.PaymentReversalByIdResponseDTO",
        "properties": {
          "payment_id": {
            "type": "string",
            "example": "67f82b071b62d43a1f65833b"
          },
          "status": {
            "type": "string",
            "example": "InProgress"
          },
          "amount": {
            "$ref": "#/components/schemas/Application.Common.Models.DTO.CreateAmountDTO"
          },
          "created_at": {
            "type": "string",
            "example": "2025-10-27T07:56:24"
          },
          "updated_at": {
            "type": "string",
            "example": "2025-10-27T07:56:24"
          },
          "reference_number": {
            "type": "string",
            "example": "REF1234567890"
          },
          "description": {
            "type": "string",
            "example": "Test request"
          },
          "expire_at": {
            "type": "string",
            "example": "2025-11-26T07:35:48"
          }
        }
      },
      "Application.Common.Models.DTO.TerminalModelResponseDTO": {
        "type": "object",
        "additionalProperties": false,
        "x-stoplight": {
          "id": "ez7ft5rxu27ls"
        },
        "title": "Application.Common.Models.DTO.TerminalModelResponseDTO",
        "properties": {
          "code": {
            "type": "string",
            "example": "N96",
            "nullable": true
          },
          "description": {
            "type": "string",
            "example": "myPOS Ultra",
            "nullable": true
          }
        },
        "x-examples": {
          "Example 1": {
            "code": "N96",
            "description": "myPOS Ultra"
          }
        }
      },
      "Application.Common.Models.DTO.TerminalTransactionDTO": {
        "type": "object",
        "additionalProperties": false,
        "x-stoplight": {
          "id": "ovlarp9hqrgd7"
        },
        "properties": {
          "terminal_id": {
            "type": "string",
            "example": "80026232",
            "nullable": true
          },
          "date": {
            "type": "string",
            "example": "2025-10-13 10:12:06",
            "nullable": true
          },
          "terminal_name": {
            "type": "string",
            "example": "Demo Ultra",
            "nullable": true
          },
          "outlet_name": {
            "type": "string",
            "example": "string",
            "nullable": true
          },
          "tran_status": {
            "type": "string",
            "example": "Approved",
            "nullable": true
          },
          "payment_status": {
            "type": "string",
            "example": "Paid",
            "nullable": true
          },
          "amount": {
            "type": "number",
            "format": "double",
            "example": 0.22
          },
          "currency": {
            "type": "string",
            "example": "EUR",
            "nullable": true
          },
          "rrn": {
            "type": "string",
            "example": "528607108520",
            "nullable": true
          },
          "stan": {
            "type": "string",
            "example": "000029",
            "nullable": true
          },
          "settlement_date": {
            "type": "string",
            "example": "2025-10-13 10:12:16",
            "nullable": true
          },
          "settlement_amount": {
            "type": "number",
            "format": "double",
            "example": 0.22
          },
          "settlement_currency": {
            "type": "string",
            "example": "EUR",
            "nullable": true
          },
          "fee": {
            "type": "number",
            "format": "double",
            "example": 0.01
          },
          "pan": {
            "type": "string",
            "example": "*9766",
            "nullable": true
          },
          "card_scheme": {
            "type": "string",
            "example": "Business Premium Debit",
            "nullable": true
          },
          "payment_reference": {
            "type": "string",
            "example": "POSA015257Y6IR59",
            "nullable": true
          },
          "billing_descriptor": {
            "type": "string",
            "example": "DEMO ULTRA",
            "nullable": true
          },
          "reference_number": {
            "type": "string",
            "example": "REF1234567890",
            "nullable": true
          }
        },
        "x-examples": {
          "Example 1": {
            "terminal_id": "80026232",
            "date": "2025-10-13 10:12:06",
            "terminal_name": "Demo Ultra",
            "outlet_name": "string",
            "tran_status": "Approved",
            "payment_status": "Paid",
            "amount": 0.22,
            "currency": "EUR",
            "rrn": "528607108520",
            "stan": "000029",
            "settlement_date": "2025-10-13 10:12:16",
            "settlement_amount": 0.22,
            "settlement_currency": "EUR",
            "fee": 0.01,
            "pan": "*9766",
            "card_scheme": "Business Premium Debit",
            "payment_reference": "POSA015257Y6IR59",
            "billing_descriptor": "DEMO ULTRA",
            "reference_number": "REF1234567890"
          }
        }
      },
      "MediatR.Unit": {
        "type": "object",
        "additionalProperties": false,
        "x-stoplight": {
          "id": "9290tujubkgv1"
        }
      },
      "Microsoft.AspNetCore.Mvc.ProblemDetails": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "status": {
            "type": "integer"
          },
          "detail": {
            "type": "string"
          },
          "instance": {
            "type": "string"
          },
          "additionalProp1": {
            "type": "string"
          },
          "additionalProp2": {
            "type": "string"
          },
          "additionalProp3": {
            "type": "string"
          }
        },
        "x-examples": {
          "Example 1": {
            "type": "string",
            "title": "string",
            "status": 0,
            "detail": "string",
            "instance": "string",
            "additionalProp1": "string",
            "additionalProp2": "string",
            "additionalProp3": "string"
          }
        },
        "title": "Microsoft.AspNetCore.Mvc.ProblemDetails",
        "description": ""
      },
      "Microsoft.AspNetCore.Mvc.ValidationProblemDetails": {
        "type": "object",
        "x-examples": {
          "Example 2": {
            "type": "string",
            "title": "string",
            "status": 0,
            "detail": "string",
            "instance": "string",
            "errors": {
              "additionalProp1": [
                "string"
              ],
              "additionalProp2": [
                "string"
              ],
              "additionalProp3": [
                "string"
              ]
            },
            "additionalProp1": "string",
            "additionalProp2": "string",
            "additionalProp3": "string"
          }
        },
        "title": "Microsoft.AspNetCore.Mvc.ValidationProblemDetails",
        "properties": {
          "type": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "status": {
            "type": "integer"
          },
          "detail": {
            "type": "string"
          },
          "instance": {
            "type": "string"
          },
          "errors": {
            "type": "object",
            "properties": {
              "additionalProp1": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "additionalProp2": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "additionalProp3": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            }
          },
          "additionalProp1": {
            "type": "string"
          },
          "additionalProp2": {
            "type": "string"
          },
          "additionalProp3": {
            "type": "string"
          }
        }
      },
      "Application.Common.Models.DTO.PaymentResponseDTO": {
        "type": "object",
        "x-examples": {
          "Example 1": {
            "payment_id": "67f826f21b62d43a1f65833a",
            "status": "InProgress",
            "amount": {
              "value": 1500,
              "currency_code": "EUR",
              "tip": 500
            },
            "created_at": "2025-04-10T23:15:46.5373115+03:00",
            "updated_at": "0001-01-01T00:00:00",
            "reference_number": "REF1234567890",
            "description": "Payment for order #5678",
            "expire_at": "0001-01-01T00:00:00"
          }
        },
        "title": "Application.Common.Models.DTO.PaymentResponseDTO",
        "properties": {
          "payment_id": {
            "type": "string",
            "example": "68ff25a853659f6448da0eba"
          },
          "status": {
            "type": "string",
            "example": "68ff25a853659f6448da0eba"
          },
          "amount": {
            "$ref": "#/components/schemas/Application.Common.Models.DTO.CreateAmountDTO"
          },
          "created_at": {
            "type": "string",
            "example": "2025-10-27T09:56:24"
          },
          "updated_at": {
            "type": "string",
            "example": "2025-10-27T09:56:24"
          },
          "reference_number": {
            "type": "string",
            "example": "REF1234567890"
          },
          "description": {
            "type": "string",
            "example": "Test request"
          },
          "expire_at": {
            "type": "string",
            "example": "2025-11-27T09:56:24"
          }
        }
      },
      "Application.Common.Models.DTO.TerminalRefundRequestDTO": {
        "type": "object",
        "x-examples": {
          "Example 1": {
            "reference_number": "REF1234567890",
            "amount": 0.22
          }
        },
        "title": "Application.Common.Models.DTO.TerminalRefundRequestDTO",
        "properties": {
          "reference_number": {
            "type": "string",
            "example": "REF1234567890"
          },
          "amount": {
            "type": "integer",
            "example": 0.22
          }
        }
      }
    },
    "securitySchemes": {
      "Bearer": {
        "type": "http",
        "description": "Input your Bearer token to access this API",
        "scheme": "oauth",
        "bearerFormat": "JWT"
      }
    },
    "responses": {},
    "examples": {}
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "x-Session": null,
  "servers": [
    {
      "url": "https://demo-api-gateway.mypos.com",
      "description": "Demo"
    },
    {
      "url": "https://api-gateway.mypos.com",
      "description": "Prod"
    }
  ]
}
