Check who may buy a landed home
check_landed_purchase_eligibilityUse this when a buyer asks whether they may buy a landed home in Singapore (terrace, semi-detached, detached or bungalow, cluster or townhouse, Good Class Bungalow), or before a PR or foreigner asks to view a landed listing. It applies the Residential Property Act as SLA states it: citizens may buy any landed home; PRs need SLA approval, which SLA gives case by case to PRs of at least 5 years, and the Ministry of Law has approved no foreign buyer for a Good Class Bungalow since 2021; a foreigner who is not a PR is not approved for landed homes; and anyone may buy a condominium unit or a strata landed house within an approved condominium. Pass the buyer's residency and a listing_id from search_listings, or property_kind. A landed listing does not always record its house type, and never whether it is strata within a condominium, so pass property_kind too when the user knows it; whether it is in a Good Class Bungalow area comes from its location. Returns allowed, needs_sla_approval or not_allowed, the reason, the next step and SLA links. Always give the user the disclaimer: it is general information, not legal advice. Needs no sign-in and stores nothing about the buyer.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| gcb_area | No | Whether the land is in a Good Class Bungalow area. Leave out when not known: a landed listing_id's own coordinates answer it. | |
| residency | Yes | The buyer's residency: citizen (Singapore citizen), permanent_resident (Singapore PR) or foreigner (neither). With joint buyers, check each one. | |
| listing_id | No | A Homejourney listing id, such as one from search_listings. | |
| years_as_pr | No | For a PR: their whole years as a PR, when they say. | |
| property_kind | No | terrace, semi_detached, detached (bungalow), strata_landed (a cluster house or townhouse outside an approved condominium), strata_landed_in_condo (a strata landed house within an approved condominium), vacant_land, condo_unit, or landed when the type is not known. Overrides the listing’s. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| links | No | SLA pages to cite. | |
| reason | No | Why, in plain words. Give it to the user. | |
| listing | No | The listing checked, when listing_id was given and it is live. | |
| outcome | No | allowed: no SLA approval needed; needs_sla_approval: the buyer must apply to SLA first; not_allowed: SLA does not approve this buyer for this home. Absent with resultReason. | |
| headline | No | ||
| nextStep | No | ||
| checkedOn | No | The date the rules were read from SLA. | |
| residency | Yes | ||
| disclaimer | No | Always show it: general information, not legal advice. | |
| propertyKind | No | The kind checked. landed means a landed listing, which records neither its house type nor its title. | |
| resultReason | No | Set instead of an outcome when the listing is not live, or is an HDB flat or another home this check does not cover. |