{
    "$schema": "http://json-schema.org/draft-07/schema#",
    "title": "DebtSchedule",
    "type": "object",
    "properties": {
        "id": { "type": "string", "format": "uuid" },
        "companyId": { "type": "string", "format": "uuid" },
        "groupId": { "type": "string", "format": "uuid" },
        "clientId": { "type": "string", "format": "uuid" },
        "name": { "type": "string" },
        "description": { "type": "string" },
        "amount": { "type": "string" },
        "currency": { "type": "string", "enum": ["ARS", "USD"] },
        "frequency": { "type": "string", "enum": ["WEEKLY", "MONTHLY", "BIMONTHLY", "QUARTERLY", "YEARLY"] },
        "dayOfMonth": { "type": "string" },
        "calculationType": { "type": "string", "enum": ["FIXED", "FORMULA"] },
        "calculationFormula": { "type": "string" },
        "dailyInterestRate": { "type": "string" },
        "active": { "type": "boolean" },
        "startDate": { "type": "string", "format": "date-time" },
        "endDate": { "type": "string", "format": "date-time" },
        "lastGeneratedDate": { "type": "string", "format": "date-time" },
        "invoiceTemplateId": { "type": "string", "format": "uuid" },
        "createdAt": { "type": "string", "format": "date-time" },
        "createdBy": { "type": "string", "format": "uuid" },
        "updatedAt": { "type": "string", "format": "date-time" },
        "updatedBy": { "type": "string", "format": "uuid" },
        "deletedAt": { "type": "string", "format": "date-time" },
        "deletedBy": { "type": "string", "format": "uuid" }
    },
    "required": [
        "id",
        "companyId",
        "clientId",
        "name",
        "amount",
        "currency",
        "frequency",
        "dayOfMonth",
        "calculationType",
        "active",
        "startDate",
        "createdAt",
        "createdBy"
    ]
}
