Import Properties by URL
Summary
URL import lets you bring a property published on another site directly into your Mapaprop account, without having to enter all the data by hand. There are three import modes (URL, HTML, JSON) — all of them lead to the same Editor so you can review the data before saving.
How it works (simple overview)
Pegas la URL -> Mapaprop lee la pagina -> Te muestra los datos -> Confirmas -> Propiedad importada
The system visits the property's page for you, extracts the available information (title, price, area, photos, etc.) and presents it to you so you can review it before saving it. You have the final say: nothing is saved until you press "Import".
The 3 available modes
| Mode | When to use it | Reliability |
|---|---|---|
| URL | Almost always. Paste the link and that's it. | High for well-known portals (Zonaprop, Argenprop, etc.) |
| HTML | If the site blocks automatic reading (login wall, anti-bot). | High — bypasses blocks |
| JSON | If you already have the structured data (advanced use). | 100% — no scraping or AI |
All three modes share the same Editor, so the review and confirmation flow is identical.
Step by Step
Step 1: Paste the URL and analyze
- Go to Properties > Import > URL.
- Paste the property's full URL into the text field.
- Example:
https://www.zonaprop.com.ar/propiedades/casa-en-venta-en-palermo-54321.html
- Example:
- Press the Analyze button.
- The system will ask you to confirm before continuing. Click Accept.
- Wait. The process can take between 30 seconds and 2 minutes.
During this time the system is visiting the page and extracting the data. Don't close the window while you wait.
If the process takes more than 3 minutes, the system shows an error message. In that case you can try again, or use the HTML method explained further below.
Step 2: Review the data and fill in missing fields
When the system finishes, it shows you the data it was able to extract from the property.
In this step you can:
- Select the branch the property will be assigned to (if you're an administrator).
- Change the geographic location if the system didn't detect it correctly.
- Fill in missing fields that the system couldn't read from the original page.
Fields that may require manual correction
Sometimes the source site doesn't have all the information visible, or has it in a format the system can't read automatically. In those cases, fields marked as required appear to fill in before you can continue.
The most common fields that require correction are:
| Field | Why it's filled in manually |
|---|---|
| Location (zone) | The portal uses names that differ from Mapaprop's (e.g.: "Palermo Soho" vs "Palermo"). You have to select the correct neighborhood from the list. |
| Operation (Sale / Rental / Temporary) | Sometimes it isn't inferred correctly from the title. |
| Property type (House / Apartment / etc.) | Same as above. |
| Heating / air conditioning / hot water type | These fields come as free text from the portal ("Central heating", "Water heater") and can't be mapped directly to Mapaprop's list. You have to select them from the dropdown. |
| Total area / Built area / Rooms / Bedrooms | If the portal didn't publish them, you have to enter them. |
| Age | If it isn't on the page, you have to estimate it. |
| Zip code | If it couldn't be extracted from the address. |
| Currency | When the price appears without a clear symbol. |
Once you've filled in all the fields, press Save Corrections and then Confirm Data to move on to the next step.
Tip: the Editor also applies the same validations as the manual "Create Property" page. If your title or description have unsupported characters (some unusual emojis), the system will tell you when you save.
Step 3: Review the summary and import
Before saving the property, the system shows you a summary with all the data that's going to be imported:
- Title, address, and price
- Property type and operation
- Bedrooms, bathrooms, rooms, and areas
- Description
- Photos (if they could be obtained)
- Assigned branch
If everything looks right, press the Import button. The system will ask you to confirm once more.
The import can take a few extra seconds while the images are processed. When it finishes, a confirmation message appears with the number of the created property and redirects you to the property's page.
Technical note: the property is created with the same flow as when you load it manually (same validations, same activity log, same automatic sync with networks and portals if you have active integrations, same search indexing). There's no difference between an imported property and a manually created one.
Supported portals and systems
The system uses specialized extraction for the real estate portals and website platforms we've already analyzed. For sites not listed, it attempts a generic extraction that may or may not work depending on the page's structure.
Analyzed portals
| Portal | Compatibility | Notes |
|---|---|---|
| Zonaprop | High (specialized extraction via JSON-LD Schema.org) | Cloudflare can occasionally block the URL — the system warns with a clear message and suggests using HTML. |
| Argenprop | High (specialized extraction via JSON-LD + CSS selector) | Works well most of the time. |
| MercadoLibre Inmuebles | Medium (JSON-LD + OpenGraph + specs table) | Some properties require login. If a login wall is detected, the system warns you and it's best to use HTML. |
Analyzed real estate agency website systems
These are the systems real estate agencies use on their own sites. If your client's site is published on one of these systems, the import should work well:
| System | Compatibility | How we identify it |
|---|---|---|
| Adinco | High (Next.js with __NEXT_DATA__ — extracts the full object) | Sites like difini.com.ar |
| Tokko | High (server-rendered, .container-ficha selector) | Sites like riviol.com.ar |
| Kiteprop (v1 and v2) | High (server-rendered PHP, clear th/td table) | Sites like altube and richetta |
| EasyBroker | High (specialized extraction, Phase A follow-up) | Sites like kvmsanmiguel |
| Liderprop | High (specialized extraction, Phase A follow-up) | — |
| Houzez (WordPress) | High (template common to many agencies) | Sites like 2clics/somoza |
| Raes | Low (client-rendered Next.js — OpenGraph only) | Only title, description, image, and URL are obtained. The rest has to be filled in by hand. |
| Xintel | Low (legacy client-rendered jQuery — OpenGraph only) | Same case as Raes. |
Other sites
For sites not listed above, the system tries to extract data via OpenGraph (title, description, image) and a generic fallback with AI. The quality of the result varies depending on the site's structure. If it doesn't extract well, you can:
- Use the HTML method to pass it the source code directly.
- Use JSON mode if you have the structured data from another source.
- Load the property manually from "Properties > Create".
Note about MercadoLibre: Some properties on MercadoLibre require the visitor to be logged in to see the full detail. In those cases, the system detects the login wall and warns you with a clear message. Solution: use the HTML method (you log in yourself in the browser and paste the source code).
Note about Zonaprop: Zonaprop has Cloudflare protection that occasionally blocks automatic reading. When this happens, the system shows you a clear "Import Blocked" message and you can:
- Wait a few minutes and try again (the block is usually temporary).
- Use the HTML method as an alternative.
One-click error report
When something fails during the import (the URL is blocked, the site couldn't be read, the process was interrupted, etc.), an error modal appears with complete technical details of the problem.
The modal includes a "Copy report" button that copies to the clipboard all the information the support team needs to diagnose it quickly:
- URL you tried to import.
- Mode used (URL / HTML / JSON).
- Full error message.
- Internal HTTP code (if applicable).
- Detected source (Argenprop, Zonaprop, etc.).
- Block type if it was blocked (Cloudflare, login wall, etc.).
- Technical traces from the Step Function (executionArn) and extraction reports.
When you report an error to feedback@mapaprop.com or from Technical Support, paste the full report from the "Copy report" button into the message. That saves the team several minutes of back-and-forth asking you for data.
The same modal also offers a "Paste HTML manually" button that switches directly to HTML mode with the failed URL pre-filled, so you don't have to start the flow over from scratch.
What to do if the URL doesn't work: HTML method
If the system can't read the URL automatically, there's an alternative method that always works, regardless of the portal.
This method consists of copying the page's source code directly from your browser and pasting it into Mapaprop.
How to do it step by step
- Open the property's page in your browser (Chrome, Firefox, Edge, etc.).
- Right-click anywhere on the page (in an area without text or images).
- In the menu that appears, click "View page source" (or "Ver código fuente de la página" in Spanish). This opens a new tab with text.
- In some browsers it says "View Page Source".
- Keyboard shortcut: Ctrl+U (Windows/Linux) or Cmd+U (Mac).
- In that new tab, press Ctrl+A (or Cmd+A on Mac) to select all the text.
- Press Ctrl+C (or Cmd+C on Mac) to copy.
- Go back to Mapaprop and click the HTML tab (next to the "URL" tab).
- Click inside the text field and press Ctrl+V (or Cmd+V on Mac) to paste.
- Press the Process HTML button.
From there the process is identical to the URL method: the system extracts the data, shows it for you to review and complete, and then you import the property.
Why it always works: in this mode there's no bot visiting the page — it's you who visited it (in your browser, already logged in if needed). The system only processes the text you pass it, so it avoids any anti-bot protection on the source site.
JSON mode (for advanced users)
If you already have the property data structured as JSON (for example, you exported it from another system), you can paste it directly into the JSON tab. This mode:
- Does NOT use a scraper or AI.
- Only does local schema validation (correct types, required fields).
- Is 100% reliable: if the JSON is valid, the import always works.
It's the fastest path when you already have the structured data. It's not for common use by agencies — it's designed for integrations or bulk migrations.
Branches and permissions
The branch determines who receives inquiries about the imported property and who can manage it afterward.
| Role | Behavior when importing |
|---|---|
Administrator (customer:main) | Can choose the branch when importing. The main branch is preselected by default. |
Manager (customer:manager) | Same as admin: can choose any branch in the account. |
Salesperson (customer:vendor) | The property is automatically assigned to their assigned branch. They can't change it; it's enforced by the system (vendor isolation B.2.4). |
To better understand how roles and branches work, see the Users, Agents, Roles and Branches document.
Fields that are imported automatically
When the system can correctly read the property's page, it automatically extracts the following data:
- Listing title
- Description
- Address
- Price and currency
- Property type (house, apartment, land, etc.)
- Operation (sale, rental, temporary rental)
- Number of bedrooms, bathrooms, and rooms
- Total area and built area (m2)
- Age
- Geographic location (country, province, city, neighborhood)
- Images (up to 20 per property)
What is NOT imported automatically and is left to fill in by hand (because it depends on Mapaprop's internal list):
- Heating, air conditioning, hot water type
- Parking type (uncovered, garage, covered spot, etc.)
- Balcony type
- Orientation (north/south/east/west)
- Floor location (front, back, side, hallway, etc.)
- Property condition (brand new, used, under development, etc.)
Not all data is available in every listing. If a piece of data isn't on the original page, it can't be imported either.
What happens to the imported property afterward
Once created, the property:
- Appears in your property listing as a draft (not published).
- Is linked to your selected branch.
- Has an automatic code like
IMP-1777347619236(you can edit it afterward). - Automatically syncs with networks and portals if you have active integrations and the network allows it.
- Appears in your internal searches and in the management panel.
To publish it on external portals (Zonaprop, Argenprop, MercadoLibre, etc.) or on your Mapaprop website, you need to go to the property and manually activate the publication. The import creates the property but does NOT publish it.
Frequently asked questions
How long does the import take?
The URL reading process generally takes between 30 seconds and 2 minutes. In some cases it can take up to 3 minutes. The final process of saving the property takes a few extra seconds to process the images.
Can I import from any site?
You can try it from any public site. Most well-known real estate portals are compatible. Some sites block automatic reading; in that case the system warns you with a clear "Import Blocked" message and you can use the HTML method as an alternative.
Are photos imported?
Yes, when the images are available on the source page. The number of imported photos depends on how many the original property has published. The system downloads them, resizes them, and saves them in your account like any other property image.
Is the property published immediately?
No. The property is created as a draft. It's saved in your account but not published on any portal. You can edit it, complete it, and publish it when you're ready, just like with any manually loaded property.
Can I edit the data after importing?
Yes. Once imported, the property behaves like any other property in Mapaprop: you can edit all its data, add or remove images, change the price, etc.
What happens if the portal changed its design and the data isn't read correctly?
The system might not correctly extract all the fields if the source site changed its structure. In that case, Step 2 will show many fields to fill in manually. If you prefer a more reliable alternative, use the HTML method: by copying the source code directly from your browser, the result tends to be more complete.
Can I import the same property twice?
Yes. Each import creates a new property in your account, regardless of whether you already imported that URL before. The property's code is auto-generated with a timestamp (IMP-{number}) so it doesn't clash with existing codes. If you want to avoid duplicates, check your listing before re-importing.
What happens if the process is interrupted or gives an error?
You can try the import again from the beginning with the same URL. No partial properties are generated if the process didn't reach Step 3.
Can the salesperson import properties?
Yes. The salesperson can import properties, and they're automatically assigned to their branch. They can't change the branch when importing (vendor isolation).
What happens if I paste a URL from a portal that requires login?
If the URL requires login to see the property's detail (as can happen on MercadoLibre with some listings), the system can:
- Detect the block and show you a clear message.
- Return incomplete data (because it only saw the login page).
In either case, the solution is to use HTML mode: you log in to the portal yourself, copy the source code of the already-loaded page, and paste it into Mapaprop.