From d06a257660271bc0ab255fb9afc8fb5a25a4acb8 Mon Sep 17 00:00:00 2001 From: Azeez Muibi Date: Wed, 19 Mar 2025 16:17:49 +0100 Subject: [PATCH] Worked on the Notification Callback Request and Notification Callback Response --- digifi_swagger.json | 125 ++++++++++++++++++++++++++++++++++---------- 1 file changed, 97 insertions(+), 28 deletions(-) diff --git a/digifi_swagger.json b/digifi_swagger.json index 9d5e0e3..247e510 100644 --- a/digifi_swagger.json +++ b/digifi_swagger.json @@ -361,29 +361,18 @@ }, "/NotificationCallback": { "post": { - "tags": [ "NotificationCallback" ], - "summary": "Loan Information Request ", - "description": "Loan Information Request", - "operationId": "startEligibilityCheck", + "summary": "Notification Callback", + "description": "This new feature will be used for informing Simbrella about status of the transactions that FBN have processed", + "operationId": "notificationCallback", "requestBody": { - "description": "Post JSON to conduct eligibility tests", + "description": "Post JSON for notification callback", "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/LoanInformationRequest" - } - }, - "application/xml": { - "schema": { - "$ref": "#/components/schemas/LoanInformationRequest" - } - }, - "application/x-www-form-urlencoded": { - "schema": { - "$ref": "#/components/schemas/LoanInformationRequest" + "$ref": "#/components/schemas/NotificationCallbackRequest" } } }, @@ -395,21 +384,16 @@ "content": { "application/json": { "schema": { - "$ref": "#/components/schemas/LoanInformationResponse" - } - }, - "application/xml": { - "schema": { - "$ref": "#/components/schemas/LoanInformationResponse" + "$ref": "#/components/schemas/NotificationCallbackResponse" } } } }, "400": { - "description": "Invalid ID supplied" + "description": "Invalid request parameters" }, "404": { - "description": "Loan not found" + "description": "Resource not found" }, "422": { "description": "Validation exception" @@ -417,10 +401,7 @@ }, "security": [ { - "petstore_auth": [ - "write:pets", - "read:pets" - ] + "basicAuth": [] } ] } @@ -1136,6 +1117,94 @@ "description": "Description of provided result code" } } + }, + "NotificationCallbackRequest": { + "type": "object", + "required": [ + "fbnTransactionId", + "transactionId", + "customerId", + "accountId", + "debtId", + "transactionType", + "amountProvided", + "amountCollected", + "responseCode", + "responseDescription" + ], + "properties": { + "fbnTransactionId": { + "type": "string", + "example": "123456789", + "description": "Unique id of the transaction received from FBN in Eligibility or Provision requests" + }, + "transactionId": { + "type": "string", + "example": "123456789", + "description": "Unique identifier of transaction in FIRSTBANK system" + }, + "customerId": { + "type": "string", + "example": "CN621868", + "description": "Unique identifier of a customer" + }, + "accountId": { + "type": "string", + "example": "ACN8263457", + "description": "Specific identifier of a user's account" + }, + "debtId": { + "type": "string", + "example": "987654321", + "description": "Unique identifier of providing loan in Simbrella system" + }, + "transactionType": { + "type": "string", + "example": "Disbursement", + "description": "Type of transaction initiated by Simbrella: 'Disbursement', 'Collection', or 'PenalCharge'" + }, + "amountProvided": { + "type": "number", + "format": "double", + "example": 1000.00, + "description": "Amount provided to customer within Disbursement operation. Will equal to 0 when transaction type is Collection or PenalCharge." + }, + "amountCollected": { + "type": "number", + "format": "double", + "example": 0.00, + "description": "Amount collected during execution of operation. Will equal to 0 when transaction type is Disbursement." + }, + "responseCode": { + "type": "string", + "example": "00", + "description": "Result code of the notification" + }, + "responseDescription": { + "type": "string", + "example": "Successful", + "description": "Result description of the notification, detailing status of the transaction" + } + } + }, + "NotificationCallbackResponse": { + "type": "object", + "required": [ + "resultCode", + "resultDescription" + ], + "properties": { + "resultCode": { + "type": "string", + "example": "00", + "description": "Result code of successful request" + }, + "resultDescription": { + "type": "string", + "example": "Successful", + "description": "Description of provided result code" + } + } } }, "securitySchemes": {