Updated Disbursement
This commit is contained in:
@@ -1,17 +1,38 @@
|
||||
from marshmallow import Schema, fields
|
||||
from marshmallow import Schema, fields, validate
|
||||
|
||||
# Disbursement Schema
|
||||
# Schema for the fees details object
|
||||
class FeesDetailsSchema(Schema):
|
||||
collectAmountInterest = fields.Float(required=True, description="Interest Amount to be collected immediately after loan is provided (Only for 30 days)")
|
||||
collectAmountMgtFee = fields.Float(required=True, description="Management Fee Amount to be collected immediately after loan is provided")
|
||||
collectAmountInsurance = fields.Float(required=True, description="Insurance Amount to be collected immediately after loan is provided")
|
||||
collectAmountVAT = fields.Float(required=True, description="VAT Amount to be collected immediately after loan is provided")
|
||||
|
||||
# Disbursement Request 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
|
||||
requestId = fields.Str(required=True, description="Unique identifier of request")
|
||||
countryCode = fields.Str(required=True, description="Unique country code. Please refer to Country Codes table")
|
||||
transactionId = fields.Str(required=True, description="Unique identifier of transaction in Simbrella system")
|
||||
debtId = fields.Str(required=True, description="Unique identifier of a loan in Simbrella system that is going to be collected (it correlates with provision request)")
|
||||
customerId = fields.Str(required=True, description="Unique identifier of a user")
|
||||
accountId = fields.Str(required=True, description="Specific identifier of a user's account")
|
||||
productId = fields.Str(required=True, description="Identifier of a product to be provided to a user")
|
||||
provideAmount = fields.Float(required=True, description="Amount of loan (including service fee) to be provided on a specific account of a user")
|
||||
totalFees = fields.Float(required=True, description="Total amount of all fees combined")
|
||||
feesDetails = fields.Nested(FeesDetailsSchema, required=True, description="Detailed breakdown of all fees")
|
||||
countryId = fields.Str(required=True, description="Set to static value '01'")
|
||||
comment = fields.Str(required=False, description="Any additional comment for provided loan operation")
|
||||
|
||||
# Disbursement Response Schema
|
||||
class DisbursementResponseSchema(Schema):
|
||||
requestId = fields.Str(required=True, description="Unique identifier of request")
|
||||
countryCode = fields.Str(required=True, description="Unique country code.")
|
||||
transactionId = fields.Str(required=True, description="Unique ID of customer's USSD session. Must be consistent throughout whole USSD journey")
|
||||
debtId = fields.Str(required=True, description="Unique identifier of a loan in Simbrella system that is going to be collected (it correlates with provision request)")
|
||||
customerId = fields.Str(required=True, description="Unique identifier of a user")
|
||||
accountId = fields.Str(required=True, description="Specific identifier of a user's account")
|
||||
productId = fields.Str(required=True, description="Identifier of a product to be provided to a user")
|
||||
provideAmount = fields.Float(required=True, description="Amount of loan (including service fee) to be provided on a specific account of a user")
|
||||
totalFees = fields.Float(required=True, description="Total amount of all fees combined")
|
||||
feesDetails = fields.Nested(FeesDetailsSchema, required=True, description="Detailed breakdown of all fees")
|
||||
resultCode = fields.Str(required=True, description="Result code of executed transaction, e.g. (00 – Success etc.) see result codes table")
|
||||
resultDescription = fields.Str(required=True, description="Description of provided result code")
|
||||
Reference in New Issue
Block a user