-
Notifications
You must be signed in to change notification settings - Fork 40
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Change Request: Adding ExtensionList fields to existing data structures #30
Comments
Sounds good! The proposal would mean though that the To make the proposal complete, an extension list should also be added to the POST /participants/<Type>/<ID> and POST /participants/<Type>/<ID>/<SubId> requests as well. Those requests are used for adding single participant information, compared to the POST /participants request which is used for bulk add of participant information (where the |
I agree that it would mean that the Party data model would then contain two extension lists; however, I thought it would be less confusing to have the extension list attached to the Party object, since it would be used for passing information about the party rather than the FSP. With respect to adding a list to the participants resource, I shied away from that because it would have meant adding a message body where none currently exists. TIPS are happy with preventing use of the resources without content and insisting that the PartyIdInfo structure is used to pass the information. However, I'm not unhappy with your suggestions in both cases |
The
There is already message body in POST /participants/<Type>/<ID>? Please see Section 6.2.2.3 in API Definition. Are you talking about another service? |
I'm not sure why we want to legislate about how people ought to use the API. My feeling is that we should probably allow an extension list somewhere on every resource, so that people who want to include additional information in it can do so, provided that they all agree how it should be done. For me, it's not a question of "(knowing) which to use," but simply of providing facilities. |
I'm not against having extension lists on every resource, but at the same time I would like to limit the use of extensions as they are very hard to maintain in code that should be reused between schemes, and it makes interoperability between schemes more difficult as they might require different extensions. My suggestion as earlier is to add the extension list to the PartyIdInfo, which will allow it to be used in POST /participants/. For consistency it should also be added in the POST /participants/<Type>/<ID> and POST /participants/<Type>/<ID>/<SubId>. This should be sufficient for the first bullet in the background information. Regarding the second bullet in the background information:
|
This does not seem to be part of the API version 1.1 document ("API Definition_v1.1-draft_Updated-2020-04-07.docx"). Though there is a "Hold me" text added in Section 6.2.3.3.. |
Hi Henrik, Table-92 under Section 7.4.13 - PartyIdInfo has been updated to include the optional ExtensionList element. |
Yes, but for consistency it also needs to be added to Table 9 in Section 6.2.3.3 for the POST /participants/<Type>/<ID> and POST /participants/<Type>/<ID>/<SubId>, where the "Hold me" text is currently located (see my earlier comment #30 (comment)). |
Another issue is that all resources using the PartyIdInfo element in some way should be updated to new minor version (1.1) to reflect the changes in what data that can be expected. That should include all the resources except /authorizations and /transactions, as the rest uses either PartyIdInfo directly or through the Party element. |
Thanks Henrik. How does this version look with the above suggested changes included - |
Thanks Sam, please find some comments on the new version below:
|
Thanks again, Henrik. Here's the updated draft - API Definition_v1.1-draft_Updated-2020-04-15.docx |
Thanks Sam, Your changes looks great! Just a tiny layout comment regarding Table 6, the table is split so that only the header is on page 79 and the rest of the table is on page 80. Select the entire paragraph including the text just above (starting with "Table 6 contains the version for each resource that ...") and click on "Keep with next" so that it is ticked. |
Alright, thank you. Here's the updated draft: API Definition_v1.1-draft_Updated-2020-04-16.docx |
Hi @elnyry-sam-k, I think this issue can be closed as this was updated in v1.1? |
Thanks Henrik; Yes, as we discussed today |
Open API for FSP Interoperability - Change Request
Table of Contents
1. Preface
Additional data is required for some existing data items in order to meet the particular requirements of individual implementations.
When registrations are made using the /participants resource, DFSPs need to be able to specify the transaction account to which transfers to the new ID will be credited, and in the case of Merchant IDs the Tax Identification Number (TIN) for the merchant. This requires the addition of an ExtensionList field to the PartyIdInfo data structure.
When information is returned from a call to the /parties resource, and when it is included in a request sent to the /quotes resource, additional information about the party needs to be included. This includes identifying what TransactionInitiatorType the party belongs to, and whether the party's account is a bank account or a wallet. This requires the addition of an optional ExtensionList field to the Party data structure.
1.1 Change Request Information
| Requested By | Michael Richards, ModusBox |
| Change Request Status | In review ☒ / Approved ☐ / Rejected ☐ |
| Approved/Rejected Date | |
1.2 Document Version Information
2. Problem Description
The implementation of the Open API in TIPS has revealed the need for additional data to be passed between participants in the system. The normal pattern for adding implementation-specific details to calls in the Open API is via the use of an ExtensionList field(see Open API Specification, Section 7.4.4) However, some data items as defined in the specification do not contain ExtensionList fields, and these data items cannot therefore have additional information added.
2.1 Background
Specific instances where data structures in the existing Open API definition need to have specialised data associated with them are:
When registrations are made using the /participants resource, DFSPs need to be able to specify the transaction account to which transfers to the new ID will be credited, and in the case of Merchant IDs the Tax Identification Number (TIN) for the merchant. This requires the addition of an ExtensionList field to the PartyIdInfo data structure.
When information is returned from a call to the /parties resource, and when it is included in a request sent to the /quotes resource, additional information about the party needs to be included. This includes identifying what TransactionInitiatorType the party belongs to, and whether the party's account is a bank account or a wallet. This requires the addition of an optional ExtensionList field to the Party data structure.
2.2 Current Behaviour
It is not possible to add implementation-specific information to the Party data structure or the PartyIdInfo data structure.
2.3 Requested Behaviour
Allow the addition of implementation-specific information to the Party data structure and the PartyIdInfo data structure.
3. Proposed Solution Options
Add an Extensionlist data structure to the Party data structure and the PartyIdInfo data structure.
The text was updated successfully, but these errors were encountered: