[add]: Swagger Documentation
This commit is contained in:
@@ -0,0 +1,16 @@
|
||||
from marshmallow import Schema, fields
|
||||
|
||||
# Collect Loan Schema
|
||||
class CollectLoanSchema(Schema):
|
||||
transactionId = fields.Str(required=True)
|
||||
fbnTransactionId = fields.Str(required=True)
|
||||
debtId = fields.Str(required=True)
|
||||
customerId = fields.Str(required=True)
|
||||
accountId = fields.Str(required=True)
|
||||
productId = fields.Str(required=True)
|
||||
collectAmount = fields.Float(required=True)
|
||||
penalCharge = fields.Float(required=False) # Optional
|
||||
collectionMethod = fields.Int(required=True)
|
||||
lienAmount = fields.Float(required=True)
|
||||
countryId = fields.Str(required=True)
|
||||
comment = fields.Str(required=False) # Optional
|
||||
@@ -0,0 +1,11 @@
|
||||
from marshmallow import Schema, fields
|
||||
|
||||
# Customer Consent Schema
|
||||
class CustomerConsentSchema(Schema):
|
||||
type = fields.Str(required=True)
|
||||
transactionId = fields.Str(required=True)
|
||||
customerId = fields.Str(required=True)
|
||||
accountId = fields.Str(required=True)
|
||||
requestTime = fields.DateTime(required=True, format="%Y-%m-%d %H:%M:%S.%f")
|
||||
consentType = fields.Str(required=True)
|
||||
channel = fields.Str(required=True)
|
||||
@@ -0,0 +1,17 @@
|
||||
from marshmallow import Schema, fields
|
||||
|
||||
# Disbursement Schema
|
||||
class DisbursementSchema(Schema):
|
||||
requestId = fields.Str(required=True)
|
||||
debtId = fields.Str(required=True)
|
||||
transactionId = fields.Str(required=True)
|
||||
customerId = fields.Str(required=True)
|
||||
accountId = fields.Str(required=True)
|
||||
productId = fields.Str(required=True)
|
||||
provideAmount = fields.Float(required=True)
|
||||
collectAmountInterest = fields.Float(required=False) # Optional
|
||||
collectAmountMgtFee = fields.Float(required=True)
|
||||
collectAmountInsurance = fields.Float(required=True)
|
||||
collectAmountVAT = fields.Float(required=True)
|
||||
countryId = fields.Str(required=True)
|
||||
comment = fields.Str(required=False) # Optional
|
||||
@@ -0,0 +1,8 @@
|
||||
from marshmallow import Schema, fields
|
||||
|
||||
# Lien Check Schema
|
||||
class LienCheckSchema(Schema):
|
||||
transactionId = fields.Str(required=True)
|
||||
customerId = fields.Str(required=True)
|
||||
accountId = fields.Str(required=True)
|
||||
countryId = fields.Str(required=True)
|
||||
@@ -0,0 +1,12 @@
|
||||
from marshmallow import Schema, fields
|
||||
|
||||
# New Transaction Check Schema
|
||||
class NewTransactionCheckSchema(Schema):
|
||||
transactionId = fields.Str(required=True)
|
||||
debtId = fields.Str(required=True)
|
||||
transactionType = fields.Str(required=True, metadata={
|
||||
"allowed_values": ["Disbursement", "Collection", "PenalCharge"]
|
||||
})
|
||||
fbnTransactionId = fields.Str(required=True)
|
||||
origTransactionId = fields.Str(required=True)
|
||||
customerId = fields.Str(required=True)
|
||||
@@ -0,0 +1,14 @@
|
||||
from marshmallow import Schema, fields
|
||||
|
||||
|
||||
# Penal Charge Schema
|
||||
class PenalChargeSchema(Schema):
|
||||
transactionId = fields.Str(required=True)
|
||||
fbnTransactionId = fields.Str(required=True)
|
||||
debtId = fields.Str(required=True)
|
||||
customerId = fields.Str(required=True)
|
||||
accountId = fields.Str(required=True)
|
||||
penalCharge = fields.Decimal(required=True)
|
||||
lienAmount = fields.Decimal(required=True)
|
||||
countryId = fields.Str(required=True)
|
||||
comment = fields.Str(required=False)
|
||||
@@ -0,0 +1,23 @@
|
||||
from marshmallow import Schema, fields
|
||||
|
||||
class RACItemSchema(Schema):
|
||||
salaryAccount = fields.Bool(required=True)
|
||||
bvn = fields.Str(required=True)
|
||||
crc = fields.Bool(required=True)
|
||||
crms = fields.Bool(required=True)
|
||||
accountStatus = fields.Str(required=True)
|
||||
lien = fields.Bool(required=True)
|
||||
noBouncedCheck = fields.Bool(required=True)
|
||||
existingLoan = fields.Bool(required=True)
|
||||
whitelist = fields.Bool(required=True)
|
||||
noPastDueSalaryLoan = fields.Bool(required=True)
|
||||
noPastDueOtherLoans = fields.Bool(required=True)
|
||||
|
||||
|
||||
# RAC Check Schema
|
||||
class RACCheckSchema(Schema):
|
||||
transactionId = fields.Str(required=True)
|
||||
fbnTransactionId = fields.Str(required=True)
|
||||
customerId = fields.Str(required=True)
|
||||
accountId = fields.Str(required=True)
|
||||
RAC_Array = fields.List(fields.Nested(RACItemSchema), required=True)
|
||||
@@ -0,0 +1,13 @@
|
||||
from marshmallow import Schema, fields
|
||||
|
||||
|
||||
# Revoke Enable Consent Schema
|
||||
class RevokeEnableConsentSchema(Schema):
|
||||
transactionId = fields.Str(required=True)
|
||||
fbnTransactionId = fields.Str(required=True)
|
||||
customerId = fields.Str(required=True)
|
||||
accountId = fields.Str(required=True)
|
||||
processTime = fields.DateTime(required=True)
|
||||
consentType = fields.Str(required=True)
|
||||
countryId = fields.Str(required=True)
|
||||
comment = fields.Str(required=False)
|
||||
@@ -0,0 +1,8 @@
|
||||
from marshmallow import Schema, fields
|
||||
|
||||
# Token Validation Schema
|
||||
class TokenValidationSchema(Schema):
|
||||
RequestId = fields.Str(required=True)
|
||||
UserId = fields.Str(required=True)
|
||||
CountryId = fields.Str(required=True)
|
||||
TokenCode = fields.Str(required=True)
|
||||
@@ -0,0 +1,12 @@
|
||||
from marshmallow import Schema, fields
|
||||
|
||||
|
||||
# Transaction Verify Schema
|
||||
class TransactionVerifySchema(Schema):
|
||||
counter = fields.Str(required=True)
|
||||
transactionId = fields.Str(required=True)
|
||||
requestID = fields.Str(required=True)
|
||||
customerId = fields.Str(required=True)
|
||||
accountId = fields.Str(required=True)
|
||||
countryId = fields.Str(required=True) # Static value “01”
|
||||
transactionType = fields.Str(required=True)
|
||||
Reference in New Issue
Block a user