Last updated: August 6, 2026
A DDF plugin for WordPress pulls listing data from REALTOR.ca DDF®, the Data Distribution Facility the Canadian Real Estate Association runs, and puts it on your own site. DDF isn’t a national MLS board. It’s a permission-based distribution service, and CREA sets rules for what any site displaying that data has to do. Five of those rules decide whether a plugin can do the job within CREA’s rules: it must never ask you to hand over your DDF username and password, it must support the exact channel you opted into, it must refresh listing content at least once every 24 hours, it must send events to CREA’s Analytics Web Service API, and it must carry CREA’s required attribution. Miss one and the problem is yours, not the vendor’s: you stay responsible for whoever operates your feed.
Contents:
- What a DDF plugin for WordPress has to do
- What this guide covers
- REALTOR.ca DDF versus a direct board feed
- What you must have approved before a plugin can display anything
- The plugin checklist
- Where MLS Import fits
- Setup sequence
- Key Takeaways
- Frequently Asked Questions
What a DDF plugin for WordPress has to do
Here are those five requirements with their rule numbers, from CREA’s DDF Policy and Rules (revised January 2024):
- Never asks for your DDF credentials. Rule 5(j)(iii), general scope, any provider relationship.
- Supports your channel. Member Website Feed for your own or your brokerage’s listings, National Shared Pool for other participants’ listings too (Policy section 1).
- Refreshes at least once every 24 hours. Rule 5(b), National Pool Websites and Member Websites alike.
- Sends events to CREA’s Analytics Web Service API. Rule 5(c), both website types.
- Renders the required display elements: linked Powered by REALTOR.ca logo, brokerage name, provincial information, watermarks and trademark statement (Rules 6(a) and 6(c), both website types).
What this guide covers
Not sure how CREA and DDF fit next to your local board yet? Start with how Canadian MLS and DDF work, it lays out which boards run their own MLS and where CREA sits. Come back once you know what you’re connecting to.
REALTOR.ca DDF versus a direct board feed
DDF isn’t the only way to get Canadian listings onto a WordPress site. A regional board’s own feed is a different product with a different approval path. Here’s the comparison, using TRREB’s PropTx IDX feed.
| Aspect | REALTOR.ca DDF (Member Website Feed) | Direct board feed (TRREB / PropTx IDX) |
|---|---|---|
| Who grants access | CREA, with your own opt-in through the DDF Dashboard | The board directly, via a signed Data Agreement |
| Approval path | Self-serve in the Dashboard once brokerage permissions are set | Signed Data Agreement authorized by the Broker of Record; TRREB says allow at least 2-3 days |
| Coverage | Your own and/or your brokerage’s listings; National Shared Pool adds other participants’ | The board’s own listing inventory |
| Data format | RESO Web API over OData, via CREA’s own API | RESO Web API via the board’s own API (PropTx for TRREB) |
| Refresh floor | At least every 24 hours, Rule 5(b), both website types | Not published on TRREB’s official pages |
| Cost | No CREA fee published for an individual Dashboard opt-in | No official figure published by TRREB or PropTx |
A Member Website Feed suits an agent or brokerage putting their own listings on their own site. A direct board feed is what you need when the job requires a specific board’s full local inventory. TRREB’s own IDX datafeed page describes reciprocal, brokerage-to-brokerage advertising of active listings, and its Data Transfer Service page is where the 2-3 day figure comes from.
Not sure which board holds your inventory? The Canadian MLS board directory lists them.
Two things before you compare on price. DDF carries active listings only: CREA’s Web API release notes, dated July 23, 2026, state the API now enforces a StandardStatus of Active on every listing returned.
And the $1,500 figure you may have seen quoted comes from CREA’s DDF technology-provider community, last edited April 2025. It is an onboarding fee for a company registering as a Technology Provider, not something an agent or brokerage pays to use DDF.
What you must have approved before a plugin can display anything
Permissions stack in a specific order. Rule 5(j)(ii) fixes one link in that chain: opt into the channel before you retain a Technology Provider.
Brokerage participation in DDF is optional. Policy section 3(a) leaves that call to the brokerage, so if your broker never opted in, nothing downstream matters yet. If you’re a salesperson, section 4(a) requires your brokerage’s permission by one of two routes: the brokerage participates in DDF and grants it, or it opts in solely to grant permission to its salespeople. CREA’s own café blog put it plainly in February 2025: these settings may only be updated by a brokerage owner.
Next comes the opt-in itself. Rule 5(a) requires participants to opt in through the DDF Dashboard before pulling a feed, and the National Shared Pool and the Member Website Feed are separate opt-ins. Choosing one doesn’t hand you the other.
Then the technology provider question, where sequence really matters. Rule 5(j)(ii) requires you to opt into the National Shared Pool and/or the Member Website Feed before you retain a Technology Provider for those channels. Hiring a vendor first and sorting permissions out later is backwards.
And Rule 5(j)(i) is the one that should shape how you shop: you may use a Technology Provider, but you remain responsible for that provider’s conduct. Whatever your plugin does with your feed, CREA holds you to it.
Before you pay anyone, ask your broker of record to confirm which DDF channels are switched on in the Dashboard. It is a faster answer than debugging a feed that returns nothing.
The plugin checklist
Run every candidate through these nine questions. The credential question is the fastest one to apply, so start there.
- Authorization method, and the credential rule. CREA’s DDF Web API uses OAuth 2.0 client credentials against an Identity Server, and CREA’s own developer documentation says the token is not a sliding token: after one hour a new one must be requested regardless. CREA also warns there that client-to-server token requests create a security risk. Pair that with Rule 5(j)(iii): participants may not share or disclose their DDF® credentials, including the usernames and passwords required to access the DDF®, to a Technology Provider or any other party. The negative test: if a plugin’s setup screen asks you to paste those credentials into its admin panel, that is the disclosure Rule 5(j)(iii) prohibits.
- Channel support. Confirm the plugin handles the channel you opted into, named precisely: Member Website Feed or National Shared Pool. A useful scope note from CREA’s docs: member websites using the DDF don’t need the separate lead API that Real Estate Advertising Websites must implement.
- Refresh cadence. Rule 5(b) sets the floor at once every 24 hours on National Pool Websites and Member Websites. Ask for the plugin’s actual sync interval, not a phrase like updated daily, and confirm it clears the floor.
- The Analytics Web Service API. Rule 5(c) requires it on both website types. It’s a call to CREA’s LogEvents endpoint on analytics.crea.ca carrying ListingID, DestinationID, EventType and UUID. Ask whether the plugin fires those events automatically.
- Display compliance. Rules 6(a) and 6(c), both website types: a linked Powered by REALTOR.ca logo at a minimum 90px wide and 1:1 ratio, brokerage name, required provincial information, CREA watermarks, and the trademark statement on every page. One myth to drop: Rule 5(d) does not require blocking recognized search engines from indexing the permitted display.
- The WordPress storage model. Does the plugin import listings into your database as real posts, or embed a remote iframe? Past 10,000 listings CREA requires the dedicated replication endpoint, and its docs say a property no longer available on the market should be deleted from the customer’s data store. A plugin that can’t run that cleanup leaves sold listings live.
- Theme support. Test compatibility against your actual theme, on a staging copy, before you commit. Works with any theme is a claim, not a test result.
- Support process. You carry responsibility for your provider’s conduct under Rule 5(j)(i), so find out whether there’s a real support channel for feed and compliance questions, or only a sales inbox.
- Anti-scraping duty. This one lands on you, not the vendor. Rule 5(k) requires reasonable precautions against scraping of National Pool Websites and Member Websites, including monitoring the site and blocking access where needed.
Where MLS Import fits
Full disclosure first: MLS Import is our product. Read this the way you’d read any vendor describing its own tool.
From the WordPress.org plugin record rather than our own marketing pages: the MLSImport WordPress plugin connects over the RESO Web API and imports listings into your WordPress database as property content instead of embedding a remote iframe. Listing photos stay on the MLS or its CDN rather than filling your media library.
You need a valid MLS access token and an account. Standalone mode renders on any WordPress theme, with deeper native integration for WPResidence, WpEstate, Houzez and Real Homes: an upgrade, not a requirement. One MLS connection per site.
MLSImport pricing is public: $49 per month after a 30-day free trial, no setup fee, cancel any time. Modified properties sync every hour. That comparison against Rule 5(b) is ours, not CREA’s: 24 hours is the floor, an hourly sync clears it, but neither fact means the upstream MLS data changed in the last hour.
On Canada, the plain version. The WordPress.org changelog documents PropTx and AMPRE (TRREB) provider support: version 6.3.8 added PropTx / AMPRE (TRREB) MLS provider wiring, and version 7.0.4 lists PropTx / AMPRE (TRREB) MLS provider support. That’s TRREB, through the board’s own API.
CREA DDF compatibility is a separate arrangement, and it has to be confirmed with our support team for your specific feed and authorization setup before you buy. RESO Web API support is not the same as support for every DDF feed, and we won’t pretend otherwise. You can download MLSImport from WordPress.org and read the changelog yourself.
Setup sequence
Six steps, in this order. Choosing a DDF plugin for WordPress is step four, not step one.
- Confirm your brokerage participates in DDF. If you’re a salesperson, get your brokerage’s permission in writing (Policy sections 3(a) and 4(a)).
- Opt into the channel you need, National Shared Pool or Member Website Feed or both, through the DDF Dashboard, and do it before you retain any Technology Provider (Rules 5(a) and 5(j)(ii)).
- Decide whether DDF covers your inventory or whether you also need a direct board feed. If the job requires a board’s full local inventory, DDF alone won’t get you there.
- Score your shortlist against the nine checklist items. Anything that can’t answer the credential question or the Analytics API question comes off the list, whatever else it does well.
- Set the connection up through the vendor’s own documented process. Rule 5(j)(iii) admits no exception: your DDF username and password go to no Technology Provider and no other party, server-side or not. If a setup guide asks you to enter them anyway, you’ve learned what you needed to know about the vendor.
- Confirm your authorization arrangement with the provider in writing: which feed, which channel, and who holds the credentials. Keep that record, because Rule 5(j)(i) leaves the provider’s conduct on your shoulders.
Key Takeaways
- Rule 5(j)(iii) of CREA’s DDF Policy and Rules prohibits sharing DDF usernames and passwords with any technology provider.
- Rules 5(b) and 5(c) require a 24-hour refresh floor and CREA Analytics Web Service integration on National Pool and Member Websites.
- A Member Website Feed carries a participant’s own or brokerage’s listings; the National Shared Pool adds other participants’ listings.
- TRREB tells members to allow at least 2-3 days from a signed Data Agreement to actual API access implementation.
- MLS Import’s PropTx and AMPRE (TRREB) support is documented in its public changelog; DDF compatibility needs confirming with support first.
Frequently Asked Questions
Is there a DDF plugin for WordPress?
Yes. Several WordPress plugins advertise a REALTOR.ca DDF connection. No certification exists for a DDF plugin as such. CREA does designate official Technology Providers, as its café blog explained on February 27, 2025, but a vendor’s own claim of compliance is not that designation. Check any candidate, MLS Import included, on credential handling, channel support, refresh interval, Analytics Web Service events, and CREA’s display requirements.
Is DDF the same as a Canadian MLS?
No. REALTOR.ca DDF (Data Distribution Facility) is a CREA-managed, permission-based listing distribution service, not a single national MLS board. Regional boards such as TRREB run their own MLS systems; DDF moves listing content between participants who opted in. A plugin like MLS Import connects to a specific feed you are authorized for, not to Canada.
Can I put my DDF username and password into a plugin?
No. Rule 5(j)(iii) of CREA’s DDF Policy and Rules states that participants may not share or disclose their DDF credentials, including usernames and passwords, to a Technology Provider or any other party. A compliant vendor never asks you for them. Ask any vendor, including us at MLS Import, how the connection is authorized without them.
Do I need my brokerage’s permission?
If you are a salesperson, yes. CREA’s DDF Policy states that brokerage participation is optional and that a salesperson needs the brokerage’s permission, whether the brokerage participates itself or opts in only to grant that permission. CREA’s café blog noted in February 2025 that these settings may only be updated by a brokerage owner. MLS Import cannot create that permission for you.
How often must listings refresh?
At least once every 24 hours. CREA’s Rule 5(b) applies that floor to both National Pool Websites and Member Websites, and stale content has to come off after the refresh. It is a minimum, not a target. MLS Import syncs modified properties hourly, which clears it.
Do I need a direct board feed instead of DDF?
It depends on coverage. A Member Website Feed carries your own or your brokerage’s listings; the National Shared Pool adds other participants’ listings. If you need a board’s full local inventory, such as TRREB’s, a direct feed like PropTx IDX is the path, with its own signed Data Agreement. MLS Import’s changelog documents PropTx and AMPRE (TRREB) support.
Does MLS Import work with CREA DDF?
MLS Import is our own plugin. Its support for TRREB listings through PropTx and AMPRE is documented in the WordPress.org changelog, versions 6.3.8 and 7.0.4. CREA DDF compatibility is separate: confirm it with our support team for your specific feed and authorization arrangement before you buy.