diff --git a/bank-to-simbrella/firstbank_to_simbrella.jmx b/bank-to-simbrella/firstbank_to_simbrella.jmx
new file mode 100644
index 0000000..b845b5e
--- /dev/null
+++ b/bank-to-simbrella/firstbank_to_simbrella.jmx
@@ -0,0 +1,327 @@
+
+
+
+
+ Test plan for FirstBank to Simbrella callback APIs
+ false
+ true
+ false
+
+
+
+ host
+ localhost
+ =
+
+
+ port
+ 8080
+ =
+
+
+ protocol
+ http
+ =
+
+
+ basePath
+ /v1/api/salary
+ =
+
+
+ username
+ admin
+ =
+
+
+ password
+ password
+ =
+
+
+
+
+
+
+
+ ${host}
+ ${port}
+ ${protocol}
+ UTF-8
+
+
+
+
+
+
+
+
+
+ Content-Type
+ application/json
+
+
+ Accept
+ application/json
+
+
+
+
+
+
+
+ ${protocol}://${host}:${port}${basePath}
+ ${username}
+ ${password}
+
+
+
+
+ false
+
+
+
+ 5
+ 5
+ true
+ continue
+
+ 1
+ false
+
+
+
+
+ ${basePath}/NotificationCallback
+ true
+ POST
+ true
+ true
+
+
+
+ false
+ {
+ "fbnTransactionId": "FBN20191031104405",
+ "transactionId": "TRX${__time()}",
+ "customerId": "CUST001",
+ "accountId": "ACC001",
+ "debtId": "DEBT001",
+ "transactionType": "Disbursement",
+ "amountProvided": 5000.0,
+ "amountCollected": 0.0,
+ "responseCode": "00",
+ "responseDescription": "Transaction successful"
+}
+ =
+
+
+
+
+
+
+ ${basePath}/DisbursementCallback
+ true
+ POST
+ true
+ true
+
+
+
+ false
+ {
+ "fbnTransactionId": "FBN20191031104405",
+ "transactionId": "TRX${__time()}",
+ "customerId": "CUST001",
+ "accountId": "ACC001",
+ "debtId": "DEBT001",
+ "transactionType": "Disbursement",
+ "amountProvided": 5000.0,
+ "responseCode": "00",
+ "responseDescription": "Disbursement successful"
+}
+ =
+
+
+
+
+
+
+ ${basePath}/CollectionCallback
+ true
+ POST
+ true
+ true
+
+
+
+ false
+ {
+ "fbnTransactionId": "FBN20191031104405",
+ "transactionId": "TRX${__time()}",
+ "customerId": "CUST001",
+ "accountId": "ACC001",
+ "debtId": "DEBT001",
+ "transactionType": "Collection",
+ "amountCollected": 5500.0,
+ "responseCode": "00",
+ "responseDescription": "Collection successful"
+}
+ =
+
+
+
+
+
+
+ ${basePath}/PenalChargeCallback
+ true
+ POST
+ true
+ true
+
+
+
+ false
+ {
+ "fbnTransactionId": "FBN20191031104405",
+ "transactionId": "TRX${__time()}",
+ "customerId": "CUST001",
+ "accountId": "ACC001",
+ "debtId": "DEBT001",
+ "transactionType": "PenalCharge",
+ "penalCharge": 100.0,
+ "responseCode": "00",
+ "responseDescription": "Penal charge applied successfully"
+}
+ =
+
+
+
+
+
+
+ ${basePath}/ConsentStatusCallback
+ true
+ POST
+ true
+ true
+
+
+
+ false
+ {
+ "fbnTransactionId": "FBN20191031104405",
+ "transactionId": "TRX${__time()}",
+ "customerId": "CUST001",
+ "accountId": "ACC001",
+ "consentStatus": "REVOKED",
+ "responseCode": "00",
+ "responseDescription": "Consent status updated successfully"
+}
+ =
+
+
+
+
+
+
+ ${basePath}/SMSStatusCallback
+ true
+ POST
+ true
+ true
+
+
+
+ false
+ {
+ "messageId": "MSG${__time()}",
+ "dest": "2348012345678",
+ "status": "DELIVERED",
+ "timestamp": "${__time(yyyy-MM-dd'T'HH:mm:ss)}"
+}
+ =
+
+
+
+
+
+
+
+ false
+
+ saveConfig
+
+
+ true
+ true
+ true
+
+ true
+ true
+ true
+ true
+ false
+ true
+ true
+ false
+ false
+ false
+ true
+ false
+ false
+ false
+ true
+ 0
+ true
+ true
+ true
+ true
+ true
+ true
+
+
+
+
+
+
+ false
+
+ saveConfig
+
+
+ true
+ true
+ true
+
+ true
+ true
+ true
+ true
+ false
+ true
+ true
+ false
+ false
+ false
+ true
+ false
+ false
+ false
+ true
+ 0
+ true
+ true
+ true
+ true
+ true
+ true
+
+
+
+
+
+
+
+
diff --git a/simbrella-to-bank/simbrella_to_firstbank.jmx b/simbrella-to-bank/simbrella_to_firstbank.jmx
new file mode 100644
index 0000000..04221c1
--- /dev/null
+++ b/simbrella-to-bank/simbrella_to_firstbank.jmx
@@ -0,0 +1,639 @@
+
+
+
+
+ Test plan for Simbrella to FirstBank API calls
+ false
+ true
+ false
+
+
+
+ host
+ localhost
+ =
+
+
+ port
+ 8080
+ =
+
+
+ protocol
+ http
+ =
+
+
+ basePath
+ /v1/api/salary
+ =
+
+
+ username
+ admin
+ =
+
+
+ password
+ password
+ =
+
+
+ appId
+ your_app_id
+ =
+
+
+ apiKey
+ your_api_key
+ =
+
+
+
+
+
+
+
+ ${host}
+ ${port}
+ ${protocol}
+ UTF-8
+
+
+
+
+
+
+
+
+
+ Content-Type
+ application/json
+
+
+ Accept
+ application/json
+
+
+
+
+
+
+
+ ${protocol}://${host}:${port}${basePath}
+ ${username}
+ ${password}
+
+
+
+
+ false
+
+
+
+ 5
+ 5
+ true
+ continue
+
+ 1
+ false
+
+
+
+
+
+
+ appID
+ ${appId}
+
+
+ apiKey
+ ${apiKey}
+
+
+
+
+
+ ${basePath}/health
+ true
+ GET
+ true
+ false
+
+
+
+
+
+
+ ${basePath}/EligibilityCheck
+ true
+ POST
+ true
+ true
+
+
+
+ false
+ {
+ "$type": "EligibilityCheckRequest",
+ "transactionId": "TRX${__time()}",
+ "countryCode": "NG",
+ "customerId": "CUST001",
+ "accountId": "ACC001",
+ "lienAmount": 10000.0,
+ "channel": "MOBILE",
+ "msisdn": "2348012345678"
+}
+ =
+
+
+
+
+
+
+ ${basePath}/SelectOffer
+ true
+ POST
+ true
+ true
+
+
+
+ false
+ {
+ "requestId": "REQ${__time()}",
+ "transactionId": "TRX${__time()}",
+ "customerId": "CUST001",
+ "accountId": "ACC001",
+ "msisdn": "2348012345678",
+ "requestedAmount": 5000.0,
+ "productid": "101",
+ "channel": "MOBILE"
+}
+ =
+
+
+
+
+
+
+ ${basePath}/ProvideLoan
+ true
+ POST
+ true
+ true
+
+
+
+ false
+ {
+ "$type": "ProvideLoanRequest",
+ "requestId": "REQ${__time()}",
+ "transactionId": "TRX${__time()}",
+ "customerId": "CUST001",
+ "accountId": "ACC001",
+ "productId": "101",
+ "lienAmount": 10000.0,
+ "requestedAmount": 5000.0,
+ "collectionType": 1,
+ "loanType": 1,
+ "channel": "MOBILE",
+ "msisdn": "2348012345678"
+}
+ =
+
+
+
+
+
+
+ ${basePath}/LoanInformation
+ true
+ POST
+ true
+ true
+
+
+
+ false
+ {
+ "$type": "LoanInformationRequest",
+ "transactionId": "TRX${__time()}",
+ "customerId": "CUST001",
+ "channel": "MOBILE",
+ "msisdn": "2348012345678"
+}
+ =
+
+
+
+
+
+
+ ${basePath}/Repayment
+ true
+ POST
+ true
+ true
+
+
+
+ false
+ {
+ "$type": "RepaymentRequest",
+ "transactionId": "TRX${__time()}",
+ "customerId": "CUST001",
+ "debtId": "DEBT001",
+ "productId": "101",
+ "channel": "MOBILE",
+ "msisdn": "2348012345678"
+}
+ =
+
+
+
+
+
+
+ ${basePath}/CustomerConsent
+ true
+ POST
+ true
+ true
+
+
+
+ false
+ {
+ "$type": "CustomerConsentRequest",
+ "transactionId": "TRX${__time()}",
+ "customerId": "CUST001",
+ "accountId": "ACC001",
+ "requestTime": "${__time(yyyy-MM-dd'T'HH:mm:ss)}",
+ "consentType": "LOAN",
+ "channel": "MOBILE"
+}
+ =
+
+
+
+
+
+
+ ${basePath}/TransactionCheck
+ true
+ POST
+ true
+ true
+
+
+
+ false
+ {
+ "counter": "1",
+ "TransactionId": "TRX${__time()}",
+ "requestID": "REQ${__time()}",
+ "customerId": "CUST001",
+ "accountId": "ACC001",
+ "countryId": "NG",
+ "transactionType": "Disbursement"
+}
+ =
+
+
+
+
+
+
+ ${basePath}/RACCheck
+ true
+ POST
+ true
+ true
+
+
+
+ false
+ {
+ "transactionId": "TRX${__time()}",
+ "fbnTransactionId": "FBN20191031104405",
+ "customerId": "CUST001",
+ "accountId": "ACC001",
+ "RAC_Array": ["SalaryAccount", "BVN", "AccountStatus"]
+}
+ =
+
+
+
+
+
+
+ ${basePath}/Disbursement
+ true
+ POST
+ true
+ true
+
+
+
+ false
+ {
+ "requestId": "REQ${__time()}",
+ "debtId": "DEBT001",
+ "transactionId": "TRX${__time()}",
+ "customerId": "CUST001",
+ "accountId": "ACC001",
+ "productId": "101",
+ "provideAmount": 5000.0,
+ "countryId": "NG",
+ "collectAmountInterest": 250.0,
+ "collectAmountMgtFee": 100.0,
+ "collectAmountInsurance": 50.0,
+ "collectAmountVAT": 20.0,
+ "comment": "Test disbursement"
+}
+ =
+
+
+
+
+
+
+ ${basePath}/CollectLoan
+ true
+ POST
+ true
+ true
+
+
+
+ false
+ {
+ "transactionId": "TRX${__time()}",
+ "fbnTransactionId": "FBN20191031104405",
+ "debtId": "DEBT001",
+ "customerId": "CUST001",
+ "accountId": "ACC001",
+ "productId": "101",
+ "collectAmount": 5500.0,
+ "collectionMethod": 1,
+ "lienAmount": 10000.0,
+ "countryId": "NG",
+ "penalCharge": 0.0,
+ "comment": "Test collection"
+}
+ =
+
+
+
+
+
+
+ ${basePath}/PenalCharge
+ true
+ POST
+ true
+ true
+
+
+
+ false
+ {
+ "transactionId": "TRX${__time()}",
+ "fbnTransactionId": "FBN20191031104405",
+ "debtId": "DEBT001",
+ "customerId": "CUST001",
+ "accountId": "ACC001",
+ "penalCharge": 100.0,
+ "lienAmount": 10000.0,
+ "countryId": "NG",
+ "comment": "Late payment penalty"
+}
+ =
+
+
+
+
+
+
+ ${basePath}/RevokeEnableConsent
+ true
+ POST
+ true
+ true
+
+
+
+ false
+ {
+ "transactionId": "TRX${__time()}",
+ "fbnTransactionId": "FBN20191031104405",
+ "customerId": "CUST001",
+ "accountId": "ACC001",
+ "processTime": "${__time(yyyy-MM-dd'T'HH:mm:ss)}",
+ "consentType": "REVOKE",
+ "countryId": "NG",
+ "comment": "Customer requested revocation"
+}
+ =
+
+
+
+
+
+
+ ${basePath}/ValidateToken
+ true
+ POST
+ true
+ true
+
+
+
+ false
+ {
+ "RequestId": "REQ${__time()}",
+ "UserId": "USER001",
+ "CountryId": "NG",
+ "TokenCode": "123456"
+}
+ =
+
+
+
+
+
+
+ ${basePath}/LienCheck
+ true
+ POST
+ true
+ true
+
+
+
+ false
+ {
+ "transactionId": "TRX${__time()}",
+ "customerId": "CUST001",
+ "accountId": "ACC001",
+ "countryId": "NG"
+}
+ =
+
+
+
+
+
+
+ ${basePath}/NewTransactionCheck
+ true
+ POST
+ true
+ true
+
+
+
+ false
+ {
+ "transactionId": "TRX${__time()}",
+ "debtId": "DEBT001",
+ "transactionType": "Disbursement",
+ "fbnTransactionId": "FBN20191031104405",
+ "origTransactionId": "TRX12345",
+ "customerId": "CUST001"
+}
+ =
+
+
+
+
+
+
+ ${basePath}/SMS
+ true
+ POST
+ true
+ true
+
+
+
+ false
+ {
+ "text": "Your loan has been approved. Amount: 5000.0",
+ "dest": "2348012345678",
+ "unicode": false
+}
+ =
+
+
+
+
+
+
+ ${basePath}/BulkSMS
+ true
+ POST
+ true
+ true
+
+
+
+ false
+ [
+ {
+ "text": "Your loan has been approved. Amount: 5000.0",
+ "dest": "2348012345678",
+ "unicode": false
+ },
+ {
+ "text": "Your loan application is being processed.",
+ "dest": "2348012345679",
+ "unicode": false
+ }
+]
+ =
+
+
+
+
+
+
+
+ false
+
+ saveConfig
+
+
+ true
+ true
+ true
+
+ true
+ true
+ true
+ true
+ false
+ true
+ true
+ false
+ false
+ false
+ true
+ false
+ false
+ false
+ true
+ 0
+ true
+ true
+ true
+ true
+ true
+ true
+
+
+
+
+
+
+ false
+
+ saveConfig
+
+
+ true
+ true
+ true
+
+ true
+ true
+ true
+ true
+ false
+ true
+ true
+ false
+ false
+ false
+ true
+ false
+ false
+ false
+ true
+ 0
+ true
+ true
+ true
+ true
+ true
+ true
+
+
+
+
+
+
+
+