Sibill Reconciliation API

The Reconciliation API from Sibill — 2 operation(s) for reconciliation.

OpenAPI Specification

sibill-reconciliation-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Sibill Integration Account Reconciliation API
  version: 1.0.0
  x-logo:
    altText: Sibill logo
    backgroundColor: '#FFFFFF'
    url: https://sibill.com/wp-content/uploads/2022/12/logo-sibill.svg
servers:
- url: http://integration.app.svc.cluster.local:4000
  variables: {}
security: []
tags:
- name: Reconciliation
paths:
  /api/v1/companies/{company_id}/reconciliations:
    get:
      callbacks: {}
      description: 'The return value is paginated. By default the response contains 25 elements per page but can be instructed to return more elements per page.

        A cursor is needed to traverse the results.

        '
      operationId: SibillWeb.Integration.V1.ReconciliationsController.index
      parameters:
      - description: The company the reconciliations belong to
        in: path
        name: company_id
        required: true
        schema:
          type: string
      - description: The page size
        in: query
        name: page_size
        required: false
        schema:
          type: integer
      - description: 'The pagination cursor. A cursor is used to paginate through a large set of data.

          It is a unique identifier that represents a specific position in the dataset.

          '
        in: query
        name: cursor
        required: false
        schema:
          type: string
      - description: 'Fields that will be expanded. Expandable fields: `flow`, `transaction`, `transaction.category`, `transaction.subcategory`'
        in: query
        name: expand
        required: false
        schema:
          type: string
      - description: 'List of filters on the resource. Currently the fields that allow to be filtered are: `transaction_id`, `flow_id`, `created_at`'
        in: query
        name: filter
        required: false
        schema:
          type: object
      - description: 'Fields for which we can order the results. Sortable fields: `created_at`'
        in: query
        name: sort
        required: false
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReconciliationList'
          description: Ok
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationError'
          description: Bad request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationError'
          description: Forbidden
        '429':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationError'
          description: Too Many Requests
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationError'
          description: Internal Server Error
      security:
      - authorization: []
      summary: List all the company's reconciliations
      tags:
      - Reconciliation
      x-codeSamples:
      - label: ⚡ cURL
        lang: Shell
        source: "base_url=\"http://example.com\" # Replace with the correct Sibill integration API host\n\ncurl --request GET \\\n     --url ${base_url}/api/v1/companies/:company_id/reconciliations \\\n     --header \"Authorization: Bearer ${authorization_token}\"\n"
      - label: 🌐 HTTP
        lang: HTTP
        source: 'GET /api/v1/companies/:company_id/reconciliations HTTP/1.1

          Host: example.com # Replace with the correct Sibill integration API host

          Authorization: Bearer ${authorization_token}

          '
      - label: 💜 Elixir
        lang: Elixir
        source: 'Mix.install([:req])


          base_url = "http://example.com" # Replace with the correct Sibill integration API host

          url = base_url <> "/api/v1/companies/:company_id/reconciliations"

          headers = [{"Authorization", "Bearer ${authorization_token}"}]


          Req.get(url, headers: headers)

          '
      - label: 🐍 Python
        lang: Python
        source: 'import requests


          base_url = "http://example.com" # Replace with the correct Sibill integration API host

          url = base_url + "/api/v1/companies/:company_id/reconciliations"

          headers = {"Authorization": "Bearer ${authorization_token}"}


          response = requests.get(url, headers=headers)

          print(response.text)

          '
      - label: ☕ Java
        lang: Java
        source: "import java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.net.URI;\n\nString base_url = \"http://example.com\"; // Replace with the correct Sibill integration API host\nString url = base_url + \"/api/v1/companies/:company_id/reconciliations\";\n\nHttpClient client = HttpClient.newHttpClient();\nHttpRequest request = HttpRequest.newBuilder()\n  .uri(URI.create(url))\n  .header(\"Authorization\", \"Bearer ${authorization_token}\")\n  .GET()\n  .build();\n\nHttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());\nSystem.out.println(response.body());\n"
      - label: 🐘 PHP
        lang: PHP
        source: "<?php\n\n$url = \"http://example.com/api/v1/companies/:company_id/reconciliations\"; // Replace with the correct Sibill integration API host\n\n$ch = curl_init($url);\n\ncurl_setopt($ch, CURLOPT_RETURNTRANSFER, true);\ncurl_setopt($ch, CURLOPT_CUSTOMREQUEST, \"GET\");\n\ncurl_setopt($ch, CURLOPT_HTTPHEADER, [\n    \"Authorization: Bearer ${authorization_token}\"\n]);\n\n$response = curl_exec($ch);\n\nif (curl_errno($ch)) {\n    echo 'Curl error: ' . curl_error($ch);\n} else {\n    echo 'Response:' . PHP_EOL;\n    echo $response;\n}\n\ncurl_close($ch);\n"
    post:
      callbacks: {}
      description: 'Create a new reconciliation between a flow and a bank transaction.

        '
      operationId: SibillWeb.Integration.V1.ReconciliationsController.create
      parameters:
      - description: The company where to execute the operation
        in: path
        name: company_id
        required: true
        schema:
          type: string
      - description: 'Fields that will be expanded. Expandable fields: `flow`, `transaction`, `transaction.category`, `transaction.subcategory`'
        in: query
        name: expand
        required: false
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReconciliationCreate'
        description: Reconciliation
        required: false
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReconciliationData'
          description: Reconciliation created
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationError'
          description: Bad request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationError'
          description: Not found
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationError'
          description: Unprocessable Entity
        '429':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationError'
          description: Too Many Requests
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationError'
          description: Internal Server Error
      security:
      - authorization: []
      summary: Create a new reconciliation
      tags:
      - Reconciliation
      x-codeSamples:
      - label: ⚡ cURL
        lang: Shell
        source: "base_url=\"http://example.com\" # Replace with the correct Sibill integration API host\n\ncurl --request POST \\\n     --url ${base_url}/api/v1/companies/:company_id/reconciliations \\\n     --header \"Authorization: Bearer ${authorization_token}\" \\\n     --header \"Content-Type: application/json\" \\\n     --data '${your payload here}'\n"
      - label: 🌐 HTTP
        lang: HTTP
        source: 'POST /api/v1/companies/:company_id/reconciliations HTTP/1.1

          Host: example.com # Replace with the correct Sibill integration API host

          Authorization: Bearer ${authorization_token}

          Content-Type: application/json

          ${your payload here}

          '
      - label: 💜 Elixir
        lang: Elixir
        source: 'Mix.install([:req])


          base_url = "http://example.com" # Replace with the correct Sibill integration API host

          url = base_url <> "/api/v1/companies/:company_id/reconciliations"

          headers = [{"Authorization", "Bearer ${authorization_token}"}, {"Content-Type", "application/json"}]

          payload = ${your payload here}


          Req.post(url, headers: headers, body: payload)

          '
      - label: 🐍 Python
        lang: Python
        source: 'import requests


          base_url = "http://example.com" # Replace with the correct Sibill integration API host

          url = base_url + "/api/v1/companies/:company_id/reconciliations"

          headers = {"Authorization": "Bearer ${authorization_token}", "Content-Type": "application/json"}

          payload = ${your payload here}


          response = requests.post(url, headers=headers, json=payload)

          print(response.text)

          '
      - label: ☕ Java
        lang: Java
        source: "import java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.net.URI;\n\nString base_url = \"http://example.com\"; // Replace with the correct Sibill integration API host\nString url = base_url + \"/api/v1/companies/:company_id/reconciliations\";\n\nHttpClient client = HttpClient.newHttpClient();\nHttpRequest request = HttpRequest.newBuilder()\n  .uri(URI.create(url))\n  .header(\"Authorization\", \"Bearer ${authorization_token}\")\n  .header(\"Content-Type\", \"application/json\")\n  .POST(HttpRequest.BodyPublishers.ofString(${your payload here}))\n  .build();\n\nHttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());\nSystem.out.println(response.body());\n"
      - label: 🐘 PHP
        lang: PHP
        source: "<?php\n\n$url = \"http://example.com/api/v1/companies/:company_id/reconciliations\"; // Replace with the correct Sibill integration API host\n\n$ch = curl_init($url);\n\ncurl_setopt($ch, CURLOPT_RETURNTRANSFER, true);\ncurl_setopt($ch, CURLOPT_CUSTOMREQUEST, \"POST\");\n\ncurl_setopt($ch, CURLOPT_HTTPHEADER, [\n    \"Authorization: Bearer ${authorization_token}\",\n    \"Content-Type: application/json\"\n]);\ncurl_setopt($ch, CURLOPT_POSTFIELDS, <<<BODY\n${your payload here}\nBODY\n);\n\n$response = curl_exec($ch);\n\nif (curl_errno($ch)) {\n    echo 'Curl error: ' . curl_error($ch);\n} else {\n    echo 'Response:' . PHP_EOL;\n    echo $response;\n}\n\ncurl_close($ch);\n"
  /api/v1/companies/{company_id}/reconciliations/{id}:
    delete:
      callbacks: {}
      operationId: SibillWeb.Integration.V1.ReconciliationsController.delete
      parameters:
      - description: The company where to execute the operation
        in: path
        name: company_id
        required: true
        schema:
          type: string
      - description: The reconciliation identifier
        in: path
        name: id
        required: true
        schema:
          type: string
      responses:
        '204':
          content:
            application/json: {}
          description: Reconciliation delete response
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationError'
          description: Not found
        '429':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationError'
          description: Too Many Requests
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationError'
          description: Internal Server Error
      security:
      - authorization: []
      summary: Delete an existing reconciliation
      tags:
      - Reconciliation
      x-codeSamples:
      - label: ⚡ cURL
        lang: Shell
        source: "base_url=\"http://example.com\" # Replace with the correct Sibill integration API host\n\ncurl --request DELETE \\\n     --url ${base_url}/api/v1/companies/:company_id/reconciliations/:id \\\n     --header \"Authorization: Bearer ${authorization_token}\"\n"
      - label: 🌐 HTTP
        lang: HTTP
        source: 'DELETE /api/v1/companies/:company_id/reconciliations/:id HTTP/1.1

          Host: example.com # Replace with the correct Sibill integration API host

          Authorization: Bearer ${authorization_token}

          '
      - label: 💜 Elixir
        lang: Elixir
        source: 'Mix.install([:req])


          base_url = "http://example.com" # Replace with the correct Sibill integration API host

          url = base_url <> "/api/v1/companies/:company_id/reconciliations/:id"

          headers = [{"Authorization", "Bearer ${authorization_token}"}]


          Req.delete(url, headers: headers)

          '
      - label: 🐍 Python
        lang: Python
        source: 'import requests


          base_url = "http://example.com" # Replace with the correct Sibill integration API host

          url = base_url + "/api/v1/companies/:company_id/reconciliations/:id"

          headers = {"Authorization": "Bearer ${authorization_token}"}


          response = requests.delete(url, headers=headers)

          print(response.text)

          '
      - label: ☕ Java
        lang: Java
        source: "import java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.net.URI;\n\nString base_url = \"http://example.com\"; // Replace with the correct Sibill integration API host\nString url = base_url + \"/api/v1/companies/:company_id/reconciliations/:id\";\n\nHttpClient client = HttpClient.newHttpClient();\nHttpRequest request = HttpRequest.newBuilder()\n  .uri(URI.create(url))\n  .header(\"Authorization\", \"Bearer ${authorization_token}\")\n  .DELETE()\n  .build();\n\nHttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());\nSystem.out.println(response.body());\n"
      - label: 🐘 PHP
        lang: PHP
        source: "<?php\n\n$url = \"http://example.com/api/v1/companies/:company_id/reconciliations/:id\"; // Replace with the correct Sibill integration API host\n\n$ch = curl_init($url);\n\ncurl_setopt($ch, CURLOPT_RETURNTRANSFER, true);\ncurl_setopt($ch, CURLOPT_CUSTOMREQUEST, \"DELETE\");\n\ncurl_setopt($ch, CURLOPT_HTTPHEADER, [\n    \"Authorization: Bearer ${authorization_token}\"\n]);\n\n$response = curl_exec($ch);\n\nif (curl_errno($ch)) {\n    echo 'Curl error: ' . curl_error($ch);\n} else {\n    echo 'Response:' . PHP_EOL;\n    echo $response;\n}\n\ncurl_close($ch);\n"
    get:
      callbacks: {}
      operationId: SibillWeb.Integration.V1.ReconciliationsController.show
      parameters:
      - description: The company the reconciliation belongs to
        in: path
        name: company_id
        required: true
        schema:
          type: string
      - description: The reconciliation identifier
        in: path
        name: id
        required: true
        schema:
          type: string
      - description: 'Fields that will be expanded. Expandable fields: `flow`, `transaction`, `transaction.category`, `transaction.subcategory`'
        in: query
        name: expand
        required: false
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReconciliationData'
          description: Ok
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationError'
          description: Not found
        '429':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationError'
          description: Too Many Requests
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationError'
          description: Internal Server Error
      security:
      - authorization: []
      summary: Get a specific reconciliation
      tags:
      - Reconciliation
      x-codeSamples:
      - label: ⚡ cURL
        lang: Shell
        source: "base_url=\"http://example.com\" # Replace with the correct Sibill integration API host\n\ncurl --request GET \\\n     --url ${base_url}/api/v1/companies/:company_id/reconciliations/:id \\\n     --header \"Authorization: Bearer ${authorization_token}\"\n"
      - label: 🌐 HTTP
        lang: HTTP
        source: 'GET /api/v1/companies/:company_id/reconciliations/:id HTTP/1.1

          Host: example.com # Replace with the correct Sibill integration API host

          Authorization: Bearer ${authorization_token}

          '
      - label: 💜 Elixir
        lang: Elixir
        source: 'Mix.install([:req])


          base_url = "http://example.com" # Replace with the correct Sibill integration API host

          url = base_url <> "/api/v1/companies/:company_id/reconciliations/:id"

          headers = [{"Authorization", "Bearer ${authorization_token}"}]


          Req.get(url, headers: headers)

          '
      - label: 🐍 Python
        lang: Python
        source: 'import requests


          base_url = "http://example.com" # Replace with the correct Sibill integration API host

          url = base_url + "/api/v1/companies/:company_id/reconciliations/:id"

          headers = {"Authorization": "Bearer ${authorization_token}"}


          response = requests.get(url, headers=headers)

          print(response.text)

          '
      - label: ☕ Java
        lang: Java
        source: "import java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpResponse;\nimport java.net.URI;\n\nString base_url = \"http://example.com\"; // Replace with the correct Sibill integration API host\nString url = base_url + \"/api/v1/companies/:company_id/reconciliations/:id\";\n\nHttpClient client = HttpClient.newHttpClient();\nHttpRequest request = HttpRequest.newBuilder()\n  .uri(URI.create(url))\n  .header(\"Authorization\", \"Bearer ${authorization_token}\")\n  .GET()\n  .build();\n\nHttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());\nSystem.out.println(response.body());\n"
      - label: 🐘 PHP
        lang: PHP
        source: "<?php\n\n$url = \"http://example.com/api/v1/companies/:company_id/reconciliations/:id\"; // Replace with the correct Sibill integration API host\n\n$ch = curl_init($url);\n\ncurl_setopt($ch, CURLOPT_RETURNTRANSFER, true);\ncurl_setopt($ch, CURLOPT_CUSTOMREQUEST, \"GET\");\n\ncurl_setopt($ch, CURLOPT_HTTPHEADER, [\n    \"Authorization: Bearer ${authorization_token}\"\n]);\n\n$response = curl_exec($ch);\n\nif (curl_errno($ch)) {\n    echo 'Curl error: ' . curl_error($ch);\n} else {\n    echo 'Response:' . PHP_EOL;\n    echo $response;\n}\n\ncurl_close($ch);\n"
components:
  schemas:
    ReconciliationList:
      description: List of reconciliation representations
      properties:
        data:
          items:
            $ref: '#/components/schemas/ReconciliationSchema'
          type: array
        page:
          $ref: '#/components/schemas/Page'
      title: ReconciliationList
      type: object
    Page:
      properties:
        cursor:
          description: A cursor that can be used to fetch the next page of results
          nullable: true
          type: string
        size:
          description: The current page size
          type: integer
      title: Page
      type: object
    ReconciliationSchema:
      description: Reconciliation data representation
      properties:
        created_at:
          description: Creation date of the reconciliation
          format: date-time
          readOnly: true
          type: string
        flow:
          anyOf:
          - $ref: '#/components/schemas/FlowSchema'
          nullable: true
          readOnly: true
        flow_id:
          description: The ID of the relative flow
          example: 019f8035-9d48-7786-bcec-8f030557370d
          format: uuid
          readOnly: true
          type: string
        id:
          description: The processed reconciliation identifier
          example: 019f8035-9d48-7c47-ad94-07b96040f2fd
          format: uuid
          readOnly: true
          type: string
        transaction:
          anyOf:
          - $ref: '#/components/schemas/TransactionSchema'
          nullable: true
          readOnly: true
        transaction_id:
          description: The ID of the relative transaction
          example: 019f8035-9d48-75e4-bfe0-8633cb3d815f
          format: uuid
          readOnly: true
          type: string
      required:
      - id
      - flow_id
      - transaction_id
      title: ReconciliationSchema
      type: object
    ReconciliationCreate:
      description: Create reconciliation data object
      properties:
        flow_id:
          description: The ID of the relative flow
          example: 019f8035-a08d-7622-98c7-72a87709bde5
          format: uuid
          type: string
        transaction_id:
          description: The ID of the relative transaction
          example: 019f8035-a08d-7a47-a913-29054eeeec67
          format: uuid
          type: string
      required:
      - flow_id
      - transaction_id
      title: ReconciliationCreate
      type: object
    TransactionSchema:
      description: Transaction data representation
      properties:
        account_id:
          description: The id of the bank account
          example: 019f8035-9d9a-7bcc-afc7-c326bae66d33
          format: uuid
          readOnly: true
          type: string
        amount:
          description: Money representation through amount and currency properties
          example:
            amount: '12.3'
            currency: EUR
          properties:
            amount:
              minLength: 1
              pattern: ^[0-9]*\.?[0-9]+$
              readOnly: false
              type: string
            currency:
              enum:
              - AED
              - AFN
              - ALL
              - AMD
              - ANG
              - AOA
              - ARS
              - AUD
              - AWG
              - AZN
              - BAM
              - BBD
              - BDT
              - BGN
              - BHD
              - BIF
              - BMD
              - BND
              - BOB
              - BOV
              - BRL
              - BSD
              - BTN
              - BWP
              - BYN
              - BZD
              - CAD
              - CDF
              - CHE
              - CHF
              - CHW
              - CLF
              - CLP
              - CNY
              - COP
              - COU
              - CRC
              - CUC
              - CUP
              - CVE
              - CZK
              - DJF
              - DKK
              - DOP
              - DZD
              - EGP
              - ERN
              - ETB
              - EUR
              - FJD
              - FKP
              - GBP
              - GEL
              - GHS
              - GIP
              - GMD
              - GNF
              - GTQ
              - GYD
              - HKD
              - HNL
              - HRK
              - HTG
              - HUF
              - IDR
              - ILS
              - INR
              - IQD
              - IRR
              - ISK
              - JMD
              - JOD
              - JPY
              - KES
              - KGS
              - KHR
              - KMF
              - KPW
              - KRW
              - KWD
              - KYD
              - KZT
              - LAK
              - LBP
              - LKR
              - LRD
              - LSL
              - LYD
              - MAD
              - MDL
              - MGA
              - MKD
              - MMK
              - MNT
              - MOP
              - MRU
              - MUR
              - MVR
              - MWK
              - MXN
              - MXV
              - MYR
              - MZN
              - NAD
              - NGN
              - NIO
              - NOK
              - NPR
              - NZD
              - OMR
              - PAB
              - PEN
              - PGK
              - PHP
              - PKR
              - PLN
              - PYG
              - QAR
              - RON
              - RSD
              - RUB
              - RWF
              - SAR
              - SBD
              - SCR
              - SDG
              - SEK
              - SGD
              - SHP
              - SLL
              - SOS
              - SRD
              - SSP
              - STN
              - SVC
              - SYP
              - SZL
              - THB
              - TJS
              - TMT
              - TND
              - TOP
              - TRY
              - TTD
              - TWD
              - TZS
              - UAH
              - UGX
              - USD
              - USN
              - UYI
              - UYU
              - UYW
              - UZS
              - VES
              - VND
              - VUV
              - WST
              - XAF
              - XAG
              - XAU
              - XBA
              - XBB
              - XBC
              - XBD
              - XCD
              - XDR
              - XOF
              - XPD
              - XPF
              - XPT
              - XSU
              - XTS
              - XUA
              - XXX
              - YER
              - ZAR
              - ZMW
              - ZWL
              readOnly: false
              type: string
          required:
          - currency
          - amount
          type: object
        bank_code:
          description: The bank code referring to the type of a bank transaction.
          nullable: true
          readOnly: true
          type: string
        booking_date_time:
          description: The date when the transaction was done
          format: date-time
          nullable: true
          readOnly: true
          type: string
        category:
          nullable: true
          properties:
            id:
              description: The id of the category
              example: 019f8035-d6ba-74eb-a48a-cfc8445fa575
              format: uuid
              readOnly: true
              type: string
            name:
              description: The description of the category
              readOnly: true
              type: string
          readOnly: true
          type: object
        clean_description:
          description: The description of the transaction after it has been cleaned up
          nullable: true
          readOnly: true
          type: string
        counterpart_name:
          description: The name of the counterpart
          nullable: true
          readOnly: true
          type: string
        created_at:
          description: Creation date of the record
          format: date-time
          readOnly: true
          type: string
        date:
          description: The date when the transaction was done
          format: date-time
          nullable: true
          readOnly: true
          type: string
        description:
          description: The original description of the transaction
          nullable: true
          readOnly: true
          type: string
        id:
          description: The id of the transaction
          example: 019f8035-9d9a-7361-88e5-71cba72de431
          format: uuid
          readOnly: true
          type: string
        reconciliations:
          description: A list of reconciliations related to the transaction
          items:
            $ref: '#/components/schemas/ReconciliationSchema'
          readOnly: true
          type: array
        subcategory:
          nullable: true
          properties:
            id:
              description: The id of the subcategory
              example: 019f8035-d6ba-7bdc-a8cc-ebeb5c95f88a
              format: uuid
              readOnly: true
              type: string
            name:
              description: The description of the subcategory
              readOnly: true
              type: string
          readOnly: true
          type: object
        type:
          description: The type of the bank transaction.
          enum:
          - CARDS
          - CARD_AUTHORIZATION
          - CASH
          - CHECK
          - DEPOSITS
          - DIRECT_DEBIT
          - FEES
          - FINANCIAL_EXPENSES
          - FINANCING
          - INTERNAL_TRANSFER
          - OTHER
          - POS
          - RIBA
          - TAXES
          - TRANSFER
          - WITHDRAWALS
          nullable: true
          readOnly: true
          type: string
        value_date_time:
          description: The date when the exchange of money took place
          format: date-time
          nullable: true
          readOnly: true
          type: string
      title: TransactionSchema
      type: object
    IntegrationError:
      properties:
        errors:
          description: The list of errors encountered during the operation with detailed information
          items:
            properties:
              code:
                description: Short code identifying an error type
                example: bad_request
                type: string
              detail:
                description: The message detail that describes the error
                example: null value where string expected
                nullable: true
                type: string
              source:
                nullable: true
                properties:
                  pointer:
                    description: The exact position in the request where the error occurred
                    example: /data/attributes/name
                    type: string
                type: object
              title:
                description: The message title that describes the error. It is a short, human-readable summary of the problem
                example: Invalid value
                type: string
            type: object
          type: array
      required:
      - errors
      title: IntegrationError
      type: object
    ReconciliationData:
      description: Reconciliation data object
      properties:
        data:
          $ref: '#/components/schemas/ReconciliationSchema'
      title: ReconciliationData
      type: object
    FlowSchema:
      description: Flow data representation
      properties:
        account_id:
          descrip

# --- truncated at 32 KB (38 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/sibill/refs/heads/main/openapi/sibill-reconciliation-api-openapi.yml