swissfintechinnovations / ca-payment

Common APIs for AIS and PIS
https://www.common-api.ch
Apache License 2.0
0 stars 3 forks source link

Enhance Transactions with Booking-State and subsequently Balance-Types #115

Open simonmeyerm opened 1 month ago

simonmeyerm commented 1 month ago

Contact Details

simon.meyer@six-group.com

Issue category

Enhancement

Issue description

The query parameter "bookingStatus" has already been added to the API with the filter values "booked, pending, both". However, several issues and adjustments need to be addressed to fully support the functionality.

Parameter The "bookingStatus" is currently defined as followed:

        - in: query
          name: bookingStatus
          required: true
          schema:
            type: string
            enum:
              - booked
              - pending
              - both

Response The "bookingStatus" of transactions should be reflected in the response to identify the status. This status is only applicable for intraday data.

Balance The usage of the bookingStatus should be reflected in the retrievable balance of the accounts. To be conform with the Swiss Payment Standard guidelines, the following values are used and could be enhanced with:

ITAV - Interim Available

ITBD - Interim Booked:

XPCD - Expected:

Issue reasoning

Requirement that was brought up within the bLink Multibanking initiative to improve the user experience. Users should have access to real time data, ideally the same in the Service User application as in the e-Banking of the Service Provider. The API currently only supports the request of booked transactions. Users should have access to all bookings and be able to identify and filter them accordingly to better manage their finances.

Request

To include the bookingStatus in the current API, the following items and questions must be clarified.

Query Parameter The query parameter is already integrated in the specification. However, the definition should be adjusted. Should the bookingState be required? Should a default value be set and if so, which?

Response The bookingStatus should be reflected in the "Account Transaction Entry" object of the response, even though it is only applicable for Intraday Transactions

Balance Types The balanceType in the /balance endpoint should be extended with ITAV and/or XPCD

Proposed change

There are two possibilities to realize the adjustments:

  1. Enhance the existing endpoints

    • Adjust the existing endpoints to include the bookingStatus parameter and update the response schema accordingly.
  2. Add new endpoints for intraday data

    • Create new endpoints specifically for intraday data, either combining balance and transactions according to camt.052 or dividing them into separate endpoints.

Affected API's

AIS

Code of Conduct

svenbiellmann commented 4 weeks ago

Meeting Notes 15.8.24

@simonmeyerm elaborates the change request. In the SFTI specs the attribute "booking state" already exists on the request. On the response this attribute needs to be added.

Following details were agreed:

The Pull Request will be prepared by @simonmeyerm and discussed on next meeting.