Compare commits
21 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 617f03017c | |||
| cd9a5c6189 | |||
| 6deaaeeaed | |||
| d499c7ffba | |||
| f2178c1484 | |||
| 730d97fafa | |||
| e6c537ccff | |||
| e2755349b8 | |||
| 4e8fc9cd34 | |||
| 635387104f | |||
| ce4079b2d2 | |||
| 129efaa98e | |||
| 29ce3f8fbc | |||
| d3242e0daf | |||
| ed69f94b8c | |||
| 8211b88ff4 | |||
| b2baf1fe87 | |||
| c13d3f1767 | |||
| 0c5b976117 | |||
| 9684d6dd29 | |||
| 67dfc32e4a |
Generated
+8
@@ -0,0 +1,8 @@
|
||||
# Default ignored files
|
||||
/shelf/
|
||||
/workspace.xml
|
||||
# Editor-based HTTP Client requests
|
||||
/httpRequests/
|
||||
# Datasource local storage ignored files
|
||||
/dataSources/
|
||||
/dataSources.local.xml
|
||||
+172
-538
@@ -44,8 +44,8 @@
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "LoanInformation",
|
||||
"description": "Loan Information Request.",
|
||||
"name": "LoanStatus",
|
||||
"description": "Loan Status Request.",
|
||||
"externalDocs": {
|
||||
"description": "Find out more",
|
||||
"url": "https://www.simbrellang.net"
|
||||
@@ -60,16 +60,72 @@
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "CustomerConsent",
|
||||
"description": "CustomerConsent Request.",
|
||||
"name": "RACCheck",
|
||||
"description": "Risk Acceptance Criteria Request",
|
||||
"externalDocs": {
|
||||
"description": "Find out more",
|
||||
"url": "https://www.simbrellang.net"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "NotificationCallback",
|
||||
"description": "This new feature will be used for informing Simbrella about status of the transactions that FBN have processed.",
|
||||
"name": "Disbursement",
|
||||
"description": "Loan Disbursement Request",
|
||||
"externalDocs": {
|
||||
"description": "Find out more",
|
||||
"url": "https://www.simbrellang.net"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "CollectLoan",
|
||||
"description": "Collect Loan Request",
|
||||
"externalDocs": {
|
||||
"description": "Find out more",
|
||||
"url": "https://www.simbrellang.net"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "TransactionVerify",
|
||||
"description": "Transaction Verify Request",
|
||||
"externalDocs": {
|
||||
"description": "Find out more",
|
||||
"url": "https://www.simbrellang.net"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "PenalCharge",
|
||||
"description": "Penal Charge Request",
|
||||
"externalDocs": {
|
||||
"description": "Find out more",
|
||||
"url": "https://www.simbrellang.net"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "LienCheck",
|
||||
"description": "Lien Check",
|
||||
"externalDocs": {
|
||||
"description": "Find out more",
|
||||
"url": "https://www.simbrellang.net"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "StatusCall",
|
||||
"description": "Status Call",
|
||||
"externalDocs": {
|
||||
"description": "Find out more",
|
||||
"url": "https://www.simbrellang.net"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "SMS",
|
||||
"description": "SMSRequest",
|
||||
"externalDocs": {
|
||||
"description": "Find out more",
|
||||
"url": "https://www.simbrellang.net"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "BulkSMS",
|
||||
"description": "Bulk SMS Request",
|
||||
"externalDocs": {
|
||||
"description": "Find out more",
|
||||
"url": "https://www.simbrellang.net"
|
||||
@@ -78,557 +134,130 @@
|
||||
],
|
||||
"paths": {
|
||||
"/EligibilityCheck": {
|
||||
"post": {
|
||||
|
||||
"tags": [
|
||||
"EligibilityCheck"
|
||||
],
|
||||
"summary": "Start the process - initiate steps to eligibility RAC Checks ",
|
||||
"description": "Initiate Eligibility Check Request",
|
||||
"operationId": "startEligibilityCheck",
|
||||
"requestBody": {
|
||||
"description": "Post JSON to conduct eligibility tests",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/EligibilityCheckRequest"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/EligibilityCheckRequest"
|
||||
}
|
||||
},
|
||||
"application/x-www-form-urlencoded": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/EligibilityCheckRequest"
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": true
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Successful operation",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/EligibilityCheckResponse"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/EligibilityCheckResponse"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Invalid ID supplied"
|
||||
},
|
||||
"404": {
|
||||
"description": "Pet not found"
|
||||
},
|
||||
"422": {
|
||||
"description": "Validation exception"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"petstore_auth": [
|
||||
"write:pets",
|
||||
"read:pets"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
"$ref": "./paths/EligibilityCheck.json"
|
||||
},
|
||||
"/SelectOffer": {
|
||||
"post": {
|
||||
|
||||
"tags": [
|
||||
"SelectOffer"
|
||||
],
|
||||
"summary": "This method is used the send the offer the customer selected to Simbrella ",
|
||||
"description": "This method is used the send the offer the customer selected to Simbrella",
|
||||
"operationId": "startEligibilityCheck",
|
||||
"requestBody": {
|
||||
"description": "Post JSON to conduct eligibility tests",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/SelectOffersRequest"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/SelectOffersRequest"
|
||||
}
|
||||
},
|
||||
"application/x-www-form-urlencoded": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/SelectOffersRequest"
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": true
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Successful operation",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/SelectOffersResponse"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/SelectOffersResponse"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Invalid ID supplied"
|
||||
},
|
||||
"404": {
|
||||
"description": "Offers not found"
|
||||
},
|
||||
"422": {
|
||||
"description": "Validation exception"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"petstore_auth": [
|
||||
"write:pets",
|
||||
"read:pets"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
"$ref": "./paths/SelectOffer.json"
|
||||
},
|
||||
"/ProvideLoan": {
|
||||
"post": {
|
||||
|
||||
"tags": [
|
||||
"ProvideLoan"
|
||||
],
|
||||
"summary": "Provide Loan Request ",
|
||||
"description": "Provide Loan Request",
|
||||
"operationId": "startEligibilityCheck",
|
||||
"requestBody": {
|
||||
"description": "Post JSON to conduct eligibility tests",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/EligibilityCheckRequest"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/EligibilityCheckRequest"
|
||||
}
|
||||
},
|
||||
"application/x-www-form-urlencoded": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/EligibilityCheckRequest"
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": true
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Successful operation",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/EligibilityCheckResponse"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/EligibilityCheckResponse"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Invalid ID supplied"
|
||||
},
|
||||
"404": {
|
||||
"description": "Pet not found"
|
||||
},
|
||||
"422": {
|
||||
"description": "Validation exception"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"petstore_auth": [
|
||||
"write:pets",
|
||||
"read:pets"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
"$ref": "./paths/ProvideLoan.json"
|
||||
},
|
||||
"/LoanInformation": {
|
||||
"get": {
|
||||
|
||||
"tags": [
|
||||
"LoanInformation"
|
||||
],
|
||||
"summary": "Loan Information Request ",
|
||||
"description": "Loan Information Request",
|
||||
"operationId": "startEligibilityCheck",
|
||||
"requestBody": {
|
||||
"description": "Post JSON to conduct eligibility tests",
|
||||
"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"
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": true
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Successful operation",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/LoanInformationResponse"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/LoanInformationResponse"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Invalid ID supplied"
|
||||
},
|
||||
"404": {
|
||||
"description": "Loan not found"
|
||||
},
|
||||
"422": {
|
||||
"description": "Validation exception"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"petstore_auth": [
|
||||
"write:pets",
|
||||
"read:pets"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
"/LoanStatus": {
|
||||
"$ref": "./paths/LoanStatus.json"
|
||||
},
|
||||
"/NotificationCallback": {
|
||||
"post": {
|
||||
|
||||
"tags": [
|
||||
"NotificationCallback"
|
||||
],
|
||||
"summary": "Loan Information Request ",
|
||||
"description": "Loan Information Request",
|
||||
"operationId": "startEligibilityCheck",
|
||||
"requestBody": {
|
||||
"description": "Post JSON to conduct eligibility tests",
|
||||
"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"
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": true
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Successful operation",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/LoanInformationResponse"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "#/components/schemas/LoanInformationResponse"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Invalid ID supplied"
|
||||
},
|
||||
"404": {
|
||||
"description": "Loan not found"
|
||||
},
|
||||
"422": {
|
||||
"description": "Validation exception"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"petstore_auth": [
|
||||
"write:pets",
|
||||
"read:pets"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
"/Repayment": {
|
||||
"$ref": "./paths/Repayment.json"
|
||||
},
|
||||
"/RACCheck": {
|
||||
"$ref": "./paths/RACCheck.json"
|
||||
},
|
||||
"/Disbursement": {
|
||||
"$ref": "./paths/Disbursement.json"
|
||||
},
|
||||
"/CollectLoan": {
|
||||
"$ref": "./paths/CollectLoan.json"
|
||||
},
|
||||
"/TransactionVerify": {
|
||||
"$ref": "./paths/TransactionVerify.json"
|
||||
},
|
||||
"/PenalCharge": {
|
||||
"$ref": "./paths/PenalCharge.json"
|
||||
},
|
||||
"/LienCheck": {
|
||||
"$ref": "./paths/LienCheck.json"
|
||||
},
|
||||
"/StatusCall": {
|
||||
"$ref": "./paths/StatusCall.json"
|
||||
},
|
||||
"/SMS": {
|
||||
"$ref": "./paths/SMS.json"
|
||||
},
|
||||
"/BulkSMS": {
|
||||
"$ref": "./paths/BulkSMS.json"
|
||||
}
|
||||
},
|
||||
"components": {
|
||||
"schemas": {
|
||||
"EligibilityCheckRequest": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"lienAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"example": 500.01
|
||||
},
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"example": "Tr201712RK9232P115"
|
||||
},
|
||||
"countryCode": {
|
||||
"type": "string",
|
||||
"example": "NGR"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"msisdn": {
|
||||
"type": "string",
|
||||
"example": "3451342"
|
||||
},
|
||||
"channel": {
|
||||
"type": "string",
|
||||
"example": "USSD"
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"example": "ACN8263457"
|
||||
}
|
||||
},
|
||||
"xml": {
|
||||
"name": "EligibilityCheckRequest"
|
||||
}
|
||||
"$ref": "./schemas/EligibilityCheckRequest.json"
|
||||
},
|
||||
"EligibilityCheckResponse": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"eligibleOffers": {
|
||||
"type": "string",
|
||||
"example": "OFFERS ARRAY HERE"
|
||||
},
|
||||
"resultDescription": {
|
||||
"type": "string",
|
||||
"example": "Successful"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"msisdn": {
|
||||
"type": "string",
|
||||
"example": "3451342"
|
||||
},
|
||||
"resultCode": {
|
||||
"type": "string",
|
||||
"example": "00"
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"example": "ACN8263457"
|
||||
}
|
||||
},
|
||||
"xml": {
|
||||
"name": "EligibilityCheckResponse"
|
||||
}
|
||||
"$ref": "./schemas/EligibilityCheckResponse.json"
|
||||
},
|
||||
"SelectOffersRequest": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"requestId": {
|
||||
"type": "string",
|
||||
"example": "202111170001371256908"
|
||||
},
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"example": "1231231321232"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"msisdn": {
|
||||
"type": "string",
|
||||
"example": "123456789"
|
||||
},
|
||||
"requestedAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"example": 10000.55
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"example": "ACN8263457"
|
||||
},
|
||||
"productid": {
|
||||
"type": "string",
|
||||
"example": "101"
|
||||
},
|
||||
"channel": {
|
||||
"type": "string",
|
||||
"example": "USSD"
|
||||
}
|
||||
},
|
||||
"xml": {
|
||||
"name": "SelectOffersRequest"
|
||||
}
|
||||
"SelectOfferRequest": {
|
||||
"$ref": "./schemas/SelectOfferRequest.json"
|
||||
},
|
||||
"SelectOffersResponse": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"requestId": {
|
||||
"type": "string",
|
||||
"example": "202111170001371256908"
|
||||
},
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"example": "1231231321232"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"example": "ACN8263457"
|
||||
},
|
||||
"offers": {
|
||||
"type": "string",
|
||||
"example": "ARRAY of Offers"
|
||||
},
|
||||
"resultCode": {
|
||||
"type": "string",
|
||||
"example": "00"
|
||||
},
|
||||
"resultDescription": {
|
||||
"type": "string",
|
||||
"example": "Successful"
|
||||
}
|
||||
},
|
||||
"xml": {
|
||||
"name": "SelectOffersResponse"
|
||||
}
|
||||
"SelectOfferResponse": {
|
||||
"$ref": "./schemas/SelectOfferResponse.json"
|
||||
},
|
||||
"LoanInformationRequest": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"example": "Tr201712RK9232P115"
|
||||
},
|
||||
"resultDescription": {
|
||||
"type": "string",
|
||||
"example": "Successful"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"msisdn": {
|
||||
"type": "string",
|
||||
"example": "3451342"
|
||||
},
|
||||
"channel": {
|
||||
"type": "string",
|
||||
"example": "USSD"
|
||||
}
|
||||
},
|
||||
"xml": {
|
||||
"name": "LoanInformationRequest"
|
||||
}
|
||||
"LoanStatusRequest": {
|
||||
"$ref": "./schemas/LoanStatusRequest.json"
|
||||
},
|
||||
"LoanInformationResponse": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"example": "Tr201712RK9232P115"
|
||||
},
|
||||
"resultDescription":{
|
||||
"type": "string",
|
||||
"example": "Successful"
|
||||
},
|
||||
"resultCode": {
|
||||
"type": "string",
|
||||
"example": "00"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"loan": {
|
||||
"type": "string",
|
||||
"example": "Arrray of loans"
|
||||
}
|
||||
},
|
||||
"xml": {
|
||||
"name": "LoanInformationResponse"
|
||||
}
|
||||
"LoanStatusResponse": {
|
||||
"$ref": "./schemas/LoanStatusResponse.json"
|
||||
},
|
||||
"RepaymentRequest": {
|
||||
"$ref": "./schemas/RepaymentRequest.json"
|
||||
},
|
||||
"RepaymentResponse": {
|
||||
"$ref": "./schemas/RepaymentResponse.json"
|
||||
},
|
||||
"RACCheckRequest": {
|
||||
"$ref": "./schemas/RACCheckRequest.json"
|
||||
},
|
||||
"RACCheckResponse": {
|
||||
"$ref": "./schemas/RACCheckResponse.json"
|
||||
},
|
||||
"DisbursementRequest": {
|
||||
"$ref": "./schemas/DisbursementRequest.json"
|
||||
},
|
||||
"DisbursementResponse": {
|
||||
"$ref": "./schemas/DisbursementResponse.json"
|
||||
},
|
||||
"CollectLoanRequest": {
|
||||
"$ref": "./schemas/CollectLoanRequest.json"
|
||||
},
|
||||
"CollectLoanResponse": {
|
||||
"$ref": "./schemas/CollectLoanResponse.json"
|
||||
},
|
||||
"TransactionVerifyRequest": {
|
||||
"$ref": "./schemas/TransactionVerifyRequest.json"
|
||||
},
|
||||
"TransactionVerifyResponse": {
|
||||
"$ref": "./schemas/TransactionVerifyResponse.json"
|
||||
},
|
||||
"PenalChargeRequest": {
|
||||
"$ref": "./schemas/PenalChargeRequest.json"
|
||||
},
|
||||
"PenalChargeResponse": {
|
||||
"$ref": "./schemas/PenalChargeResponse.json"
|
||||
},
|
||||
"StatusCallRequest": {
|
||||
"$ref": "./schemas/StatusCallRequest.json"
|
||||
},
|
||||
"StatusCallResponse": {
|
||||
"$ref": "./schemas/StatusCallResponse.json"
|
||||
},
|
||||
"LienCheckRequest": {
|
||||
"$ref": "./schemas/LienCheckRequest.json"
|
||||
},
|
||||
"LienCheckResponse": {
|
||||
"$ref": "./schemas/LienCheckResponse.json"
|
||||
},
|
||||
"SMSRequest": {
|
||||
"$ref": "./schemas/SMSRequest.json"
|
||||
},
|
||||
"SMSResponse": {
|
||||
"$ref": "./schemas/SMSResponse.json"
|
||||
},
|
||||
"BulkSMSRequest": {
|
||||
"$ref": "./schemas/BulkSMSRequest.json"
|
||||
},
|
||||
"BulkSMSResponse": {
|
||||
"$ref": "./schemas/BulkSMSResponse.json"
|
||||
},
|
||||
"ApiResponse": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"type": "integer",
|
||||
"format": "int32"
|
||||
},
|
||||
"type": {
|
||||
"type": "string"
|
||||
},
|
||||
"message": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"xml": {
|
||||
"name": "##default"
|
||||
}
|
||||
"$ref": "./schemas/ApiResponse.json"
|
||||
}
|
||||
},
|
||||
"securitySchemes": {
|
||||
@@ -648,6 +277,11 @@
|
||||
"type": "apiKey",
|
||||
"name": "api_key",
|
||||
"in": "header"
|
||||
},
|
||||
"basic_auth": {
|
||||
"type": "http",
|
||||
"scheme": "basic",
|
||||
"description": "Basic authentication with username and password"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,58 @@
|
||||
{
|
||||
"post": {
|
||||
"tags": [
|
||||
"BulkSMS"
|
||||
],
|
||||
"summary": "Send Bulk SMS",
|
||||
"description": "This request is used to send Bulk SMS messages to multiple customers. The max length of the array should equal 20. The API is hosted in FIRSTBANK and it is the HTTP wrapper for the real SMS sending interface.",
|
||||
"operationId": "bulkSmsNotification",
|
||||
"requestBody": {
|
||||
"required": true,
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/BulkSMSRequest.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/BulkSMSRequest.json"
|
||||
}
|
||||
},
|
||||
"application/x-www-form-urlencoded": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/BulkSMSRequest.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Bulk SMS sent successfully",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/BulkSMSResponse.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/BulkSMSResponse.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Unsuccessful Response with Client Error"
|
||||
},
|
||||
"500": {
|
||||
"description": "Internal server error"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"api_key": []
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
{
|
||||
"post": {
|
||||
"tags": [
|
||||
"CollectLoan"
|
||||
],
|
||||
"summary": "Collect Loan Request",
|
||||
"description": "This request is to collect money from user accounts. When request is received, FIRSTBANK should check all user accounts and collect as much as possible money to cover existing loan either partially or fully. In response, FIRSTBANK should return total amount that is actually collected from user accounts. First FBN collects body amount, then penal charge. If requested amount is not collected or collected partially FBN places a lien on user account. FBN places lien for body amount and penal charge separately.",
|
||||
"operationId": "collectLoan",
|
||||
"requestBody": {
|
||||
"required": true,
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/CollectLoanRequest.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/CollectLoanRequest.json"
|
||||
}
|
||||
},
|
||||
"application/x-www-form-urlencoded": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/CollectLoanRequest.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Loan Collection Successful",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/CollectLoanResponse.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/CollectLoanResponse.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Invalid request"
|
||||
},
|
||||
"500": {
|
||||
"description": "Internal server error"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"api_key": []
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
{
|
||||
"post": {
|
||||
"tags": [
|
||||
"CustomerConsent"
|
||||
],
|
||||
"summary": "Customer Consent Request",
|
||||
"description": "This endpoint allows FirstBank to send customer consent requests to Simbrella",
|
||||
"operationId": "customerConsent",
|
||||
"requestBody": {
|
||||
"required": true,
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/CustomerConsentRequest.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/CustomerConsentRequest.json"
|
||||
}
|
||||
},
|
||||
"application/x-www-form-urlencoded": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/CustomerConsentRequest.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Successful operation",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/CustomerConsentResponse.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/CustomerConsentResponse.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Invalid request"
|
||||
},
|
||||
"500": {
|
||||
"description": "Internal server error"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"basic_auth": []
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
{
|
||||
"post": {
|
||||
"tags": [
|
||||
"Disbursement"
|
||||
],
|
||||
"summary": "Loan Disbursement Request",
|
||||
"description": "This request should be executed as a simultaneous operation where loan provision and collection are executed together in same API call. If one of the operations is failed, the whole transaction should be rolled back.",
|
||||
"operationId": "disbursement",
|
||||
"requestBody": {
|
||||
"required": true,
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/DisbursementRequest.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/DisbursementRequest.json"
|
||||
}
|
||||
},
|
||||
"application/x-www-form-urlencoded": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/DisbursementRequest.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Disbursement request accepted",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/DisbursementResponse.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/DisbursementResponse.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Invalid request"
|
||||
},
|
||||
"500": {
|
||||
"description": "Internal server error"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"api_key": []
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
{
|
||||
"post": {
|
||||
"tags": [
|
||||
"EligibilityCheck"
|
||||
],
|
||||
"summary": "Check customer eligibility for loan products",
|
||||
"description": "This endpoint is used by FirstBank to check if a customer is eligible for loan products and returns available offers",
|
||||
"operationId": "eligibilityCheck",
|
||||
"requestBody": {
|
||||
"description": "Customer information for eligibility check",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/EligibilityCheckRequest.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/EligibilityCheckRequest.json"
|
||||
}
|
||||
},
|
||||
"application/x-www-form-urlencoded": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/EligibilityCheckRequest.json"
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": true
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Successful operation",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/EligibilityCheckResponse.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/EligibilityCheckResponse.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Invalid request parameters"
|
||||
},
|
||||
"401": {
|
||||
"description": "Authentication failed"
|
||||
},
|
||||
"500": {
|
||||
"description": "Internal server error"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"basic_auth": []
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
{
|
||||
"post": {
|
||||
"tags": [
|
||||
"LienCheck"
|
||||
],
|
||||
"summary": "Lien Check Request",
|
||||
"description": "This method is to check the amount of the lien on a specific account",
|
||||
"operationId": "lienCheck",
|
||||
"requestBody": {
|
||||
"required": true,
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/LienCheckRequest.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/LienCheckRequest.json"
|
||||
}
|
||||
},
|
||||
"application/x-www-form-urlencoded": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/LienCheckRequest.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Lien check successful",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/LienCheckResponse.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/LienCheckResponse.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Invalid request"
|
||||
},
|
||||
"500": {
|
||||
"description": "Internal server error"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"api_key": []
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,65 @@
|
||||
{
|
||||
"post": {
|
||||
"tags": [
|
||||
"LoanStatus"
|
||||
],
|
||||
"summary": "Get information about customer's existing loans",
|
||||
"description": "Loan Information Request to retrieve details about customer's existing loans",
|
||||
"operationId": "loanInformation",
|
||||
"requestBody": {
|
||||
"description": "Customer information for loan details",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/LoanStatusRequest.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/LoanStatusRequest.json"
|
||||
}
|
||||
},
|
||||
"application/x-www-form-urlencoded": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/LoanStatusRequest.json"
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": true
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Successful operation",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/LoanStatusResponse.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/LoanStatusResponse.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Invalid request parameters"
|
||||
},
|
||||
"401": {
|
||||
"description": "Authentication failed"
|
||||
},
|
||||
"404": {
|
||||
"description": "No loans found"
|
||||
},
|
||||
"500": {
|
||||
"description": "Internal server error"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"basic_auth": []
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,59 @@
|
||||
{
|
||||
"post": {
|
||||
"tags": [
|
||||
"NotificationCallback"
|
||||
],
|
||||
"summary": "Notification Callback",
|
||||
"description": "This new feature will be used for informing Simbrella about status of the transactions that FBN have processed. Retry mechanism should be implemented by FirstBank in case of connection issues, sending notification should be repeated for 5 minutes in case of there is connection issues, after which Simbrella will try to check the status of transaction with New Transaction Check endpoint.",
|
||||
"operationId": "notificationCallback",
|
||||
"requestBody": {
|
||||
"description": "Transaction status notification from FirstBank to Simbrella",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/NotificationCallbackRequest.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/NotificationCallbackRequest.json"
|
||||
}
|
||||
},
|
||||
"application/x-www-form-urlencoded": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/NotificationCallbackRequest.json"
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": true
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Notification received successfully",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/NotificationCallbackResponse.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/NotificationCallbackResponse.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Invalid request"
|
||||
},
|
||||
"500": {
|
||||
"description": "Internal server error"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"basic_auth": []
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
{
|
||||
"post": {
|
||||
"tags": [
|
||||
"PenalCharge"
|
||||
],
|
||||
"summary": "Penal Charge Request",
|
||||
"description": "This request is used to charge customers for penalty as per existing debt",
|
||||
"operationId": "penalCharge",
|
||||
"requestBody": {
|
||||
"required": true,
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/PenalChargeRequest.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/PenalChargeRequest.json"
|
||||
}
|
||||
},
|
||||
"application/x-www-form-urlencoded": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/PenalChargeRequest.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Penal Charge Request Accepted",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/PenalChargeResponse.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/PenalChargeResponse.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Invalid request"
|
||||
},
|
||||
"500": {
|
||||
"description": "Internal server error"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"api_key": []
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,59 @@
|
||||
{
|
||||
"post": {
|
||||
"tags": [
|
||||
"ProvideLoan"
|
||||
],
|
||||
"summary": "Provide Loan Request",
|
||||
"description": "This endpoint is used by FirstBank to request a loan provision for a customer. It allows FirstBank to specify the loan details including the amount, collection type, and loan type.",
|
||||
"operationId": "provideLoan",
|
||||
"requestBody": {
|
||||
"description": "Loan provision request details",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/ProvideLoanRequest.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/ProvideLoanRequest.json"
|
||||
}
|
||||
},
|
||||
"application/x-www-form-urlencoded": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/ProvideLoanRequest.json"
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": true
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Loan provision request processed successfully",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/ProvideLoanResponse.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/ProvideLoanResponse.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Invalid request"
|
||||
},
|
||||
"500": {
|
||||
"description": "Internal server error"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"basic_auth": []
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
{
|
||||
"post": {
|
||||
"tags": [
|
||||
"RACCheck"
|
||||
],
|
||||
"summary": "Risk Acceptance Criteria Check",
|
||||
"description": "This request is used to check if a customer passes the Risk Acceptance Criteria defined by the bank",
|
||||
"operationId": "racCheck",
|
||||
"requestBody": {
|
||||
"required": true,
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/RACCheckRequest.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/RACCheckRequest.json"
|
||||
}
|
||||
},
|
||||
"application/x-www-form-urlencoded": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/RACCheckRequest.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "RAC Check Successful",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/RACCheckResponse.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/RACCheckResponse.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Invalid request"
|
||||
},
|
||||
"500": {
|
||||
"description": "Internal server error"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"api_key": []
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,65 @@
|
||||
{
|
||||
"post": {
|
||||
"tags": [
|
||||
"Repayment"
|
||||
],
|
||||
"summary": "Process a loan repayment request",
|
||||
"description": "Repayment Request to initiate loan repayment",
|
||||
"operationId": "repayment",
|
||||
"requestBody": {
|
||||
"description": "Repayment request details",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/RepaymentRequest.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/RepaymentRequest.json"
|
||||
}
|
||||
},
|
||||
"application/x-www-form-urlencoded": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/RepaymentRequest.json"
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": true
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Repayment Successful",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/RepaymentResponse.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/RepaymentResponse.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Invalid request parameters"
|
||||
},
|
||||
"401": {
|
||||
"description": "Authentication failed"
|
||||
},
|
||||
"404": {
|
||||
"description": "Debt not found"
|
||||
},
|
||||
"500": {
|
||||
"description": "Internal server error"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"basic_auth": []
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
{
|
||||
"post": {
|
||||
"tags": [
|
||||
"RevokeEnableConsent"
|
||||
],
|
||||
"summary": "Revoke or Enable Consent Request",
|
||||
"description": "This endpoint is used to notify FirstBank about the processing of a customer consent request. It allows Simbrella to inform FirstBank when a customer's consent has been either enabled or revoked.",
|
||||
"operationId": "revokeEnableConsent",
|
||||
"requestBody": {
|
||||
"required": true,
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/RevokeEnableConsentRequest.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/RevokeEnableConsentRequest.json"
|
||||
}
|
||||
},
|
||||
"application/x-www-form-urlencoded": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/RevokeEnableConsentRequest.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Consent status update successful",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/RevokeEnableConsentResponse.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/RevokeEnableConsentResponse.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Invalid request"
|
||||
},
|
||||
"500": {
|
||||
"description": "Internal server error"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"api_key": []
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
{
|
||||
"post": {
|
||||
"tags": [
|
||||
"SMS"
|
||||
],
|
||||
"summary": "Send Single SMS",
|
||||
"description": "This request is used to send a single SMS message to a customer. The API is hosted in FIRSTBANK and it is the HTTP wrapper for the real SMS sending interface.",
|
||||
"operationId": "smsNotification",
|
||||
"requestBody": {
|
||||
"required": true,
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/SMSRequest.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/SMSRequest.json"
|
||||
}
|
||||
},
|
||||
"application/x-www-form-urlencoded": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/SMSRequest.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "SMS sent successfully",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/SMSResponse.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/SMSResponse.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Unsuccessful Response with Client Error"
|
||||
},
|
||||
"500": {
|
||||
"description": "Internal server error"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"api_key": []
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
{
|
||||
"post": {
|
||||
"tags": [
|
||||
"SelectOffer"
|
||||
],
|
||||
"summary": "Send the offer the customer selected to Simbrella",
|
||||
"description": "This method is used to send the offer the customer selected to Simbrella",
|
||||
"operationId": "selectOffer",
|
||||
"requestBody": {
|
||||
"description": "Customer selected offer details",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/SelectOfferRequest.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/SelectOfferRequest.json"
|
||||
}
|
||||
},
|
||||
"application/x-www-form-urlencoded": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/SelectOfferRequest.json"
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": true
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Successful operation",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/SelectOfferResponse.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/SelectOfferResponse.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Invalid request parameters"
|
||||
},
|
||||
"401": {
|
||||
"description": "Authentication failed"
|
||||
},
|
||||
"500": {
|
||||
"description": "Internal server error"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"basic_auth": []
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
{
|
||||
"post": {
|
||||
"tags": [
|
||||
"StatusCall"
|
||||
],
|
||||
"summary": "Status Call Request",
|
||||
"description": "This will be used to check the status of a transaction by Simbrella to Firstabank if there is no initial response after 2mins.",
|
||||
"operationId": "statusCall",
|
||||
"requestBody": {
|
||||
"required": true,
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/StatusCallRequest.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/StatusCallRequest.json"
|
||||
}
|
||||
},
|
||||
"application/x-www-form-urlencoded": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/StatusCallRequest.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Transaction check successful",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/StatusCallResponse.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/StatusCallResponse.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Invalid request"
|
||||
},
|
||||
"500": {
|
||||
"description": "Internal server error"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"api_key": []
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
{
|
||||
"post": {
|
||||
"tags": [
|
||||
"TokenValidation"
|
||||
],
|
||||
"summary": "Token Validation Request",
|
||||
"description": "This method is used while users from FBN access Customer Care Portal. User will enter soft/hard token code. This will be captured and sent to this endpoint for validation.",
|
||||
"operationId": "validateToken",
|
||||
"requestBody": {
|
||||
"required": true,
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/TokenValidationRequest.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/TokenValidationRequest.json"
|
||||
}
|
||||
},
|
||||
"application/x-www-form-urlencoded": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/TokenValidationRequest.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Token validation successful",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/TokenValidationResponse.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/TokenValidationResponse.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Invalid request"
|
||||
},
|
||||
"500": {
|
||||
"description": "Internal server error"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"api_key": []
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
{
|
||||
"post": {
|
||||
"tags": [
|
||||
"TransactionVerify"
|
||||
],
|
||||
"summary": "Transaction Verification Request",
|
||||
"description": "This request is to double check the response received from DisburseLoan and CollectLoan Synchronous APIs. This request is required to check transaction results on FIRSTBANK.",
|
||||
"operationId": "transactionVerify",
|
||||
"requestBody": {
|
||||
"required": true,
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/TransactionVerifyRequest.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/TransactionVerifyRequest.json"
|
||||
}
|
||||
},
|
||||
"application/x-www-form-urlencoded": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/TransactionVerifyRequest.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "Transaction Verification Successful",
|
||||
"content": {
|
||||
"application/json": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/TransactionVerifyResponse.json"
|
||||
}
|
||||
},
|
||||
"application/xml": {
|
||||
"schema": {
|
||||
"$ref": "../schemas/TransactionVerifyResponse.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"400": {
|
||||
"description": "Invalid request"
|
||||
},
|
||||
"500": {
|
||||
"description": "Internal server error"
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{
|
||||
"api_key": []
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"code": {
|
||||
"type": "integer",
|
||||
"format": "int32"
|
||||
},
|
||||
"type": {
|
||||
"type": "string"
|
||||
},
|
||||
"message": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"xml": {
|
||||
"name": "##default"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
{
|
||||
"type": "array",
|
||||
"maxItems": 20,
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"text": {
|
||||
"type": "string",
|
||||
"description": "Message to send to customer",
|
||||
"example": "This is a test message for SMS request method."
|
||||
},
|
||||
"dest": {
|
||||
"type": "string",
|
||||
"description": "Phone Number in international format",
|
||||
"example": "+2348039409144"
|
||||
},
|
||||
"unicode": {
|
||||
"type": "boolean",
|
||||
"description": "Character encoding standard (set as True for bulk SMS)",
|
||||
"example": true
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"text",
|
||||
"dest",
|
||||
"unicode"
|
||||
]
|
||||
},
|
||||
"xml": {
|
||||
"name": "BulkSMSRequest"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"data": {
|
||||
"type": "string",
|
||||
"description": "Any additional data in response",
|
||||
"example": ""
|
||||
},
|
||||
"statusCode": {
|
||||
"type": "integer",
|
||||
"description": "Result code of executed process (200 = Success)",
|
||||
"example": 200
|
||||
},
|
||||
"IsSuccessful": {
|
||||
"type": "boolean",
|
||||
"description": "An Indicator that the process was successful or not",
|
||||
"example": true
|
||||
},
|
||||
"errorMessage": {
|
||||
"type": "string",
|
||||
"description": "Description of status code if process is failed, null if successful",
|
||||
"example": null
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"data",
|
||||
"statusCode",
|
||||
"IsSuccessful",
|
||||
"errorMessage"
|
||||
],
|
||||
"xml": {
|
||||
"name": "BulkSMSResponse"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,84 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of transaction in Simbrella system",
|
||||
"example": "T002"
|
||||
},
|
||||
"fbnTransactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique id of the transaction received from FBN in Eligibility or Provision requests",
|
||||
"example": "Tr201712RK9232P115"
|
||||
},
|
||||
"debtId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a loan in Simbrella system that is going to be collected (it correlates with provision request)",
|
||||
"example": "273194670"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a user",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"description": "Specific identifier of a user's account",
|
||||
"example": "2017821799"
|
||||
},
|
||||
"productId": {
|
||||
"type": "string",
|
||||
"description": "Identifier of a product for which collection to be made",
|
||||
"example": "101"
|
||||
},
|
||||
"collectAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount to be collected from user's account (penalCharge is not included)",
|
||||
"example": 80000.0
|
||||
},
|
||||
"penalCharge": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount of penalty to be collected from user's account. If there is no penalty, amount is '0'",
|
||||
"example": 0.0
|
||||
},
|
||||
"collectionMethod": {
|
||||
"type": "integer",
|
||||
"description": "1 - on deposit of salary; 2 - on due date; 3 - initiated by user",
|
||||
"enum": [1, 2, 3],
|
||||
"example": 1
|
||||
},
|
||||
"lienAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Aggregated (summed up) lien amount",
|
||||
"example": 80000.0
|
||||
},
|
||||
"countryId": {
|
||||
"type": "string",
|
||||
"description": "Set to static value '01'",
|
||||
"example": "01"
|
||||
},
|
||||
"comment": {
|
||||
"type": "string",
|
||||
"description": "Any additional comment for provided loan operation",
|
||||
"example": "Testing CollectionLoanRequest"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"transactionId",
|
||||
"fbnTransactionId",
|
||||
"debtId",
|
||||
"customerId",
|
||||
"accountId",
|
||||
"productId",
|
||||
"collectAmount",
|
||||
"collectionMethod",
|
||||
"lienAmount",
|
||||
"countryId"
|
||||
],
|
||||
"xml": {
|
||||
"name": "CollectLoanRequest"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,83 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of transaction in Simbrella system",
|
||||
"example": "T002"
|
||||
},
|
||||
"debtId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a loan in Simbrella system that is going to be collected (it correlates with provision request)",
|
||||
"example": "273194670"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a user",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"description": "Specific identifier of a user's account",
|
||||
"example": "2017821799"
|
||||
},
|
||||
"productId": {
|
||||
"type": "string",
|
||||
"description": "Identifier of a product for which collection to be made",
|
||||
"example": "101"
|
||||
},
|
||||
"collectAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount collected from user's account (penalCharge is not included)",
|
||||
"example": 60000.0
|
||||
},
|
||||
"penalCharge": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount of penalty collected from user's account. If there is no penalty, amount is '0'",
|
||||
"example": 0.0
|
||||
},
|
||||
"lienAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Aggregated (summed up) lien amount",
|
||||
"example": 20000.0
|
||||
},
|
||||
"countryId": {
|
||||
"type": "string",
|
||||
"description": "Set to static value '01'",
|
||||
"example": "01"
|
||||
},
|
||||
"comment": {
|
||||
"type": "string",
|
||||
"description": "Any additional comment for provided loan operation",
|
||||
"example": "Testing CollectionLoanRequest"
|
||||
},
|
||||
"resultCode": {
|
||||
"type": "string",
|
||||
"description": "Result code of executed transaction, e.g. (00 – Success etc.) see result codes table",
|
||||
"example": "00"
|
||||
},
|
||||
"resultDescription": {
|
||||
"type": "string",
|
||||
"description": "Description of provided result code",
|
||||
"example": "Loan Collection Successful"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"transactionId",
|
||||
"debtId",
|
||||
"customerId",
|
||||
"accountId",
|
||||
"productId",
|
||||
"collectAmount",
|
||||
"penalCharge",
|
||||
"lienAmount",
|
||||
"resultCode",
|
||||
"resultDescription"
|
||||
],
|
||||
"xml": {
|
||||
"name": "CollectLoanResponse"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of transaction in FIRSTBANK system",
|
||||
"example": "20171209232177"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a customer",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"description": "Specific identifier of a user's account",
|
||||
"example": "ACN8263457"
|
||||
},
|
||||
"requestTime": {
|
||||
"type": "string",
|
||||
"format": "date-time",
|
||||
"description": "Date and time of consent request",
|
||||
"example": "2019-10-18 14:26:21.063"
|
||||
},
|
||||
"consentType": {
|
||||
"type": "string",
|
||||
"description": "Type of consent: 'Enable' or 'Revoke'",
|
||||
"enum": ["Enable", "Revoke"],
|
||||
"example": "Revoke"
|
||||
},
|
||||
"channel": {
|
||||
"type": "string",
|
||||
"description": "Request channel: 'USSD' or 'APP'",
|
||||
"example": "100"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"$type",
|
||||
"transactionId",
|
||||
"customerId",
|
||||
"accountId",
|
||||
"requestTime",
|
||||
"consentType",
|
||||
"channel"
|
||||
],
|
||||
"xml": {
|
||||
"name": "CustomerConsentRequest"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"resultCode": {
|
||||
"type": "string",
|
||||
"description": "Result code of executed transaction, e.g. (00 – Success etc.) see result codes table",
|
||||
"example": "00"
|
||||
},
|
||||
"resultDescription": {
|
||||
"type": "string",
|
||||
"description": "Description of provided result code",
|
||||
"example": "Request is received"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"resultCode",
|
||||
"resultDescription"
|
||||
],
|
||||
"xml": {
|
||||
"name": "CustomerConsentResponse"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,125 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"requestId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of request",
|
||||
"example": "R02802"
|
||||
},
|
||||
"countryCode": {
|
||||
"type": "string",
|
||||
"description": "Unique country code. Please refer to Country Codes table",
|
||||
"example": "NGR"
|
||||
},
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of transaction in Simbrella system",
|
||||
"example": "Tr201712RK9232P115"
|
||||
},
|
||||
"debtId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a loan in Simbrella system that is going to be collected (it correlates with provision request)",
|
||||
"example": "273194670"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a user",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"description": "Specific identifier of a user's account",
|
||||
"example": "2017821799"
|
||||
},
|
||||
"productId": {
|
||||
"type": "string",
|
||||
"description": "Identifier of a product to be provided to a user",
|
||||
"example": "101"
|
||||
},
|
||||
"provideAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount of loan (including service fee) to be provided on a specific account of a user",
|
||||
"example": 100000.0
|
||||
},
|
||||
"totalFees": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Total amount of all fees combined",
|
||||
"example": 7075
|
||||
},
|
||||
"feesDetails": {
|
||||
"type": "object",
|
||||
"description": "Detailed breakdown of all fees",
|
||||
"properties": {
|
||||
"collectAmountInterest": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Interest Amount to be collected immediately after loan is provided (Only for 30 days)",
|
||||
"example": 5000
|
||||
},
|
||||
"collectAmountMgtFee": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Management Fee Amount to be collected immediately after loan is provided",
|
||||
"example": 1000
|
||||
},
|
||||
"collectAmountInsurance": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Insurance Amount to be collected immediately after loan is provided",
|
||||
"example": 1000
|
||||
},
|
||||
"collectAmountVAT": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "VAT Amount to be collected immediately after loan is provided",
|
||||
"example": 75
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"collectAmountInterest",
|
||||
"collectAmountMgtFee",
|
||||
"collectAmountInsurance",
|
||||
"collectAmountVAT"
|
||||
]
|
||||
},
|
||||
"countryId": {
|
||||
"type": "string",
|
||||
"description": "Set to static value '01'",
|
||||
"example": "01"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"requestId",
|
||||
"countryCode",
|
||||
"transactionId",
|
||||
"debtId",
|
||||
"customerId",
|
||||
"accountId",
|
||||
"productId",
|
||||
"provideAmount",
|
||||
"totalFees",
|
||||
"feesDetails"
|
||||
],
|
||||
"example": {
|
||||
"requestId": "R02802",
|
||||
"countryCode": "NGR",
|
||||
"transactionId": "Tr201712RK9232P115",
|
||||
"debtId": "273194670",
|
||||
"customerId": "CN621868",
|
||||
"accountId": "2017821799",
|
||||
"productId": "101",
|
||||
"provideAmount": 100000.0,
|
||||
"totalFees": 7075,
|
||||
"feesDetails": {
|
||||
"collectAmountInterest": 5000,
|
||||
"collectAmountMgtFee": 1000,
|
||||
"collectAmountInsurance": 1000,
|
||||
"collectAmountVAT": 75
|
||||
}
|
||||
},
|
||||
"xml": {
|
||||
"name": "DisbursementRequest"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,134 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"requestId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of request",
|
||||
"example": "R02802"
|
||||
},
|
||||
"countryCode": {
|
||||
"type": "string",
|
||||
"description": "Unique country code.",
|
||||
"example": "NGR"
|
||||
},
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique ID of customer’s USSD session. Must be consistent throughout whole USSD journey",
|
||||
"example": "Tr201712RK9232P115"
|
||||
},
|
||||
"debtId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a loan in Simbrella system that is going to be collected (it correlates with provision request)",
|
||||
"example": "273194670"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a user",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"description": "Specific identifier of a user's account",
|
||||
"example": "2017821799"
|
||||
},
|
||||
"productId": {
|
||||
"type": "string",
|
||||
"description": "Identifier of a product to be provided to a user",
|
||||
"example": "101"
|
||||
},
|
||||
"provideAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount of loan (including service fee) to be provided on a specific account of a user",
|
||||
"example": 100000.0
|
||||
},
|
||||
"totalFees": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Total amount of all fees combined",
|
||||
"example": 7075
|
||||
},
|
||||
"feesDetails": {
|
||||
"type": "object",
|
||||
"description": "Detailed breakdown of all fees",
|
||||
"properties": {
|
||||
"collectAmountInterest": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Interest Amount to be collected immediately after loan is provided (Only for 30 days)",
|
||||
"example": 5000
|
||||
},
|
||||
"collectAmountMgtFee": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Management Fee Amount to be collected immediately after loan is provided",
|
||||
"example": 1000
|
||||
},
|
||||
"collectAmountInsurance": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Insurance Amount to be collected immediately after loan is provided",
|
||||
"example": 1000
|
||||
},
|
||||
"collectAmountVAT": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "VAT Amount to be collected immediately after loan is provided",
|
||||
"example": 75
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"collectAmountInterest",
|
||||
"collectAmountMgtFee",
|
||||
"collectAmountInsurance",
|
||||
"collectAmountVAT"
|
||||
]
|
||||
},
|
||||
"resultCode": {
|
||||
"type": "string",
|
||||
"description": "Result code of executed transaction, e.g. (00 – Success etc.) see result codes table",
|
||||
"example": "00"
|
||||
},
|
||||
"resultDescription": {
|
||||
"type": "string",
|
||||
"description": "Description of provided result code",
|
||||
"example": "Loan Request Completed Successfully!"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"requestId",
|
||||
"countryCode",
|
||||
"transactionId",
|
||||
"debtId",
|
||||
"customerId",
|
||||
"accountId",
|
||||
"productId",
|
||||
"provideAmount",
|
||||
"totalFees",
|
||||
"feesDetails",
|
||||
"resultCode",
|
||||
"resultDescription"
|
||||
],
|
||||
"example": {
|
||||
"requestId": "R02802",
|
||||
"countryCode": "NGR",
|
||||
"transactionId": "Tr201712RK9232P115",
|
||||
"debtId": "273194670",
|
||||
"customerId": "CN621868",
|
||||
"accountId": "2017821799",
|
||||
"productId": "101",
|
||||
"provideAmount": 100000.0,
|
||||
"totalFees": 7075,
|
||||
"feesDetails": {
|
||||
"collectAmountInterest": 5000,
|
||||
"collectAmountMgtFee": 1000,
|
||||
"collectAmountInsurance": 1000,
|
||||
"collectAmountVAT": 75
|
||||
},
|
||||
"resultCode": "00",
|
||||
"resultDescription": "Loan Request Completed Successfully!"
|
||||
},
|
||||
"xml": {
|
||||
"name": "DisbursementResponse"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
{
|
||||
"type": "object",
|
||||
"required": [
|
||||
"transactionId",
|
||||
"countryCode",
|
||||
"customerId",
|
||||
"accountId",
|
||||
"channel"
|
||||
],
|
||||
"properties": {
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of transaction. This transaction Id must be consistent across all platforms",
|
||||
"example": "Tr201712RK9232P115"
|
||||
},
|
||||
"countryCode": {
|
||||
"type": "string",
|
||||
"description": "Unique country code. Please refer to Country Codes table",
|
||||
"example": "NGR"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a customer",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"description": "Specific identifier of a user's account",
|
||||
"example": "ACN8263457"
|
||||
},
|
||||
"msisdn": {
|
||||
"type": "string",
|
||||
"description": "User's mobile number in an international format",
|
||||
"example": "8012345678"
|
||||
},
|
||||
"channel": {
|
||||
"type": "string",
|
||||
"description": "Request channel: USSD, MobApp, or Web - type Channel",
|
||||
"example": "100"
|
||||
}
|
||||
},
|
||||
"xml": {
|
||||
"name": "EligibilityCheckRequest"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,105 @@
|
||||
{
|
||||
"type": "object",
|
||||
"required": [
|
||||
"customerId",
|
||||
"transactionId",
|
||||
"countryCode",
|
||||
"eligibleOffers",
|
||||
"resultCode",
|
||||
"resultDescription"
|
||||
],
|
||||
"properties": {
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a customer",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of transaction. This transaction Id must be consistent across all platforms",
|
||||
"example": "Tr201712RK9232P115"
|
||||
},
|
||||
"countryCode": {
|
||||
"type": "string",
|
||||
"description": "Unique country code. Please refer to “Country Codes” table",
|
||||
"example": "NGR"
|
||||
},
|
||||
"msisdn": {
|
||||
"type": "string",
|
||||
"description": "User's mobile number in an international format",
|
||||
"example": "2348012345678"
|
||||
},
|
||||
"eligibleOffers": {
|
||||
"type": "array",
|
||||
"description": "Array of loan offers the customer is eligible for",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"offerId": {
|
||||
"type": "integer",
|
||||
"description": "Offer identifier",
|
||||
"example": 101
|
||||
},
|
||||
"minAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Minimum loan amount",
|
||||
"example": 5000
|
||||
},
|
||||
"maxAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Maximum loan amount",
|
||||
"example": 20000
|
||||
},
|
||||
"productId": {
|
||||
"type": "integer",
|
||||
"description": "Product identifier",
|
||||
"example": 2030101
|
||||
},
|
||||
"tenor": {
|
||||
"type": "integer",
|
||||
"description": "Loan tenor in days",
|
||||
"example": 30
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"offerId",
|
||||
"minAmount",
|
||||
"maxAmount",
|
||||
"productId",
|
||||
"tenor"
|
||||
]
|
||||
},
|
||||
"example": [
|
||||
{
|
||||
"offerId": 101,
|
||||
"minAmount": 5000,
|
||||
"maxAmount": 20000,
|
||||
"productId": 2030,
|
||||
"tenor": 30
|
||||
},
|
||||
{
|
||||
"offerId": 102,
|
||||
"minAmount": 20000,
|
||||
"maxAmount": 50000,
|
||||
"productId": 2090,
|
||||
"tenor": 90
|
||||
}
|
||||
]
|
||||
},
|
||||
"resultCode": {
|
||||
"type": "string",
|
||||
"description": "Result code of executed transaction, e.g. (00 – Success etc.) see result codes table",
|
||||
"example": "00"
|
||||
},
|
||||
"resultDescription": {
|
||||
"type": "string",
|
||||
"description": "Textual description of provided result code. In case if customer is not eligible (where resultCode is «05») this parameter contains end-user message that can be show directly to the customer.",
|
||||
"example": "Successful"
|
||||
}
|
||||
},
|
||||
"xml": {
|
||||
"name": "EligibilityCheckResponse"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique Identifier in Simbrella system",
|
||||
"example": "SMB1234567"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of customer",
|
||||
"example": "123456"
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of account",
|
||||
"example": "E9F77222920BAAB1C5ACF2253C6D6113"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"transactionId",
|
||||
"customerId",
|
||||
"accountId"
|
||||
],
|
||||
"xml": {
|
||||
"name": "LienCheckRequest"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"lienAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Lien amount applied to the account",
|
||||
"example": 20000.0
|
||||
},
|
||||
"resultCode": {
|
||||
"type": "string",
|
||||
"description": "Result code of response",
|
||||
"example": "00"
|
||||
},
|
||||
"resultDescription": {
|
||||
"type": "string",
|
||||
"description": "Response description",
|
||||
"example": "Successful"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"lienAmount",
|
||||
"resultCode",
|
||||
"resultDescription"
|
||||
],
|
||||
"xml": {
|
||||
"name": "LienCheckResponse"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
{
|
||||
"type": "object",
|
||||
"required": [
|
||||
"transactionId",
|
||||
"customerId",
|
||||
"channel"
|
||||
],
|
||||
"properties": {
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of transaction. This transaction Id must be consistent across all platforms",
|
||||
"example": "Tr201712RK9232P115"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a customer",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"msisdn": {
|
||||
"type": "string",
|
||||
"description": "User's mobile number in an international format",
|
||||
"example": "3451342"
|
||||
},
|
||||
"channel": {
|
||||
"type": "string",
|
||||
"description": "Request channel: USSD, MobileApp, or Web",
|
||||
"example": "100"
|
||||
}
|
||||
},
|
||||
"xml": {
|
||||
"name": "LoanStatusRequest"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,96 @@
|
||||
{
|
||||
"type": "object",
|
||||
"required": [
|
||||
"customerId",
|
||||
"transactionId",
|
||||
"loans",
|
||||
"resultCode",
|
||||
"resultDescription"
|
||||
],
|
||||
"properties": {
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a user",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of transaction. This transaction Id must be consistent across all platforms",
|
||||
"example": "Tr201712RK9232P115"
|
||||
},
|
||||
"loans": {
|
||||
"type": "array",
|
||||
"description": "Array of loan entities. If customer doesn't have a loan, this array will be empty",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"debtId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a debt of a user",
|
||||
"example": "123456789"
|
||||
},
|
||||
"loanDate": {
|
||||
"type": "string",
|
||||
"format": "date-time",
|
||||
"description": "Date and time of provided loan",
|
||||
"example": "2019-10-18 14:26:21.063"
|
||||
},
|
||||
"dueDate": {
|
||||
"type": "string",
|
||||
"format": "date-time",
|
||||
"description": "Due date of provided loan",
|
||||
"example": "2019-11-20 14:26:21.063"
|
||||
},
|
||||
"currentLoanAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Outstanding debt amount of the user",
|
||||
"example": 8500.0
|
||||
},
|
||||
"initialLoanAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Initial loan amount",
|
||||
"example": 10000.0
|
||||
},
|
||||
"defaultPenaltyFee": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Penalty fee amount",
|
||||
"example": 0.0
|
||||
},
|
||||
"continuousFee": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Interest fee charged continuously. First occurs when payment is delayed",
|
||||
"example": 0.0
|
||||
},
|
||||
"productId": {
|
||||
"type": "string",
|
||||
"description": "Identifier of a provided product to a user",
|
||||
"example": "101"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"totalDebtAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Sum amount of all existing debts of a user",
|
||||
"example": 8500.0
|
||||
},
|
||||
"resultCode": {
|
||||
"type": "string",
|
||||
"description": "Result code of executed transaction, e.g. (00 – Success etc.) see result codes table",
|
||||
"example": "00"
|
||||
},
|
||||
"resultDescription": {
|
||||
"type": "string",
|
||||
"description": "Description of provided result code",
|
||||
"example": "Successful"
|
||||
}
|
||||
},
|
||||
"xml": {
|
||||
"name": "LoanStatusResponse"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"fbnTransactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique id of the transaction received from FBN in Eligibility or Provision requests",
|
||||
"example": "123456789"
|
||||
},
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of transaction in FIRSTBANK system",
|
||||
"example": "123456789"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a customer",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"description": "Specific identifier of a user's account",
|
||||
"example": "ACN8263457"
|
||||
},
|
||||
"debtId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of providing loan in Simbrella system",
|
||||
"example": "987654321"
|
||||
},
|
||||
"transactionType": {
|
||||
"type": "string",
|
||||
"description": "Type of transaction initiated by Simbrella",
|
||||
"enum": ["Disbursement", "Collection", "PenalCharge"],
|
||||
"example": "Disbursement"
|
||||
},
|
||||
"amountProvided": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount provided to customer within Disbursement operation. Will be 0 for Collection or PenalCharge transactions.",
|
||||
"example": 1000.00
|
||||
},
|
||||
"amountCollected": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount collected during execution of operation. In case of Disbursement this value will be equal to 0. In case of Collection this value will represent amount successfully collected from customers account. In case of Penal charge this value will represent penalty amount collected from customer's account.",
|
||||
"example": 0.00
|
||||
},
|
||||
"responseCode": {
|
||||
"type": "string",
|
||||
"description": "Result code of the notification, e.g. (00 – Success etc.) see result codes table",
|
||||
"example": "00"
|
||||
},
|
||||
"responseDescription": {
|
||||
"type": "string",
|
||||
"description": "Result description of the notification, detailing status of the transaction",
|
||||
"example": "Successful"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"fbnTransactionId",
|
||||
"transactionId",
|
||||
"customerId",
|
||||
"accountId",
|
||||
"debtId",
|
||||
"transactionType",
|
||||
"amountProvided",
|
||||
"amountCollected",
|
||||
"responseCode",
|
||||
"responseDescription"
|
||||
],
|
||||
"xml": {
|
||||
"name": "NotificationCallbackRequest"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"resultCode": {
|
||||
"type": "string",
|
||||
"description": "Result code of successful request. See Simbrella Result Codes",
|
||||
"maxLength": 2,
|
||||
"example": "00"
|
||||
},
|
||||
"resultDescription": {
|
||||
"type": "string",
|
||||
"description": "Description of provided result code",
|
||||
"maxLength": 100,
|
||||
"example": "Successful"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"resultCode",
|
||||
"resultDescription"
|
||||
],
|
||||
"xml": {
|
||||
"name": "NotificationCallbackResponse"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,59 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of transaction in Simbrella system",
|
||||
"example": "T004"
|
||||
},
|
||||
"fbnTransactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique id of the transaction received from FBN in Eligibility or Provision requests",
|
||||
"example": "Tr201712RK9232P115"
|
||||
},
|
||||
"debtId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of providing loan in Simbrella system",
|
||||
"example": "273194670"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a user",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"description": "Specific identifier of a user's account",
|
||||
"example": "2017821799"
|
||||
},
|
||||
"penalCharge": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Penalty amount that needs to be collected from user's account",
|
||||
"example": 101.2
|
||||
},
|
||||
"lienAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Aggregated (summed up) lien amount",
|
||||
"example": 101.2
|
||||
},
|
||||
"comment": {
|
||||
"type": "string",
|
||||
"description": "Any additional comment for provided loan operation",
|
||||
"example": "Testing PenalChargeRequest"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"transactionId",
|
||||
"fbnTransactionId",
|
||||
"debtId",
|
||||
"customerId",
|
||||
"accountId",
|
||||
"penalCharge",
|
||||
"lienAmount"
|
||||
],
|
||||
"xml": {
|
||||
"name": "PenalChargeRequest"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"resultCode": {
|
||||
"type": "string",
|
||||
"description": "Result code of executed transaction, e.g. (00 – Success etc.) see result codes table",
|
||||
"example": "00"
|
||||
},
|
||||
"resultDescription": {
|
||||
"type": "string",
|
||||
"description": "Description of provided result code",
|
||||
"example": "Penal charge debited successfully"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"resultCode",
|
||||
"resultDescription"
|
||||
],
|
||||
"xml": {
|
||||
"name": "PenalChargeResponse"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,72 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"requestId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of request",
|
||||
"example": "202111170001371256908"
|
||||
},
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of transaction. This transaction Id must be consistent across all platforms",
|
||||
"example": "Tr201712RK9232P115"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a customer",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"description": "Specific identifier of a user's account",
|
||||
"example": "ACN8263457"
|
||||
},
|
||||
"msisdn": {
|
||||
"type": "string",
|
||||
"description": "User's mobile number in an international format",
|
||||
"example": "3451342"
|
||||
},
|
||||
"productId": {
|
||||
"type": "string",
|
||||
"description": "Identifier of a product chosen by user",
|
||||
"example": "101"
|
||||
},
|
||||
"requestedAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount of loan that requested by user",
|
||||
"example": 900
|
||||
},
|
||||
"collectionType": {
|
||||
"type": "integer",
|
||||
"description": "Type of collection that user is preferred. 0 – as soon as salary inflow occurs; 1- as soon as any new inflow occurs, 1 – collection after XX days.",
|
||||
"enum": [0, 1],
|
||||
"example": 1
|
||||
},
|
||||
"offerId": {
|
||||
"type": "integer",
|
||||
"description": "Offer ID of the loan selected by Customer",
|
||||
"example": 1127
|
||||
},
|
||||
"channel": {
|
||||
"type": "string",
|
||||
"description": "Request channel: “USSD” or “MobileApp” or “Web” - Reference Channel types",
|
||||
"enum": ["USSD", "MobileApp", "Web"],
|
||||
"example": "100"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"$type",
|
||||
"transactionId",
|
||||
"customerId",
|
||||
"accountId",
|
||||
"productId",
|
||||
"requestedAmount",
|
||||
"collectionType",
|
||||
"offerId",
|
||||
"channel"
|
||||
],
|
||||
"xml": {
|
||||
"name": "ProvideLoanRequest"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,51 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"requestId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of request",
|
||||
"example": "202111170001371256908"
|
||||
},
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of transaction. This transaction Id must be consistent across all platforms",
|
||||
"example": "Tr201712RK9232P115"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a customer",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"description": "Specific identifier of a user's account",
|
||||
"example": "ACN8263457"
|
||||
},
|
||||
"msisdn": {
|
||||
"type": "string",
|
||||
"description": "User's mobile number in an international format",
|
||||
"example": "3451342"
|
||||
},
|
||||
"resultCode": {
|
||||
"type": "string",
|
||||
"description": "Result code of executed transaction, e.g. (00 – Success etc.) see result codes table",
|
||||
"example": "00"
|
||||
},
|
||||
"resultDescription": {
|
||||
"type": "string",
|
||||
"description": "Description of provided result code",
|
||||
"example": "Successful"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"requestId",
|
||||
"transactionId",
|
||||
"customerId",
|
||||
"accountId",
|
||||
"resultCode",
|
||||
"resultDescription"
|
||||
],
|
||||
"xml": {
|
||||
"name": "ProvideLoanResponse"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of transaction. This transaction Id must be consistent across all platforms",
|
||||
"example": "T001"
|
||||
},
|
||||
"fbnTransactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique id of the transaction received from FBN in Eligibility or Provision requests",
|
||||
"example": "Tr201712RK9232P115"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a user",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"description": "Specific identifier of a user's account",
|
||||
"example": "2017821799"
|
||||
},
|
||||
"RAC_Array": {
|
||||
"type": "array",
|
||||
"description": "Array of RAC items to check (BVN, CRC, CRMS, Salary account, lien, whitelist, lien, account status, no bounced check and existing loan)",
|
||||
"items": {
|
||||
"type": "string"
|
||||
},
|
||||
"example": ["SalaryAccount", "BVN", "BVNAttachedtoAccount", "CRC", "CRMS", "AccountStatus", "Lien", "NoBouncedCheck", "Whitelist", "NoPastDueSalaryLoan", "NoPastDueOtherLoan"]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"transactionId",
|
||||
"fbnTransactionId",
|
||||
"customerId",
|
||||
"accountId",
|
||||
"RAC_Array"
|
||||
],
|
||||
"xml": {
|
||||
"name": "RACCheckRequest"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,108 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of transaction in Simbrella system",
|
||||
"example": "T001"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a user",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"description": "Specific identifier of a user's account",
|
||||
"example": "2017821799"
|
||||
},
|
||||
"RACResponse": {
|
||||
"type": "object",
|
||||
"description": "Object containing binary responses for each RAC check",
|
||||
"properties": {
|
||||
"Salary account": {
|
||||
"type": "string",
|
||||
"description": "Has Salary account or Not (1 = Yes, 0 = No)",
|
||||
"example": "1"
|
||||
},
|
||||
"BVN": {
|
||||
"type": "string",
|
||||
"description": "BVN Ok (1 = Yes, 0 = No)",
|
||||
"example": "1"
|
||||
},
|
||||
"BVNAttachedToAccount": {
|
||||
"type": "string",
|
||||
"description": "BVN attached to account (1 = Yes, 0 = No)",
|
||||
"example": "1"
|
||||
},
|
||||
"CRMS": {
|
||||
"type": "string",
|
||||
"description": "No Delinquent loan in CRMS (1 = Yes, 0 = No)",
|
||||
"example": "1"
|
||||
},
|
||||
"CRC": {
|
||||
"type": "string",
|
||||
"description": "No Delinquent loan in CRC (1 = Yes, 0 = No)",
|
||||
"example": "1"
|
||||
},
|
||||
"AccountStatus": {
|
||||
"type": "string",
|
||||
"description": "Has 'Regular' account status (1 = Yes, 0 = No)",
|
||||
"example": "1"
|
||||
},
|
||||
"Lien": {
|
||||
"type": "string",
|
||||
"description": "No Lien on account (1 = Yes, 0 = No)",
|
||||
"example": "1"
|
||||
},
|
||||
"NoBouncedCheck": {
|
||||
"type": "string",
|
||||
"description": "No Bounced Check (1 = Yes, 0 = No)",
|
||||
"example": "1"
|
||||
},
|
||||
"Whitelist": {
|
||||
"type": "string",
|
||||
"description": "Not blacklisted (1 = Yes, 0 = No)",
|
||||
"example": "1"
|
||||
},
|
||||
"NoPastDueSalaryLoan": {
|
||||
"type": "string",
|
||||
"description": "No Past Due Salary Loan (1 = Yes, 0 = No)",
|
||||
"example": "1"
|
||||
},
|
||||
"NoPastDueOtherLoan": {
|
||||
"type": "string",
|
||||
"description": "No Past Due Other Loans (1 = Yes, 0 = No)",
|
||||
"example": "1"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"Salary account",
|
||||
"BVNAttachedToAccount",
|
||||
"CRC",
|
||||
"CRMS",
|
||||
"AccountStatus",
|
||||
"Lien",
|
||||
"NoBouncedCheck",
|
||||
"Whitelist",
|
||||
"NoPastDueSalaryLoan",
|
||||
"NoPastDueOtherLoan"
|
||||
]
|
||||
},
|
||||
"resultDescription": {
|
||||
"type": "string",
|
||||
"description": "Description of provided result code",
|
||||
"example": "RAC Check Successful"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"transactionId",
|
||||
"customerId",
|
||||
"accountId",
|
||||
"RACResponse",
|
||||
"resultDescription"
|
||||
],
|
||||
"xml": {
|
||||
"name": "RACCheckResponse"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,98 @@
|
||||
{
|
||||
"type": "object",
|
||||
"required": [
|
||||
"requestId",
|
||||
"countryCode",
|
||||
"transactionId",
|
||||
"debtId",
|
||||
"customerId",
|
||||
"accountId",
|
||||
"productId",
|
||||
"collectedAmount",
|
||||
"collectionMethod",
|
||||
"lienAmount"
|
||||
],
|
||||
"properties": {
|
||||
"requestId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of request",
|
||||
"example": "R02802"
|
||||
},
|
||||
"countryCode": {
|
||||
"type": "string",
|
||||
"description": "Unique country code. Please refer to Country Codes table",
|
||||
"example": "NGR"
|
||||
},
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of transaction in Simbrella system",
|
||||
"example": "Tr201712RK9232P115"
|
||||
},
|
||||
"debtId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a loan in Simbrella system that is going to be collected (it correlates with provision request)",
|
||||
"example": "273194670"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a user",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"description": "Specific identifier of a user's account",
|
||||
"example": "2017821799"
|
||||
},
|
||||
"productId": {
|
||||
"type": "string",
|
||||
"description": "Identifier of a product for which collection to be made",
|
||||
"example": "101"
|
||||
},
|
||||
"collectedAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount to be collected from user's account (penalCharge is not included)",
|
||||
"example": 80000.00
|
||||
},
|
||||
"penalCharge": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount of penalty to be collected from user's account. If there is no penalty, amount is '0'",
|
||||
"example": 0
|
||||
},
|
||||
"collectionMethod": {
|
||||
"type": "integer",
|
||||
"description": "1 - on deposit of salary. the collection was triggered after a salary inflow to account, 2 - on due date. the collection was triggered on due date, 3 - initiated by user. the debtor initiated the collection from the request channel (USSD, Web or App)",
|
||||
"enum": [1, 2, 3],
|
||||
"example": 1
|
||||
},
|
||||
"lienAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Aggregated (summed up) lien amount",
|
||||
"example": 80000.00
|
||||
},
|
||||
"comment": {
|
||||
"type": "string",
|
||||
"description": "Any additional comment for provided loan operation",
|
||||
"example": "Testing CollectionLoanRequest"
|
||||
}
|
||||
},
|
||||
"example": {
|
||||
"requestId": "R02802",
|
||||
"countryCode": "NGR",
|
||||
"transactionId": "Tr201712RK9232P115",
|
||||
"debtId": "273194670",
|
||||
"customerId": "CN621868",
|
||||
"accountId": "2017821799",
|
||||
"productId": "101",
|
||||
"collectedAmount": 80000.00,
|
||||
"penalCharge": 0,
|
||||
"collectionMethod": 1,
|
||||
"lienAmount": 80000.00,
|
||||
"comment": "Testing CollectionLoanRequest"
|
||||
},
|
||||
"xml": {
|
||||
"name": "RepaymentRequest"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,104 @@
|
||||
{
|
||||
"type": "object",
|
||||
"required": [
|
||||
"requestId",
|
||||
"countryCode",
|
||||
"transactionId",
|
||||
"debtId",
|
||||
"customerId",
|
||||
"accountId",
|
||||
"productId",
|
||||
"collectedAmount",
|
||||
"lienAmount",
|
||||
"resultCode",
|
||||
"resultDescription"
|
||||
],
|
||||
"properties": {
|
||||
"requestId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of request",
|
||||
"example": "R02802"
|
||||
},
|
||||
"countryCode": {
|
||||
"type": "string",
|
||||
"description": "Unique country code. Please refer to Country Codes table",
|
||||
"example": "NGR"
|
||||
},
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of transaction in Simbrella system",
|
||||
"example": "Tr201712RK9232P115"
|
||||
},
|
||||
"debtId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a loan in Simbrella system that is going to be collected (it correlates with provision request)",
|
||||
"example": "273194670"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a user",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"description": "Specific identifier of a user's account",
|
||||
"example": "2017821799"
|
||||
},
|
||||
"productId": {
|
||||
"type": "string",
|
||||
"description": "Identifier of a product for which collection to be made",
|
||||
"example": "101"
|
||||
},
|
||||
"collectedAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount to be collected from user's account (penalCharge is not included)",
|
||||
"example": 60000.00
|
||||
},
|
||||
"penalCharge": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount of penalty to be collected from user's account. If there is no penalty, amount is '0'",
|
||||
"example": 0
|
||||
},
|
||||
"lienAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Aggregated (summed up) lien amount",
|
||||
"example": 20000
|
||||
},
|
||||
"comment": {
|
||||
"type": "string",
|
||||
"description": "Any additional comment for provided loan operation",
|
||||
"example": "Testing CollectionLoanRequest"
|
||||
},
|
||||
"resultCode": {
|
||||
"type": "string",
|
||||
"description": "Result code of executed transaction, e.g. (00 – Success etc.) see result codes table",
|
||||
"example": "00"
|
||||
},
|
||||
"resultDescription": {
|
||||
"type": "string",
|
||||
"description": "Description of provided result code",
|
||||
"example": "Loan Collection Successful"
|
||||
}
|
||||
},
|
||||
"example": {
|
||||
"requestId": "R02802",
|
||||
"countryCode": "NGR",
|
||||
"transactionId": "Tr201712RK9232P115",
|
||||
"debtId": "273194670",
|
||||
"customerId": "CN621868",
|
||||
"accountId": "2017821799",
|
||||
"productId": "101",
|
||||
"collectedAmount": 60000.00,
|
||||
"penalCharge": 0,
|
||||
"lienAmount": 20000,
|
||||
"comment": "Testing CollectionLoanRequest",
|
||||
"resultCode": "00",
|
||||
"resultDescription": "Loan Collection Successful"
|
||||
},
|
||||
"xml": {
|
||||
"name": "RepaymentResponse"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,59 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of transaction in Simbrella system",
|
||||
"example": "T0014"
|
||||
},
|
||||
"fbnTransactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique id of the transaction received from FBN in CustomerConsentRequest",
|
||||
"example": "20171209232177"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a user",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"description": "Specific identifier of a user's account",
|
||||
"example": "2017821799"
|
||||
},
|
||||
"processTime": {
|
||||
"type": "string",
|
||||
"format": "date-time",
|
||||
"description": "Date and time when consent request was processed",
|
||||
"example": "2019-10-18 14:26:21.063"
|
||||
},
|
||||
"consentType": {
|
||||
"type": "string",
|
||||
"description": "Type of consent: 'Enable' or 'Revoke'",
|
||||
"enum": ["Enable", "Revoke"],
|
||||
"example": "Revoke"
|
||||
},
|
||||
"countryId": {
|
||||
"type": "string",
|
||||
"description": "Set to static value '01'",
|
||||
"example": "01"
|
||||
},
|
||||
"comment": {
|
||||
"type": "string",
|
||||
"description": "Any additional comment for consent operation",
|
||||
"example": "Testing RevokeEnableConsentRequest"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"transactionId",
|
||||
"fbnTransactionId",
|
||||
"customerId",
|
||||
"accountId",
|
||||
"processTime",
|
||||
"consentType",
|
||||
"countryId"
|
||||
],
|
||||
"xml": {
|
||||
"name": "RevokeEnableConsentRequest"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a user",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"description": "Specific identifier of a user's account",
|
||||
"example": "2017821799"
|
||||
},
|
||||
"resultCode": {
|
||||
"type": "string",
|
||||
"description": "Result code of executed transaction, e.g. (00 – Success etc.) see result codes table",
|
||||
"example": "00"
|
||||
},
|
||||
"resultDescription": {
|
||||
"type": "string",
|
||||
"description": "Description of provided result code",
|
||||
"example": "Success"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"$type",
|
||||
"customerId",
|
||||
"accountId",
|
||||
"resultCode",
|
||||
"resultDescription"
|
||||
],
|
||||
"xml": {
|
||||
"name": "RevokeEnableConsentResponse"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"text": {
|
||||
"type": "string",
|
||||
"description": "Message to send to customer",
|
||||
"example": "This is a test message for SMS request method."
|
||||
},
|
||||
"dest": {
|
||||
"type": "string",
|
||||
"description": "Phone Number in international format",
|
||||
"example": "+2348039409144"
|
||||
},
|
||||
"unicode": {
|
||||
"type": "boolean",
|
||||
"description": "Character encoding standard (set as False for single SMS)",
|
||||
"example": false
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"text",
|
||||
"dest",
|
||||
"unicode"
|
||||
],
|
||||
"xml": {
|
||||
"name": "SMSRequest"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"data": {
|
||||
"type": "string",
|
||||
"description": "Any additional data in response",
|
||||
"example": ""
|
||||
},
|
||||
"statusCode": {
|
||||
"type": "integer",
|
||||
"description": "Result code of executed process (200 = Success)",
|
||||
"example": 200
|
||||
},
|
||||
"IsSuccessful": {
|
||||
"type": "boolean",
|
||||
"description": "An Indicator that the process was successful or not",
|
||||
"example": true
|
||||
},
|
||||
"errorMessage": {
|
||||
"type": "string",
|
||||
"description": "Description of status code if process is failed, null if successful",
|
||||
"example": null
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"data",
|
||||
"statusCode",
|
||||
"IsSuccessful",
|
||||
"errorMessage"
|
||||
],
|
||||
"xml": {
|
||||
"name": "SMSResponse"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,60 @@
|
||||
{
|
||||
"type": "object",
|
||||
"required": [
|
||||
"requestId",
|
||||
"transactionId",
|
||||
"customerId",
|
||||
"accountId",
|
||||
"msisdn",
|
||||
"requestedAmount",
|
||||
"productId",
|
||||
"channel"
|
||||
],
|
||||
"properties": {
|
||||
"requestId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of request",
|
||||
"example": "202111170001371256908"
|
||||
},
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of transaction. This transaction Id must be consistent across all platforms",
|
||||
"example": "1231231321232"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a customer",
|
||||
"example": "1256907"
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"description": "Specific identifier of a user's account",
|
||||
"example": "5948306019"
|
||||
},
|
||||
"msisdn": {
|
||||
"type": "string",
|
||||
"description": "User's mobile number in an international format",
|
||||
"example": "123456789"
|
||||
},
|
||||
"requestedAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount of loan requested by user",
|
||||
"example": 10000.0
|
||||
},
|
||||
"productId": {
|
||||
"type": "string",
|
||||
"description": "Product ID",
|
||||
"example": "101"
|
||||
},
|
||||
"channel": {
|
||||
"type": "string",
|
||||
"description": "Channel of incoming request",
|
||||
"enum": ["USSD", "FistMobile LitApp", "Web"],
|
||||
"example": "USSD"
|
||||
}
|
||||
},
|
||||
"xml": {
|
||||
"name": "SelectOfferRequest"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,147 @@
|
||||
{
|
||||
"type": "object",
|
||||
"required": [
|
||||
"requestId",
|
||||
"transactionId",
|
||||
"customerId",
|
||||
"accountId",
|
||||
"loan",
|
||||
"resultCode",
|
||||
"resultDescription"
|
||||
],
|
||||
"properties": {
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of transaction. This transaction Id must be consistent across all platform",
|
||||
"example": "1231231321232"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a customer",
|
||||
"example": "1256907"
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"description": "Specific identifier of a user's account",
|
||||
"example": "5948306019"
|
||||
},
|
||||
"outstandingDebtAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Outstanding debt amount if any",
|
||||
"example": 0
|
||||
},
|
||||
"loan": {
|
||||
"type": "array",
|
||||
"description": "Array of loan loan",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"offerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of the offer",
|
||||
"example": "14451"
|
||||
},
|
||||
"productId": {
|
||||
"type": "string",
|
||||
"description": "Product identifier",
|
||||
"example": "2030"
|
||||
},
|
||||
"amount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount of loan customer is eligible for",
|
||||
"example": 10000.0
|
||||
},
|
||||
"upfrontPayment": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount to be deducted upfront",
|
||||
"example": 1000.0
|
||||
},
|
||||
"interestRate": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Percentage (%) of interest rate",
|
||||
"example": 3.0
|
||||
},
|
||||
"Interest": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount of interest",
|
||||
"example": 300.0
|
||||
},
|
||||
"ManagementRate": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Percentage (%) of management fee",
|
||||
"example": 1.0
|
||||
},
|
||||
"ManagementFee": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount of management fee",
|
||||
"example": 100.0
|
||||
},
|
||||
"InsuranceRate": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Percentage (%) of insurance",
|
||||
"example": 1.0
|
||||
},
|
||||
"InsuranceFee": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount of insurance",
|
||||
"example": 100.0
|
||||
},
|
||||
"VATRate": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Percentage (%) of VAT",
|
||||
"example": 7.5
|
||||
},
|
||||
"VATamount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount of VAT",
|
||||
"example": 100.0
|
||||
},
|
||||
"recommendedRepaymentDates": {
|
||||
"type": "array",
|
||||
"description": "Array of recommended payment dates for all installments in yyyy-mm-dd format",
|
||||
"items": {
|
||||
"type": "string",
|
||||
"example": "2022-11-30"
|
||||
}
|
||||
},
|
||||
"installmentAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount to be paid each month (upfrontPayment not included)",
|
||||
"example": 11000.0
|
||||
},
|
||||
"totalRepaymentAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Total amount to be paid by customer. All installment amounts + upfront payment",
|
||||
"example": 11000.0
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"resultCode": {
|
||||
"type": "string",
|
||||
"description": "Result code of executed transaction, e.g. (00 – Success etc.) see result codes table",
|
||||
"example": "00"
|
||||
},
|
||||
"resultDescription": {
|
||||
"type": "string",
|
||||
"description": "Description of provided result code",
|
||||
"example": "Successful"
|
||||
}
|
||||
},
|
||||
"xml": {
|
||||
"name": "SelectOfferResponse"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"requestId": {
|
||||
"type": "string",
|
||||
"description": "RequestId for transaction sent by Simbrella within initial request to Firstbank API",
|
||||
"example": "R02802"
|
||||
},
|
||||
"countryCode": {
|
||||
"type": "string",
|
||||
"description": "Unique country code.",
|
||||
"example": "NGR"
|
||||
},
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of transaction. This transaction Id must be consistent across all platforms",
|
||||
"example": "Tr201712RK9232P115"
|
||||
},
|
||||
"debtId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of provided loan in Simbrella system",
|
||||
"example": "173021"
|
||||
},
|
||||
"transactionType": {
|
||||
"type": "string",
|
||||
"description": "Type of Transaction Simbrella is sending Transaction Check for",
|
||||
"enum": ["Disbursement", "Collection", "PenalCharge"],
|
||||
"example": "Disbursement"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a user",
|
||||
"example": "CN621868"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"requestId",
|
||||
"countryCode",
|
||||
"transactionId",
|
||||
"debtId",
|
||||
"transactionType",
|
||||
"customerId"
|
||||
],
|
||||
"xml": {
|
||||
"name": "StatusCallRequest"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,69 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of request in Simbrella system",
|
||||
"example": "24110114545374721"
|
||||
},
|
||||
"data": {
|
||||
"type": "object",
|
||||
"description": "Object containing details of transaction Simbrella querying",
|
||||
"properties": {
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of transaction in Simbrella system that was sent for transaction check",
|
||||
"example": "241101"
|
||||
},
|
||||
"providedAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount collected from user's account within disbursement operation. Amount should always be equal to zero if operation is of any type other than Disbursement",
|
||||
"example": 1000.00
|
||||
},
|
||||
"collectedAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount collected from user's account. In case of Disbursement this value will be equal to 0. In case of Collection this value will represent amount successfully collected from customers account. In case of Penal charge this value will represent penalty amount collected from customer's account.",
|
||||
"example": 0.00
|
||||
},
|
||||
"resultCode": {
|
||||
"type": "string",
|
||||
"description": "Result code of the operation one sent for transaction check, e.g. (00 – Success etc.)",
|
||||
"example": "00"
|
||||
},
|
||||
"resultDescription": {
|
||||
"type": "string",
|
||||
"description": "Description of provided result code that was sent for transaction check",
|
||||
"example": "Loan Provision is successful"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"transactionId",
|
||||
"providedAmount",
|
||||
"collectedAmount",
|
||||
"resultCode",
|
||||
"resultDescription"
|
||||
]
|
||||
},
|
||||
"resultCode": {
|
||||
"type": "string",
|
||||
"description": "Result code of executed transaction, e.g. (00 – Success etc.)",
|
||||
"example": "00"
|
||||
},
|
||||
"resultDescription": {
|
||||
"type": "string",
|
||||
"description": "Description of provided result code",
|
||||
"example": "SUCCESS"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"transactionId",
|
||||
"data",
|
||||
"resultCode",
|
||||
"resultDescription"
|
||||
],
|
||||
"xml": {
|
||||
"name": "StatusCallResponse"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"RequestId": {
|
||||
"type": "string",
|
||||
"description": "Unique Identifier in Simbrella system",
|
||||
"example": "SMB1234567"
|
||||
},
|
||||
"UserId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a user",
|
||||
"example": "TMP0840"
|
||||
},
|
||||
"CountryId": {
|
||||
"type": "string",
|
||||
"description": "Set to static value '01'",
|
||||
"example": "01"
|
||||
},
|
||||
"TokenCode": {
|
||||
"type": "string",
|
||||
"description": "Token code to be validated",
|
||||
"example": "32365214"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"RequestId",
|
||||
"UserId",
|
||||
"CountryId",
|
||||
"TokenCode"
|
||||
],
|
||||
"xml": {
|
||||
"name": "TokenValidationRequest"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"Authenticated": {
|
||||
"type": "boolean",
|
||||
"description": "Boolean value describing result of validation",
|
||||
"example": true
|
||||
},
|
||||
"AuthenticatedMessage": {
|
||||
"type": "string",
|
||||
"description": "Message describing authentication",
|
||||
"example": "The user Oluwole Olusoga has successfully authenticated!"
|
||||
},
|
||||
"ResponseCode": {
|
||||
"type": "string",
|
||||
"description": "Result code of response",
|
||||
"example": "00"
|
||||
},
|
||||
"ResponseMessage": {
|
||||
"type": "string",
|
||||
"description": "Response description",
|
||||
"example": "Successful"
|
||||
},
|
||||
"RequestId": {
|
||||
"type": "string",
|
||||
"description": "Unique id that was sent in request",
|
||||
"example": "SMB1234567"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"Authenticated",
|
||||
"AuthenticatedMessage",
|
||||
"ResponseCode",
|
||||
"ResponseMessage",
|
||||
"RequestId"
|
||||
],
|
||||
"xml": {
|
||||
"name": "TokenValidationResponse"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
{
|
||||
"type": "object",
|
||||
"required": [
|
||||
"requestId",
|
||||
"countryCode",
|
||||
"counter",
|
||||
"transactionId",
|
||||
"customerId",
|
||||
"accountId",
|
||||
"transactionType"
|
||||
],
|
||||
"properties": {
|
||||
"requestId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of request",
|
||||
"example": "R02802"
|
||||
},
|
||||
"countryCode": {
|
||||
"type": "string",
|
||||
"description": "Unique country code. Please refer to Country Codes table",
|
||||
"example": "NGR"
|
||||
},
|
||||
"counter": {
|
||||
"type": "string",
|
||||
"description": "Unique counter for number of attempts of the API call. Original attempt is 1",
|
||||
"example": "2"
|
||||
},
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Id of the transaction we are checking",
|
||||
"example": "Tr201712RK9232P115"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a user",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"description": "Specific identifier of a user's account",
|
||||
"example": "2017821799"
|
||||
},
|
||||
"transactionType": {
|
||||
"type": "string",
|
||||
"description": "To check state of loan disbursal transaction, value must be 'Disbursement', to check state of loan collection transaction, value must be 'Collection', to check state of penalty charge transaction, value must be 'Penalty'",
|
||||
"enum": ["Disbursement", "Collection", "Penalty"],
|
||||
"example": "Disbursement"
|
||||
}
|
||||
},
|
||||
"example": {
|
||||
"requestId": "R02802",
|
||||
"countryCode": "NGR",
|
||||
"counter": "2",
|
||||
"transactionId": "Tr201712RK9232P115",
|
||||
"customerId": "CN621868",
|
||||
"accountId": "2017821799",
|
||||
"transactionType": "Disbursement"
|
||||
},
|
||||
"xml": {
|
||||
"name": "TransactionVerifyRequest"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,85 @@
|
||||
{
|
||||
"type": "object",
|
||||
"required": [
|
||||
"requestId",
|
||||
"countryCode",
|
||||
"transactionId",
|
||||
"transactionType",
|
||||
"customerId",
|
||||
"accountId",
|
||||
"providedAmount",
|
||||
"collectedAmount",
|
||||
"resultCode",
|
||||
"resultDescription"
|
||||
],
|
||||
"properties": {
|
||||
"requestId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of request",
|
||||
"example": "R02802"
|
||||
},
|
||||
"countryCode": {
|
||||
"type": "string",
|
||||
"description": "Unique country code. Please refer to Country Codes table",
|
||||
"example": "NGR"
|
||||
},
|
||||
"transactionId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of transaction in Simbrella system",
|
||||
"example": "Tr201712RK9232P115"
|
||||
},
|
||||
"transactionType": {
|
||||
"type": "string",
|
||||
"description": "Type of transaction: Disbursement, Collection, or Penalty",
|
||||
"enum": ["Disbursement", "Collection", "Penalty"],
|
||||
"example": "Disbursement"
|
||||
},
|
||||
"customerId": {
|
||||
"type": "string",
|
||||
"description": "Unique identifier of a user",
|
||||
"example": "CN621868"
|
||||
},
|
||||
"accountId": {
|
||||
"type": "string",
|
||||
"description": "Specific identifier of a user's account",
|
||||
"example": "2017821799"
|
||||
},
|
||||
"providedAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount provided to a user within loan provision operation",
|
||||
"example": 100.0
|
||||
},
|
||||
"collectedAmount": {
|
||||
"type": "number",
|
||||
"format": "double",
|
||||
"description": "Amount collected from user's account within collection operation",
|
||||
"example": 7.50
|
||||
},
|
||||
"resultCode": {
|
||||
"type": "string",
|
||||
"description": "Result code of executed transaction, e.g. (00 – Success etc.) see result codes table",
|
||||
"example": "00"
|
||||
},
|
||||
"resultDescription": {
|
||||
"type": "string",
|
||||
"description": "Description of provided result code",
|
||||
"example": "Collect Status retrieved successfully."
|
||||
}
|
||||
},
|
||||
"example": {
|
||||
"requestId": "R02802",
|
||||
"countryCode": "NGR",
|
||||
"transactionId": "Tr201712RK9232P115",
|
||||
"transactionType": "Disbursement",
|
||||
"customerId": "CN621868",
|
||||
"accountId": "2017821799",
|
||||
"providedAmount": 100.0,
|
||||
"collectedAmount": 7.50,
|
||||
"resultCode": "00",
|
||||
"resultDescription": "Collect Status retrieved successfully."
|
||||
},
|
||||
"xml": {
|
||||
"name": "TransactionVerifyResponse"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,107 @@
|
||||
{
|
||||
"EligibilityCheckRequest": {
|
||||
"$ref": "./EligibilityCheckRequest.json"
|
||||
},
|
||||
"EligibilityCheckResponse": {
|
||||
"$ref": "./EligibilityCheckResponse.json"
|
||||
},
|
||||
"SelectOfferRequest": {
|
||||
"$ref": "./SelectOfferRequest.json"
|
||||
},
|
||||
"SelectOfferResponse": {
|
||||
"$ref": "./SelectOfferResponse.json"
|
||||
},
|
||||
"LoanInformationRequest": {
|
||||
"$ref": "./LoanInformationRequest.json"
|
||||
},
|
||||
"LoanInformationResponse": {
|
||||
"$ref": "./LoanInformationResponse.json"
|
||||
},
|
||||
"RepaymentRequest": {
|
||||
"$ref": "./RepaymentRequest.json"
|
||||
},
|
||||
"RepaymentResponse": {
|
||||
"$ref": "./RepaymentResponse.json"
|
||||
},
|
||||
"RACCheckRequest": {
|
||||
"$ref": "./RACCheckRequest.json"
|
||||
},
|
||||
"RACCheckResponse": {
|
||||
"$ref": "./RACCheckResponse.json"
|
||||
},
|
||||
"CustomerConsentRequest": {
|
||||
"$ref": "./CustomerConsentRequest.json"
|
||||
},
|
||||
"CustomerConsentResponse": {
|
||||
"$ref": "./CustomerConsentResponse.json"
|
||||
},
|
||||
"NotificationCallbackRequest": {
|
||||
"$ref": "./NotificationCallbackRequest.json"
|
||||
},
|
||||
"NotificationCallbackResponse": {
|
||||
"$ref": "./NotificationCallbackResponse.json"
|
||||
},
|
||||
"DisbursementRequest": {
|
||||
"$ref": "./DisbursementRequest.json"
|
||||
},
|
||||
"DisbursementResponse": {
|
||||
"$ref": "./DisbursementResponse.json"
|
||||
},
|
||||
"CollectLoanRequest": {
|
||||
"$ref": "./CollectLoanRequest.json"
|
||||
},
|
||||
"CollectLoanResponse": {
|
||||
"$ref": "./CollectLoanResponse.json"
|
||||
},
|
||||
"TransactionVerifyRequest": {
|
||||
"$ref": "./TransactionVerifyRequest.json"
|
||||
},
|
||||
"TransactionVerifyResponse": {
|
||||
"$ref": "./TransactionVerifyResponse.json"
|
||||
},
|
||||
"PenalChargeRequest": {
|
||||
"$ref": "./PenalChargeRequest.json"
|
||||
},
|
||||
"PenalChargeResponse": {
|
||||
"$ref": "./PenalChargeResponse.json"
|
||||
},
|
||||
"RevokeEnableConsentRequest": {
|
||||
"$ref": "./RevokeEnableConsentRequest.json"
|
||||
},
|
||||
"RevokeEnableConsentResponse": {
|
||||
"$ref": "./RevokeEnableConsentResponse.json"
|
||||
},
|
||||
"TokenValidationRequest": {
|
||||
"$ref": "./TokenValidationRequest.json"
|
||||
},
|
||||
"TokenValidationResponse": {
|
||||
"$ref": "./TokenValidationResponse.json"
|
||||
},
|
||||
"NewTransactionCheckRequest": {
|
||||
"$ref": "./NewTransactionCheckRequest.json"
|
||||
},
|
||||
"NewTransactionCheckResponse": {
|
||||
"$ref": "./NewTransactionCheckResponse.json"
|
||||
},
|
||||
"LienCheckRequest": {
|
||||
"$ref": "./LienCheckRequest.json"
|
||||
},
|
||||
"LienCheckResponse": {
|
||||
"$ref": "./LienCheckResponse.json"
|
||||
},
|
||||
"SMSRequest": {
|
||||
"$ref": "./SMSRequest.json"
|
||||
},
|
||||
"SMSResponse": {
|
||||
"$ref": "./SMSResponse.json"
|
||||
},
|
||||
"BulkSMSRequest": {
|
||||
"$ref": "./BulkSMSRequest.json"
|
||||
},
|
||||
"BulkSMSResponse": {
|
||||
"$ref": "./BulkSMSResponse.json"
|
||||
},
|
||||
"ApiResponse": {
|
||||
"$ref": "./ApiResponse.json"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
{
|
||||
"petstore_auth": {
|
||||
"type": "oauth2",
|
||||
"flows": {
|
||||
"implicit": {
|
||||
"authorizationUrl": "https://petstore3.swagger.io/oauth/authorize",
|
||||
"scopes": {
|
||||
"write:pets": "modify pets in your account",
|
||||
"read:pets": "read your pets"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"api_key": {
|
||||
"type": "apiKey",
|
||||
"name": "api_key",
|
||||
"in": "header"
|
||||
},
|
||||
"basic_auth": {
|
||||
"type": "http",
|
||||
"scheme": "basic",
|
||||
"description": "Basic authentication with username and password"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user