OTM Yardi Connect releases
WordPress plugin that syncs property, floor plan, unit, pricing, availability, specials, and fee data from Yardi RentCafe into native WordPress content types, renders it with brand-controlled blocks and templates, and delivers leads to Yardi guest cards, HubSpot, and a local log with in-plugin retry.
by Old Town Media · github.com/oldtownmedia/plugin-yardi-connect · website
Install
The author publishes release zips, so WP-CLI can install straight from GitHub:
wp plugin install https://github.com/oldtownmedia/plugin-yardi-connect/releases/download/v0.2.5/plugin-yardi-connect.zipReadme
OTM Yardi Connect
WordPress plugin that syncs property, floor plan, unit, pricing, availability, specials, and fee data from Yardi RentCafe into native WordPress content types, renders it with brand-controlled blocks and templates, and delivers leads to Yardi guest cards, HubSpot, and a local log with in-plugin retry.
Single-client build. The client owns the Yardi relationship and brings their own RentCafe API credentials.
Status
Early build. Milestone 0 and 1 (scaffold, installer, services, admin shell) are in place. The source adapter, sync engine, lead pipeline and front end are not built yet.
Before this can talk to Yardi
RentCafe API V2 needs an approved Yardi vendor partnership, and that is the project's critical path.
Every V2 call carries two sets of credentials at once:
POST https://basic.rentcafeapi.com/{controller}/{action}
vendor: <OTM's approved vendor identity> <- agency side
Authorization: Bearer <token> <- agency side, minted from
rentcafeapiportal.yardione.com
{ "apiToken", "companyCode", "propertyCode" } <- client side
The client cannot name Old Town Media on their Vendor API Token until OTM appears in Yardi's approved-vendor dropdown, and OTM's vendor-portal login is issued through the partnership. The partnership involves an application, a Data Exchange Agreement, an annual interface fee and a pilot beta, and Yardi publishes no timeline.
Until then, set the source to Fixtures and everything else works.
Rate limits are not advisory
Yardi's published Best Practice Guide sets per-property ceilings, and reserves the right to disable access for exceeding them:
| Endpoints | Ceiling |
|---|---|
getapartmentavailability, getfloorplans |
2 per day |
| Images, amenities, office hours, pet policy, property and marketing details, lease fees | 1 per month |
rentcafeurl/* deep links |
once, at setup |
createlead |
on occurrence, metered |
Hourly availability polling is not permitted. The plugin ships compliant defaults and refuses to exceed the configured cap, logging the skip with a reason rather than failing silently.
Requirements
- WordPress 6.4+
- PHP 8.1+
- Divi 5 for the front-end module layer (the render layer works without it)
- Gravity Forms 2.7+ (optional, for the lead feed)
Local development
composer install --no-dev -o # runtime deps, vendor/ is committed
composer install --working-dir=tools # dev tooling, not shipped
tools/vendor/bin/phpcs # coding standards
tools/vendor/bin/phpstan analyse --memory-limit=1G # static analysis
tools/vendor/bin/phpunit # unit tests
The unit tests do not load WordPress. They cover the self-contained logic (crypto, response parsing, backoff) against recorded fixtures in fixtures/, which is deliberate: that is where nearly all the risk lives, and none of it needs credentials.
Releasing
The version lives in the plugin header and nowhere else.
# bump Version: in otm-yardi-connect.php, commit, then
git tag v0.2.0 && git push origin v0.2.0
The release workflow verifies the tag matches the header, checks that vendor/ and Action Scheduler are committed, and publishes a zip that extracts to plugin-yardi-connect/.
Standards
Built to standards-ux/wordpress-plugins. The plugin is a guest inside wp-admin: native WordPress components first, OTM accents only, all custom CSS scoped under .otm-wp and enqueued only on this plugin's own screens.
assets/otm-wp-admin.css is vendored verbatim from that repo. Do not edit it here; change it upstream and re-copy.
Read the full README on GitHub →
Releases
| Tag | Published | Asset | Downloads |
|---|---|---|---|
| v0.2.5 | Aug 28, 2026 | plugin-yardi-connect.zip | 1 |
| v0.2.4 | Aug 28, 2026 | plugin-yardi-connect.zip | 1 |
| v0.2.3 | Aug 28, 2026 | plugin-yardi-connect.zip | 1 |
| v0.2.2 | Aug 28, 2026 | plugin-yardi-connect.zip | 1 |
| v0.2.1 | Aug 28, 2026 | plugin-yardi-connect.zip | 1 |
| v0.2.0 | Aug 28, 2026 | plugin-yardi-connect.zip | 0 |
| v0.1.2 | Aug 28, 2026 | plugin-yardi-connect.zip | 1 |
| v0.1.1 | Aug 28, 2026 | plugin-yardi-connect.zip | 3 |
| v0.1.0 | Aug 28, 2026 | plugin-yardi-connect.zip | 3 |