Accounts
Time deposit (CD) APIs
Early funds withdrawal
1 min
{ "name" "endpoint /core/v1/dda/accounts/{accountnumber}/time deposit/early withdraw", "method" "post", "url" "https //sandbox crbcos com/core/v1/dda/accounts/{accountnumber}/time deposit/early withdraw", "description" "requests to withdraw the funds from a time deposit (cd) account before the account reaches maturity depending on the setting of the waivepenaltyfee attribute, the penalty fee is either waived or not if the penalty fee for early withdrawal is waived, it is as if the account owner performs a partial withdrawal of funds \nactual withdrawal of the funds requires a transaction call ", "tab" "examples", "examples" { "languages" \[ { "id" "q0 pokrlli1qibbxm5etl", "language" "curl", "code" "curl location 'https //sandbox crbcos com/core/v1/dda/accounts/190432130358/time deposit/early withdraw' \\\\\n header 'content type application/json' \\\\\n header 'authorization bearer \<token>' \\\\\n data '{\n \\"waivepenaltyfee\\" true\n}'", "customlabel" "" }, { "id" "h0pyvjx9 p52imxd9mzjf", "language" "nodejs", "code" "var https = require('follow redirects') https;\nvar fs = require('fs');\n\nvar options = {\n 'method' 'post',\n 'hostname' 'sandbox crbcos com',\n 'path' '/core/v1/dda/accounts/190432130358/time deposit/early withdraw',\n 'headers' {\n 'content type' 'application/json',\n 'authorization' 'bearer \<token>'\n },\n 'maxredirects' 20\n};\n\nvar req = https request(options, function (res) {\n var chunks = \[];\n\n res on(\\"data\\", function (chunk) {\n chunks push(chunk);\n });\n\n res on(\\"end\\", function (chunk) {\n var body = buffer concat(chunks);\n console log(body tostring());\n });\n\n res on(\\"error\\", function (error) {\n console error(error);\n });\n});\n\nvar postdata = json stringify({\n \\"waivepenaltyfee\\" true\n});\n\nreq write(postdata);\n\nreq end();", "customlabel" "" }, { "id" "qty5kxuch4h3h6c4cjpba", "language" "python", "code" "import http client\nimport json\n\nconn = http client httpsconnection(\\"sandbox crbcos com\\")\npayload = json dumps({\n \\"waivepenaltyfee\\" true\n})\nheaders = {\n 'content type' 'application/json',\n 'authorization' 'bearer \<token>'\n}\nconn request(\\"post\\", \\"/core/v1/dda/accounts/190432130358/time deposit/early withdraw\\", payload, headers)\nres = conn getresponse()\ndata = res read()\nprint(data decode(\\"utf 8\\"))", "customlabel" "" }, { "id" " yozgwvqqsuck390dho5c", "language" "ruby", "code" "require \\"uri\\"\nrequire \\"json\\"\nrequire \\"net/http\"\n\nurl = uri(\\"https //sandbox crbcos com/core/v1/dda/accounts/190432130358/time deposit/early withdraw\\")\n\nhttps = net http new(url host, url port)\nhttps use ssl = true\n\nrequest = net http post new(url)\nrequest\[\\"content type\\"] = \\"application/json\\"\nrequest\[\\"authorization\\"] = \\"bearer \<token>\\"\nrequest body = json dump({\n \\"waivepenaltyfee\\" true\n})\n\nresponse = https request(request)\nputs response read body\n", "customlabel" "" }, { "id" "rqe n7mlzhzlczlgtrque", "language" "go", "code" "package main\n\nimport (\n \\"fmt\\"\n \\"strings\\"\n \\"net/http\"\n \\"io\\"\n)\n\nfunc main() {\n\n url = \\"https //sandbox crbcos com/core/v1/dda/accounts/190432130358/time deposit/early withdraw\\"\n method = \\"post\\"\n\n payload = strings newreader(`{`+\\"\n\\"+`\n \\"waivepenaltyfee\\" true`+\\"\n\\"+`\n}`)\n\n client = \&http client {\n }\n req, err = http newrequest(method, url, payload)\n\n if err != nil {\n fmt println(err)\n return\n }\n req header add(\\"content type\\", \\"application/json\\")\n req header add(\\"authorization\\", \\"bearer \<token>\\")\n\n res, err = client do(req)\n if err != nil {\n fmt println(err)\n return\n }\n defer res body close()\n\n body, err = io readall(res body)\n if err != nil {\n fmt println(err)\n return\n }\n fmt println(string(body))\n}", "customlabel" "" } ], "selectedlanguageid" "q0 pokrlli1qibbxm5etl" }, "results" { "languages" \[ { "id" "bfd epqh3nkyfumxyexqq", "language" "200", "customlabel" "", "code" "{\n \\"timedeposit\\" {\n \\"masteraccountnumber\\" \\"190432130358\\",\n \\"status\\" \\"earlywithdrawal\\",\n \\"minfundingamount\\" 50000,\n \\"maxfundingamount\\" 5000000,\n \\"autoclose\\" false,\n \\"allowbumpup\\" false,\n \\"waivepenaltyfee\\" true,\n \\"fundingdays\\" 3,\n \\"graceperioddays\\" 6,\n \\"currentrate\\" 0 0,\n \\"maturitymonths\\" 12,\n \\"rates\\" \[\n {\n \\"months\\" 3,\n \\"rate\\" 4 00000\n },\n {\n \\"months\\" 3,\n \\"rate\\" 6 00000\n },\n {\n \\"months\\" 3,\n \\"rate\\" 8 00000\n },\n {\n \\"months\\" 3,\n \\"rate\\" 10 00000\n }\n ],\n \\"penalties\\" \[\n {\n \\"months\\" 6,\n \\"feedays\\" 3\n },\n {\n \\"months\\" 6,\n \\"feedays\\" 3\n }\n ],\n \\"fundingexpdate\\" \\"2025 07 03t00 00 00 04 00\\",\n \\"fundingdate\\" \\"2025 07 01t00 00 00 04 00\\",\n \\"startdate\\" \\"2025 07 01t00 00 00 04 00\\",\n \\"depositamount\\" 1000000,\n \\"depositcurrency\\" \\"usd\\",\n \\"maturitydate\\" \\"2026 06 30t00 00 00 04 00\\",\n \\"earlywithdrawnat\\" \\"2025 07 02t03 21 07 3293384 04 00\\",\n \\"rolloverdate\\" \\"2026 07 03t00 00 00 04 00\\",\n \\"createdat\\" \\"2025 06 30t03 57 49 4 04 00\\",\n \\"productid\\" \\"be8300b4 1206 4cf9 8800 b30100b7a867\\",\n \\"partnerid\\" \\"cd9c12f4 7691 424a b38b af5b0134c611\\",\n \\"lastmodifiedat\\" \\"2025 07 02t03 21 07 3293384 04 00\\"\n },\n \\"penaltyaccountnumber\\" \\"00000098764\\",\n \\"penaltyfeeamount\\" 329\n}" } ], "selectedlanguageid" "bfd epqh3nkyfumxyexqq" }, "request" { "pathparameters" \[ { "name" "accountnumber", "kind" "required", "type" "string", "description" "account number of the time deposit account", "" "account number of the time deposit account" } ], "queryparameters" \[], "headerparameters" \[], "bodydataparameters" \[ { "name" "waivepenaltyfee", "kind" "required", "type" "boolean", "description" "if true, a request for early withdrawal will be processed without a penalty fee otherwise, false ", "" "required" } ], "formdataparameters" \[] }, "currentnewparameter" { "label" "path parameter", "value" "pathparameters" }, "response" \[ { "name" "masteraccountnumber", "kind" "optional", "type" "string", "description" "the account number of the time deposit account" }, { "name" "status", "kind" "optional", "type" "string", "description" "status of the account \n funding\n active\n matured\n earlywithdrawal\n inactive", "children" \[] }, { "name" "minfundingamount", "kind" "optional", "type" "integer", "description" "minimum dollar amount allowed for the time deposit if the deposit amount is less than this value the deposit will be rejected ", "children" \[] }, { "name" "maxfundingamount", "kind" "optional", "type" "integer", "description" "maximum dollar amount allowed for the time deposit if the deposit amount is more than this value the deposit will be rejected ", "children" \[] }, { "name" "autoclose", "kind" "optional", "type" "boolean", "description" "true if the time deposit account automatically closes if not sufficiently funded by the funding expiration date otherwise, false ", "children" \[] }, { "name" "allowbumpup", "kind" "optional", "type" "boolean", "description" "true if the interest rates period tier(s) are enabled, where applicable otherwise, false ", "children" \[] }, { "name" "waivepenaltyfee", "kind" "optional", "type" "boolean", "description" "true if you decide to waive the penalty for early withdrawal otherwise, false ", "children" \[] }, { "name" "fundingdays", "kind" "optional", "type" "integer", "description" "number of days the time deposit will remain active once opened but not yet funded ", "children" \[] }, { "name" "graceperioddays", "kind" "optional", "type" "integer", "description" "number of days the customer has to withdraw the time deposit once it reaches maturity if no action is taken during this time then the time deposit will automatically renew for the same term at the rate currently being offered for the term ", "children" \[] }, { "name" "currentrate", "kind" "optional", "type" "number", "description" "the current rate of interest being earned by the account", "children" \[] }, { "name" "maturitymonths", "kind" "optional", "type" "integer", "description" "number of months until the time deposit reaches maturity", "children" \[] }, { "name" "rates", "kind" "optional", "type" "object", "description" "interest rate details", "children" \[ { "name" "months", "kind" "optional", "type" "integer", "description" "defines the number of months the given rate is valid " }, { "name" "rate", "kind" "optional", "type" "number", "description" "interest rate of the cd" } ] }, { "name" "penalties", "kind" "optional", "type" "object", "description" "details of the penalty your customer pays for early withdrawal", "children" \[ { "name" "months", "kind" "optional", "type" "integer", "description" "early withdrawal within this number of months results in a penalty cross river works with you to configure this number for the cd product " }, { "name" "feedays", "kind" "optional", "type" "integer", "description" "how many days of simple interest to assess" } ] }, { "name" "fundingexpdate", "kind" "optional", "type" "string", "description" "based on the product configuration, the date by which the account must be funded if it isn't funded, it's deactivated in this case, the date and time are in this format yyyy mm ddthh\ mm\ ss\[ mmm]", "children" \[] }, { "name" "fundingdate", "kind" "optional", "type" "string", "description" "date account is funded in this case, the date and time are in this format yyyy mm ddthh\ mm\ ss\[ mmm]", "children" \[] }, { "name" "startdate", "kind" "optional", "type" "string", "description" "date the account starts accruing interest in this case, the date and time are in this format yyyy mm ddthh\ mm\ ss\[ mmm]", "children" \[] }, { "name" "depositamount", "kind" "optional", "type" "integer", "description" "amount deposited to fund the account", "children" \[] }, { "name" "depositcurrency", "kind" "optional", "type" "string", "description" "currency the deposit is made using", "children" \[] }, { "name" "maturitydate", "kind" "optional", "type" "string", "description" "calendar date when the account can be withdrawn in this case, the date and time are in this format yyyy mm ddthh\ mm\ ss\[ mmm]", "children" \[] }, { "name" "earlywithdrawnat", "kind" "optional", "type" "string", "description" "date of early withdrawal in this case, the date and time are in this format yyyy mm ddthh\ mm\ ss\[ mmm]", "children" \[] }, { "name" "rolloverdate", "kind" "optional", "type" "string", "description" "date the time deposit account rolls over (and withdrawal without penalty no longer possible) in this case, the date and time are in this format yyyy mm ddthh\ mm\ ss\[ mmm]", "children" \[] }, { "name" "createdat", "kind" "optional", "type" "string", "description" "account created in this case, the date and time are in this format yyyy mm ddthh\ mm\ ss\[ mmm]", "children" \[] }, { "name" "productid", "kind" "optional", "type" "string", "description" "id in guid format of your specific product type on which the account is based provided by cross river \n\nin this case, your configured time deposit product ", "children" \[] }, { "name" "partnerid", "kind" "optional", "type" "string", "description" "your id in the cross river system this id is in guid format ", "children" \[] }, { "name" "lastmodifiedat", "kind" "optional", "type" "string", "description" "internal cross river value date and time the database entry was last modified ", "children" \[] } ] }