mojaloop / mojaloop-specification

This repo contains the specification document set of the Open API for FSP Interoperability
https://docs.mojaloop.io/api
Other
20 stars 40 forks source link

Change Request: Move resources for funds in, funds out into Settlement API from Administration API #102

Closed elnyry-sam-k closed 2 years ago

elnyry-sam-k commented 3 years ago

Open API for FSP Interoperability - Change Request

Table of Contents

1. Preface


This section contains basic information regarding the change request.

1.1 Change Request Information

| Requested By | Sam Kummary | | Change Request Status | In review ☒ / Approved ☐ / Rejected ☐ | | Approved/Rejected Date | |

1.2 Document Version Information

Version Date Author Change Description
1.0 2022-02-08 Sam Kummary Initial version of change request submitted for review by Administration SIG

2. Problem Description


2.1 Background

The Operations of [Funds In and Funds Out](https://docs.mojaloop.io/api/administration/central-ledger-api.html#funds-in-and-funds-out) of the FSP participants are currently part of the Administration API.

These are facilitated by a POST or PUT HTTP message on the resource /participants/{name}/accounts/{id}, /participants/{name}/accounts/{id}/transfers/{transferId} (to record a transfer as a funds in/out transaction for the participant account) which can be misleading if not un-informative.

2.2 Current Behaviour

Currently the request POST /participants/{name}/accounts/{id} is used to record Funds In or Out of a participant account and a PUT /participants/{name}/accounts/{id}/transfers/{transferId} is used to record a transfer as a Funds In or Out transaction for a participant account.

2.3 Requested Behaviour

Keeping the behavior the same, the proposal is to move this functionality to the "Settlement API" introducing resources that are meaningfully named, such as /fundsin ? /fundsout' or/funds` and have an additional field in the data model of the message to indicate in/out or an enum (or as a parameter).

3. Proposed Solution Options


elnyry-sam-k commented 2 years ago

After the reference architecture design based on bounded contexts, it has been agreed that funds in/out operations should stay as part of "account updates" inside of "participant lifecycle management" which interacts with the "Accounts and Balances BC", so this change is no longer needed.

Reference docs: https://mojaloop.github.io/reference-architecture-doc/boundedContexts/accountsAndBalances/#functional-overview-accounts-and-balances