pragmatic.

Canadian mortgage tools · CAD

Cash Needed to Close

Current public data and calculations from Pragmatic Mortgage. Anonymous access; no account required.

calculator
slug
cash-to-close
title
Cash Needed to Close
description
DP, PTT, premiums, taxes and adjustments waterfall.
category
purchase
input Schema
{
  "type": "object",
  "properties": {
    "purchasePrice": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^-?\\d+(?:\\.\\d+)?$"
        }
      ]
    },
    "downPayment": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^-?\\d+(?:\\.\\d+)?$"
        }
      ]
    },
    "depositPaid": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^-?\\d+(?:\\.\\d+)?$"
        }
      ]
    },
    "closingCharges": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "minLength": 1,
            "enum": [
              "option-a",
              "option-b",
              "option-c",
              "current",
              "alternative",
              "legal",
              "title_insurance",
              "appraisal",
              "property_tax_adjustment",
              "pst_on_premium"
            ]
          },
          "label": {
            "type": "string",
            "minLength": 1,
            "enum": [
              "Option A",
              "Option B",
              "Option C",
              "Current payment",
              "Current offer",
              "Alternative offer",
              "Lender retention",
              "Market offer",
              "Prepayment",
              "Lump sum",
              "Recurring increase"
            ]
          },
          "amount": {
            "anyOf": [
              {
                "type": "number"
              },
              {
                "type": "string",
                "pattern": "^-?\\d+(?:\\.\\d+)?$"
              }
            ]
          },
          "category": {
            "type": "string",
            "enum": [
              "down_payment",
              "closing_costs",
              "taxes",
              "insurance",
              "prepaids",
              "adjustments",
              "credits",
              "other"
            ],
            "default": "other"
          },
          "source": {
            "type": "string",
            "enum": []
          },
          "direction": {
            "type": "string",
            "const": "debit"
          }
        },
        "required": [
          "id",
          "label",
          "amount",
          "direction"
        ],
        "additionalProperties": false
      },
      "default": []
    },
    "credits": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "minLength": 1,
            "enum": [
              "option-a",
              "option-b",
              "option-c",
              "current",
              "alternative",
              "legal",
              "title_insurance",
              "appraisal",
              "property_tax_adjustment",
              "pst_on_premium"
            ]
          },
          "label": {
            "type": "string",
            "minLength": 1,
            "enum": [
              "Option A",
              "Option B",
              "Option C",
              "Current payment",
              "Current offer",
              "Alternative offer",
              "Lender retention",
              "Market offer",
              "Prepayment",
              "Lump sum",
              "Recurring increase"
            ]
          },
          "amount": {
            "anyOf": [
              {
                "type": "number"
              },
              {
                "type": "string",
                "pattern": "^-?\\d+(?:\\.\\d+)?$"
              }
            ]
          },
          "category": {
            "type": "string",
            "enum": [
              "down_payment",
              "closing_costs",
              "taxes",
              "insurance",
              "prepaids",
              "adjustments",
              "credits",
              "other"
            ],
            "default": "other"
          },
          "source": {
            "type": "string",
            "enum": []
          },
          "direction": {
            "type": "string",
            "const": "credit"
          }
        },
        "required": [
          "id",
          "label",
          "amount",
          "direction"
        ],
        "additionalProperties": false
      },
      "default": []
    }
  },
  "required": [
    "purchasePrice",
    "downPayment"
  ],
  "additionalProperties": false
}

Open the full calculator → · Structured data (JSON)