Files
Azeez Muibi ba4d878daf Major update
2025-03-27 08:21:20 +01:00

33 lines
3.1 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
from marshmallow import Schema, fields, validate
# Repayment Request Schema
class RepaymentSchema(Schema):
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 for which collection to be made")
collectedAmount = fields.Float(required=True, description="Amount to be collected from user's account (penalCharge is not included)")
penalCharge = fields.Float(required=False, description="Amount of penalty to be collected from user's account. If there is no penalty, amount is '0'")
collectionMethod = fields.Int(required=True, description="1 - on deposit of salary, 2 - on due date, 3 - initiated by user",
validate=validate.OneOf([1, 2, 3]))
lienAmount = fields.Float(required=True, description="Aggregated (summed up) lien amount")
comment = fields.Str(required=False, description="Any additional comment for provided loan operation")
# Repayment Response Schema
class RepaymentResponseSchema(Schema):
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 for which collection to be made")
collectedAmount = fields.Float(required=True, description="Amount to be collected from user's account (penalCharge is not included)")
penalCharge = fields.Float(required=False, description="Amount of penalty to be collected from user's account. If there is no penalty, amount is '0'")
lienAmount = fields.Float(required=True, description="Aggregated (summed up) lien amount")
comment = fields.Str(required=False, description="Any additional comment for provided loan operation")
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")