For real estate agencies running Esti CRM
Esti To WordPress

Your Esti CRM offers, live on WordPress - with the website already built

Paste your company ID and API token, press Sync now, and your whole catalogue is on your site - listings, filters, offer pages, photo slider and agents. No ACF. No field mapping. No front end to build.

Get plugin
Esti CRM WordPress
your-agency.com/offers/?type=apartment&city=warszawa&price_max=900000
Property type
Apartment
Transaction
Sale
Location
Warszawa
Price to
900 000
Search Clear filters 38 offers · sorted by price
Apartment for sale
Warszawa
3-room apartment, Mokotów
58 m² 14 300 PLN/m² 3 rooms
Price
829 000 PLN
View offer →
House for sale
Piaseczno
Detached house with garden
164 m² 8 100 PLN/m² 5 rooms
Price
1 329 000 PLN
View offer →
Apartment for rent
Kraków
Studio by the Old Town
31 m² 1 room
Price
2 600 PLN
View offer →

This is not a mock-up of what you could build. It is the archive the plugin renders on its own, out of the box, on any theme.

Don't use this plugin if

You're not on Esti CRM

The plugin talks to the Esti CRM client API and nothing else. Without an Esti account and an API token there is no catalogue to synchronize.

You edit offers in WordPress

Offers are read-only here on purpose: Esti CRM is the single source of truth, and each run overwrites imported content. Edit in the CRM, not in wp-admin.

You want photos in the media library

Photos are hotlinked from the Esti CDN so imports stay instant and your disk stays empty. If you need every image copied onto your own server, this is the wrong tool.

Four steps, about five minutes

No field mapping, no template work, no developer on standby.

Get plugin
1

Download plugin, install & activate

Get the latest .zip file. Go to Plugins > Add New in your WordPress dashboard and upload the file.

2

Paste your Esti credentials

Open the plugin's Settings screen and enter the company identifier and API token issued by Esti CRM.

2.5

Narrow the import (optional)

Import only certain offer types, cities, transactions or a price range - and pick which fields the filter bar shows.

3

Enter License Key

Navigate to the plugin Settings > API Key and paste your license key from this dashboard.

4

Press Sync now

The catalogue imports in the background and your offers are online, under /offers/, with filters, maps and agent cards already working.

Features

Everything below is in the plugin. There is no add-on, no pro tier of the front end and no implementation package to buy.

Synchronization every six hours

A WP-Cron chain imports the catalogue page by page in the background, plus a Sync now button whenever you want it immediately. Unchanged offers are skipped, so a run costs almost nothing.

Offer archive with a filter bar

Type, transaction, location, price, area and rooms - each field switched on or off in the settings. Filters travel as plain GET parameters, so results are cacheable, linkable, back-button-safe and indexable.

Full offer pages with a photo slider

Every offer gets a real page with a large swipeable gallery, all its parameters, video and virtual-tour links - not a row in a table.

Agents, synchronized too

Every run pulls the exported staff list - photo, role, office, phone, e-mail - and each offer page shows the agent who actually owns it in the CRM.

Import exactly what you want

Restrict the import by offer type, subtype, city, transaction and price range - so a branch site can carry only the plots, or only Warsaw, out of the same CRM account.

Synchronization log

Every run recorded with its status, duration, pages and counters - created, updated, unchanged, skipped, deleted - and the exact offers that failed. A dead run is flagged as interrupted rather than left spinning.

The same integration, without double pay

Other Esti CRM plugins for WordPress map the API to ACF fields, and stop there: the website itself is a separate project, priced separately. That is the part we ship.

Typical Esti CRM importers
Data only - the offer listing and offer page are yours to build
Advanced Custom Fields required, plus manual field mapping
From ~699 zl net self-serve to ~1499 zl net implemented - one site
Support for the first 30-60 days, business hours only
Esti To WordPress
Archive, filters, offer page, slider, map and agents included
No ACF, no mapping, no extra tables - two credentials and go
$35 a year for one domain, $125 for ten
A year of support and updates, and a 14-day money-back guarantee

Prices quoted for other integrations are the public list prices published by their vendors and may change. Ours are on this page, in full, below.

For developers

Or ignore our UI entirely and build your own

The bundled front end is a default, not a cage. Offers are a normal public post type exposed to the REST API, so the Gutenberg Query Loop and the Elementor Loop Grid list them with no extra code, and featured images resolve to the CDN thumbnail on their own.

Copy any template into your theme to override it
Two helper functions are the whole public API
Shortcode and block share one rendering path
Plain post meta - query it with WP_Query like anything else
Drop three offers into any page
[osfec_offers type="apartment" city="Warszawa"
              limit="3" columns="3" more="yes"]
Or render an offer however you like
// theme/single-osfec_offer.php wins over ours.
$price = osfec_field( 'price' );
$rooms = osfec_field( 'rooms' );
$photos = osfec_photos();

Pricing

No additional costs·Cancel at any time·Lifetime fallback version·14-day money-back guarantee
Pro Plan
$35,00 Yearly
$35,00 per site
Choose Pro →
1 domain
Unlimited offers & synchronizations
Complete front end - archive, filters & offer pages
Photo slider, map & agent cards
Shortcode, block & template overrides
1 year support
1 year updates
Lifetime fallback version
Pro 2 Plan
$55,00 Yearly
$27,50 per site Save -21%
Choose 2 Pro →
2 domains
Unlimited offers & synchronizations
Complete front end - archive, filters & offer pages
Photo slider, map & agent cards
Shortcode, block & template overrides
1 year support
1 year updates
Lifetime fallback version
Pro 5 Plan
$95,00 Yearly
$19,00 per site Save -46%
Choose 5 Pro →
5 domains
Unlimited offers & synchronizations
Complete front end - archive, filters & offer pages
Photo slider, map & agent cards
Shortcode, block & template overrides
1 year support
1 year updates
Lifetime fallback version
Pro 10 Plan
$125,00 Yearly
$12,50 per site Save -64%
Choose 10 Pro →
10 domains
Unlimited offers & synchronizations
Complete front end - archive, filters & offer pages
Photo slider, map & agent cards
Shortcode, block & template overrides
1 year support
1 year updates
Lifetime fallback version
Payment secured by Stripe Visa Mastercard

Light on your site, by design

No custom database tables. No taxonomies. No images copied into the media library. Offers are plain posts with plain meta, so uninstalling leaves nothing behind and backups stay the size they were.

Unchanged offers are detected and skipped without a write
RealEstateListing JSON-LD on every offer page
Only offers active and cleared for export in Esti are published

Frequently asked questions (FAQ)

We're here to help. Can't find what you're looking for? Reach out to our support team directly.

Do I need Advanced Custom Fields?+

No. Offers are stored as ordinary WordPress posts with post meta - the plugin creates no database tables, registers no taxonomies and needs no ACF licence. Install it, paste two credentials, and it runs.

Do I have to build the front end myself?+

No, and that is the point. The offer archive with its filter bar, the full offer page with the photo slider, the map and the agent card all ship with the plugin and work the moment the first synchronization finishes. Building your own UI is an option, not a prerequisite.

How often does it synchronize?+

Every six hours through WP-Cron, plus a Sync now button in the admin. Large catalogues are imported page by page in the background, so the first run finishes a few minutes after it starts and no request ever times out.

What happens when an offer is sold or archived in Esti CRM?+

It drops out of the API response and its post is removed on the next successful synchronization. Esti CRM is the source of truth: offers are read-only in WordPress, and every run overwrites the imported content.

What if the Esti API fails halfway through a run?+

Nothing is deleted. Cleanup only runs after the last page of a successful run, so a failed run leaves your existing offers exactly where they are. An outage at the CRM can never empty your website.

Where are the offer photos stored?+

They are served straight from the Esti CDN and never copied into the media library - the slider uses the large variant, listings the thumbnail one. Your disk usage and your backups stay the same size no matter how many offers you have.

Does it work with my theme, Gutenberg and Elementor?+

Yes. The offer post type is exposed to the REST API, so the Gutenberg Query Loop and the Elementor Loop Grid can list offers with no extra code, and featured images resolve to the CDN thumbnail. There is also a shortcode, a block and template overrides in your theme.

How is this different from the other Esti CRM plugins for WordPress?+

The usual ones import Esti data into ACF fields and leave the display to you - which means Advanced Custom Fields plus a developer, or a paid implementation package that runs from roughly 699 to 1499 zl net for a single site, one-time. This plugin brings the whole front end with it and costs $35 a year for one domain.

What do I need to get started?+

WordPress 6.0 or newer, PHP 7.4 or newer, and the company identifier plus API token that Esti CRM issues for its client API. Nothing else.

Do you offer refunds?+

Yes. Every paid plan comes with a 14-day money-back guarantee. If the plugin is not right for you, email szymon.zawadzki@llm-automatic-translation.top within 14 days of purchase and we will refund the licence fee in full, no questions asked.

Put your whole catalogue online today

Install the plugin, paste two credentials from Esti CRM and press Sync now. The offers, the filters and the offer pages are already built.

Get plugin