{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/spliceforms/main/json-schema/spliceforms-etbfdapplication-form-schema.json", "title": "ETBFDApplicationForm", "description": "Represents the application form to open FD account for ETB customers", "x-generated": "2026-10-09", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/spliceforms-capture-services-openapi.yml#/components/schemas/ETBFDApplicationForm", "type": "object", "x-stoplight": { "id": "l8m92a0jzcm0e" }, "required": [ "application", "applicant", "account" ], "properties": { "application": { "$ref": "#/$defs/FDApplication" }, "applicant": { "$ref": "#/$defs/ETBIndividualApplicant" }, "account": { "$ref": "#/$defs/FDAccount" } }, "$defs": { "AccountSerialNo": { "type": "integer", "title": "AccountSerialNo", "description": "Indicates the serial number of the account which is added to the application", "format": "int32", "minimum": 1, "maximum": 1, "x-stoplight": { "id": "myofrfpy3wo2a" } }, "Application": { "title": "Application", "x-stoplight": { "id": "zzae6t0s9xwav" }, "type": "object", "description": "Common/base model for application with common attributes. Concrete models for specific channel application forms should extend this (using allOff construct)", "properties": { "staff": { "x-stoplight": { "id": "9ntisl8skcjuj" }, "$ref": "#/$defs/Staff" } } }, "CombinedFunding": { "title": "CombinedFunding", "description": "Funds are sourced from both internal and external accounts.", "x-stoplight": { "id": "nztq8dlqfxcxw" }, "type": "object", "required": [ "internal", "external" ], "properties": { "internal": { "$ref": "#/$defs/InternalFunding", "x-stoplight": { "id": "e4woy7sko96a8" } }, "external": { "$ref": "#/$defs/ExternalFunding", "x-stoplight": { "id": "e2pzhjp9emz40" } } } }, "Declaration": { "type": "object", "title": "Declaration", "description": "A declaration may include consent for compliance, acknowledgment of policies, and confirmation of provided details.", "x-stoplight": { "id": "r34kag2o5sm70" }, "required": [ "isNominationOpted", "da1Nomination", "consentReferenceId" ], "properties": { "isNominationOpted": { "type": "boolean", "description": "This indicates whether the account holder chooses to nominate a beneficiary who will receive the funds in the account in the event of the account holder’s demise. If boolean is true then details in \"nominationForDa1\" has to be filled" }, "da1Nomination": { "$ref": "#/$defs/Nominee" }, "consentReferenceId": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/JVJLO1LAh5U" } } }, "ETBIndividualApplicant": { "type": "object", "title": "ETBIndividualApplicant", "description": "It includes essential information of an individual", "x-stoplight": { "id": "nub97d2z8vpme" }, "required": [ "mobileNo", "dob" ], "properties": { "mobileNo": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/LT9qrA1aRC4" }, "dob": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/UEKAfGKnXtA" } } }, "ExternalBankAccount": { "type": "object", "title": "ExternalBankAccount", "description": "Contains details of the NEFT instrument.", "x-package": "payment.instrument", "x-stoplight": { "id": "jp29joi2rdyw4" }, "required": [ "accountType", "accountNo", "ifsc" ], "properties": { "accountType": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/tCwO6x9ZNk0" }, "accountNo": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/swJoliwLU7s" }, "ifsc": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/5js4tqEmILQ" } } }, "ExternalFunding": { "type": "object", "title": "ExternalFunding", "description": "Funds sourced from an external bank account.", "x-stoplight": { "id": "ao20fp8fvlkg8" }, "required": [ "amount", "method", "instrument" ], "properties": { "amount": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/wbgPBBXK2qY" }, "method": { "description": "Possible methods for getting funds from external accounts", "$ref": "#/$defs/ExternalFundingMethodType" }, "instrument": { "oneOf": [ { "$ref": "#/$defs/Upi" }, { "$ref": "#/$defs/Netbanking" } ] } } }, "ExternalFundingMethodType": { "description": "Options through which applicant can make a deposit using external bank accounts", "title": "ExternalFundingMethodType", "type": "string", "x-stoplight": { "id": "juqy97cplinyp" }, "enum": [ "UPI", "NETBANKING" ], "pattern": "^[A-Z_]+", "minLength": 3, "maxLength": 10 }, "FDAccount": { "type": "object", "title": "FDAccount", "description": "Represents the preferences for FD account", "x-stoplight": { "id": "8x0xxhz2zj4g7" }, "required": [ "branchCode", "amount", "interestPayoutTreatment", "maturityInstruction", "tenure", "payout" ], "properties": { "branchCode": { "description": "The unique code representing the specific branch of the bank. The allowed values will have to comply with the values of \"branchCode\" codeset.", "x-unresolved-stoplight-ref": "stoplight://resources/overrides/DkpDaBt77Zw" }, "amount": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/wbgPBBXK2qY" }, "interestPayoutTreatment": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/GIH20YnXrJk" }, "maturityInstruction": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/hNcvI153XgU" }, "tenure": { "$ref": "#/$defs/FDTenure" }, "payout": { "$ref": "#/$defs/FDPayout" }, "accountSerialNo": { "$ref": "#/$defs/AccountSerialNo" } } }, "FDApplication": { "title": "FDApplication", "description": "Contains the common fields for FD applications", "x-stoplight": { "id": "03tu6sm7n4z9f" }, "allOf": [ { "x-stoplight": { "id": "wnurm5fra1b03" }, "$ref": "#/$defs/Application" }, { "type": "object", "required": [ "declaration", "payin" ], "properties": { "declaration": { "$ref": "#/$defs/Declaration" }, "payin": { "$ref": "#/$defs/Payin" } } } ] }, "FDPayout": { "type": "object", "title": "FDPayout", "description": "Specifies the methods to payout FD interest and/or principal on maturity", "x-package": "account.fd", "x-stoplight": { "id": "zi0w6z8evo404" }, "required": [ "mode", "instrument" ], "properties": { "mode": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/1Ll91UtXZ2s" }, "instrument": { "oneOf": [ { "$ref": "#/$defs/InternalBankAccount" }, { "$ref": "#/$defs/ExternalBankAccount" } ] } } }, "FDTenure": { "type": "object", "title": "FDTenure", "description": "This indicates the duration for which the Fixed Deposit (FD) is held, expressed in days, months and years.", "x-stoplight": { "id": "b8a8yencrf6fn" }, "required": [ "days", "months", "years" ], "properties": { "days": { "type": "integer", "description": "Tenure expressed in days", "format": "int32", "minimum": 1, "maximum": 31 }, "months": { "type": "integer", "description": "Tenure expressed in months", "format": "int32", "minimum": 6, "maximum": 11 }, "years": { "type": "integer", "description": "Tenure expressed in years", "format": "int32", "minimum": 0, "maximum": 10 } } }, "Guardian": { "type": "object", "title": "Guardian", "description": "It refers to the information related to the person who will act as a legal guardian for the nominee in case the nominee is a minor or unable to manage their own affairs.", "x-stoplight": { "id": "lghrra139m815" }, "required": [ "name", "dob", "address" ], "properties": { "name": { "description": "Full name of the guardian", "x-unresolved-stoplight-ref": "stoplight://resources/overrides/5yNhk1Hgfig" }, "dob": { "description": "The exact date on which the guardian was born, including the day, month, and year.", "x-unresolved-stoplight-ref": "stoplight://resources/overrides/UEKAfGKnXtA" }, "relationshipWithNominee": { "description": "Specifies the nature of the connection between two parties. The allowed values will have to comply with the values of \"nomineeRelationCode\" codeset.", "x-unresolved-stoplight-ref": "stoplight://resources/overrides/rCj13ihpGbg" }, "address": { "$ref": "#/$defs/GuardianAddress" } } }, "GuardianAddress": { "type": "object", "title": "GuardianAddress", "description": "Specifies the complete address details of the guardian.", "x-package": "nomination", "x-stoplight": { "id": "v86vldk7j4odh" }, "required": [ "line", "cityCode", "stateCode", "countryCode", "pinCode" ], "properties": { "line": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/cJk4qn60FYo" }, "cityCode": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/e716yeYODOc" }, "stateCode": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/Cvh9dy4b2Bc" }, "countryCode": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/TefCsIHCKhs" }, "pinCode": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/Ov8lL8w72Jo" } } }, "InternalBankAccount": { "type": "object", "title": "InternalBankAccount", "description": "Specifies the internal bank account details", "x-stoplight": { "id": "cqj717kedsbpl" }, "required": [ "accountNo" ], "properties": { "accountNo": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/swJoliwLU7s" } } }, "InternalFunding": { "type": "object", "title": "InternalFunding", "description": "Funds drawn from an account within the bank.", "x-stoplight": { "id": "ryga2hh0o90se" }, "required": [ "amount", "instrument" ], "properties": { "amount": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/wbgPBBXK2qY" }, "instrument": { "$ref": "#/$defs/InternalBankAccount" } } }, "Netbanking": { "type": "object", "title": "Netbanking", "description": "Contains details of the netbanking instrument.", "x-stoplight": { "id": "l5n40oebtpux4" }, "required": [ "account", "paymentReferenceNo" ], "properties": { "account": { "$ref": "#/$defs/ExternalBankAccount" }, "paymentReferenceNo": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/dzVlqIouteM" } } }, "Nominee": { "type": "object", "title": "Nominee", "description": "Specifies the personal information of the nominee designated by the account holder.", "x-package": "nomination", "x-stoplight": { "id": "70bneppghra7k" }, "required": [ "name", "dob", "address", "relationshipWithApplicant" ], "properties": { "name": { "description": "The full name of the individual nominated by the account holder to receive the benefits or proceeds of the account in the event of the account holder's demise.", "x-unresolved-stoplight-ref": "stoplight://resources/overrides/5yNhk1Hgfig" }, "dob": { "description": "If nominee dob is less than 18yrs then guardian details in \"guardian\" has to be filled. ", "x-unresolved-stoplight-ref": "stoplight://resources/overrides/UEKAfGKnXtA" }, "address": { "$ref": "#/$defs/NomineeAddress" }, "relationshipWithApplicant": { "description": "Relationship of Nominee with Applicant/Depositor.\nThe allowed values will have to comply with the values of codeset", "x-unresolved-stoplight-ref": "stoplight://resources/overrides/02QZBj0cg1s" }, "guardian": { "$ref": "#/$defs/Guardian" }, "sharePercentage": { "x-stoplight": { "id": "z2a474uhtz3pr" }, "x-unresolved-stoplight-ref": "stoplight://resources/overrides/IVykiNdyptI" } } }, "NomineeAddress": { "type": "object", "title": "NomineeAddress", "description": "Specifies the complete address details of the nominee.", "x-package": "nomination", "x-stoplight": { "id": "u5dcf6yibq6yq" }, "required": [ "line", "cityCode", "stateCode", "countryCode", "pinCode" ], "properties": { "line": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/cJk4qn60FYo" }, "cityCode": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/e716yeYODOc" }, "stateCode": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/Cvh9dy4b2Bc" }, "countryCode": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/TefCsIHCKhs" }, "pinCode": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/Ov8lL8w72Jo" } } }, "Payin": { "type": "object", "title": "Payin", "description": "Contains the funding details, including the amount and payment method.", "properties": { "sourceType": { "$ref": "#/$defs/PayinSourceType" }, "source": { "oneOf": [ { "$ref": "#/$defs/InternalFunding" }, { "$ref": "#/$defs/ExternalFunding" }, { "$ref": "#/$defs/CombinedFunding" } ] } }, "required": [ "sourceType", "source" ], "x-stoplight": { "id": "t1x11o2a16hbi" } }, "PayinSourceType": { "type": "string", "enum": [ "INTERNAL", "EXTERNAL", "COMBINED" ], "title": "PayinSourceType", "description": "Indicates the type of source for the payin", "pattern": "^[A-Z_]+", "minLength": 8, "maxLength": 8, "x-stoplight": { "id": "5nyt7q7ez37fc" } }, "Staff": { "type": "object", "title": "Staff", "description": "It captures key details of a bank staff involved in processing an application", "x-stoplight": { "id": "36aobxkwelk2l" }, "required": [ "branchCode", "lgCode", "lcCode" ], "properties": { "branchCode": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/DkpDaBt77Zw" }, "lgCode": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/gHuU3wTRjT0" }, "lcCode": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/pZLZAOMcf2s" } } }, "Upi": { "type": "object", "title": "Upi", "description": "Contains details of the UPI instrument.", "x-stoplight": { "id": "fwcfjb6bphkmw" }, "required": [ "vpa", "account", "paymentReferenceNo" ], "properties": { "vpa": { "x-unresolved-stoplight-ref": "stoplight://resources/overrides/ruVStTpk5p0" }, "account": { "$ref": "#/$defs/ExternalBankAccount" }, "paymentReferenceNo": { "x-stoplight": {}, "x-unresolved-stoplight-ref": "stoplight://resources/overrides/dzVlqIouteM" } } } } }