16 lines
677 B
Python
16 lines
677 B
Python
from marshmallow import Schema, fields, validate, EXCLUDE
|
|
from marshmallow.validate import OneOf, Range
|
|
|
|
class RepaymentSchema(Schema):
|
|
requestId = fields.Str(required=True)
|
|
sessionId = fields.Str(required=True)
|
|
affiliateCode = fields.Str(required=True)
|
|
customerId = fields.Str(required=True)
|
|
msisdn = fields.Str(required=True)
|
|
debtId = fields.Int(required=True, validate=Range(min=1))
|
|
repaymentAmount = fields.Decimal(required=False) # Optional, required for "Manual" repaymentType
|
|
repaymentType = fields.Str(required=True) # "Full", "Due", "Manual", "Overdue"
|
|
channel = fields.Str(required=True)
|
|
|
|
class Meta:
|
|
unknown = EXCLUDE |