from marshmallow import Schema, fields class EligibilityCheckSchema(Schema): type = fields.Str(required=True, description="Request type") transactionId = fields.Str(data_key="transactionId", required=True, description="Transaction ID") countryCode = fields.Str(data_key="countryCode", required=True, description="Country code (ISO)") customerId = fields.Str(data_key="customerId", required=True, description="Customer ID") accountId = fields.Str(data_key="accountId", required=True, description="Account ID") msisdn = fields.Str(required=True, description="Mobile number") lienAmount = fields.Float(required=True, description="Amount for lien") channel = fields.Str(required=True, description="Transaction channel (USSD, Mobile, Web)")