WP Manifestindependent plugin directory
manifest / integrations / plugin-yardi-connect

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

0stars
12release downloads
0forks

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.zip

Readme

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

TagPublishedAssetDownloads
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