Sibill Reconciliation API

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

Operations 4

GET /api/v1/companies/{company_id}/reconciliations List all the company's reconciliations #
POST /api/v1/companies/{company_id}/reconciliations Create a new reconciliation #
DELETE /api/v1/companies/{company_id}/reconciliations/{id} Delete an existing reconciliation #
GET /api/v1/companies/{company_id}/reconciliations/{id} Get a specific reconciliation #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/sibill-reconciliation-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

sibill-reconciliation-api-openapi.yml Raw ↑
openapi: 3.2.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:
    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'
          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'
          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
    FlowSchema:
      description: Flow data representation
      properties:
        account_id:
          description: The id of the account
          example: 019f8035-d726-7b45-847b-05e0fb123222
          format: uuid
          readOnly: true
          type:
          - string
          - 'null'
        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
        created_at:
          description: The date of creation
          format: date-time
          readOnly: true
          type: string
        document_id:
          description: The id of the document
          example: 019f8035-d726-7414-ad31-76243aee0460
          format: uuid
          readOnly: true
          type: string
        expected_payment_date:
          description: The date when the flow is due/The date when the flow was paid when the flow is reconciled
          format: date
          readOnly: true
          type: string
        id:
          description: The flow identifier
          example: 019f8035-9d1c-7d2e-9eae-763f79a2d5d9
          format: uuid
          readOnly: true
          type: string
        payment_date:
          description: The date when the flow is due
          format: date
          readOnly: true
          type: string
        payment_method:
          description: 'The payment method.


            Possible values are:

            - `CARD`: Payment by debit or credit card.

            - `CASH`: Payment in cash.

            - `CHECK`: Payment by bank check.

            - `DEFERRED`: Amount not collected at the time of sale (e.g. ticket, corrispettivo).

            - `TAX_FORM`: Payment via tax withholding form (e.g. F24 ritenute d''acconto).

            - `FISCAL_CREDIT`: Payment offset by a fiscal/tax credit.

            - `OTHER`: Any payment method not covered by the other values.

            - `POSTAL`: Payment via postal order or postal current account (bollettino postale).

            - `RIBA`: Ricevuta Bancaria — Italian bank receipt collection instrument.

            - `SDD`: SEPA Direct Debit — recurring bank debit authorised by the payer.

            - `TRANSFER`: Bank wire transfer (bonifico bancario).

            '
          enum:
          - CARD
          - CASH
          - CHECK
          - DEFERRED
          - TAX_FORM
          - FISCAL_CREDIT
          - OTHER
          - POSTAL
          - RIBA
          - SDD
          - TRANSFER
          readOnly: true
          type:
          - string
          - 'null'
        payment_status:
          description: 'The payment status.


            Possible values are:

            - `PAID`: The flow has been paid.

            - `TO_PAY`: The flow is to be paid.

            '
          enum:
          - PAID
          - TO_PAY
          readOnly: true
          type: string
      title: FlowSchema
      type: object
    ReconciliationList:
      description: List of reconciliation representations
      properties:
        data:
          items:
            $ref: '#/components/schemas/ReconciliationSchema'
          type: array
        page:
          $ref: '#/components/schemas/Page'
      title: ReconciliationList
      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
                type:
                - string
                - 'null'
              source:
                properties:
                  pointer:
                    description: The exact position in the request where the error occurred
                    example: /data/attributes/name
                    type: string
                type:
                - object
                - 'null'
              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
    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
    Page:
      properties:
        cursor:
          description: A cursor that can be used to fetch the next page of results
          type:
          - string
          - 'null'
        size:
          description: The current page size
          type: integer
      title: Page
      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
  

# --- 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