Description
LIMNET Association Ballot Manager provides a useful free election workflow that runs on the WordPress site where it is installed.
Free-core features:
- Create board, special, recall, amendment, and budget-ratification elections
- Schedule election opening and closing in an IANA timezone while storing timestamps in UTC
- Add candidates or ballot choices
- Import or update an eligible voter roster of up to 50 voters per election from CSV
- Require both email and membership ID for basic roster verification
- Enforce one recorded ballot per eligible voter
- Configure minimum and maximum selections and optional write-in notes
- Display basic election status and results when the administrator enables public results
- Keep governing-document and legal-research notes with the election
- Load demonstration candidates and a demonstration roster to learn the setup format
- Select a state for recordkeeping and use a generic jurisdiction-neutral baseline profile
- Repair the public ballot page used for the Free Core voter-verification workflow
The Free Core supports unlimited elections with up to 50 voters in each election. The 50-voter capacity applies separately to every election and does not expire or get consumed by prior elections.
This WordPress.org package does not contain commercial implementation code, license checks, remote premium-code loading, or automatic add-on installation. Pro, Portfolio, All States, and state-specific capabilities are distributed separately outside WordPress.org and are not included in this package.
The Free Core intentionally does not include election email sending, sender identity, test-email or SMTP controls, email templates or previews, delivery logs, automated notices, audit logging, audit or receipt exports, quorum enforcement, pre-issued unique secure ballot links, hashed ballot credentials, replacement-ballot workflows, voter-facing election-document uploads, state-specific profile data, or portfolio management.
Important: This plugin is not legal advice and does not guarantee compliance in any jurisdiction. Administrators must review governing documents, applicable law, notice requirements, consent rules, secrecy requirements, and election procedures before use.
Commercial upgrades
The WordPress.org package is a complete free-core edition. It does not contain license-gated premium implementation code and does not contact a license server.
Higher-capacity roster products and other license-based products are delivered through the separately downloaded LIMNET ABM Commercial Extensions plugin from associationballotmanager.com. The purchaser manually installs and activates that ZIP alongside the free core through Plugins > Add Plugin > Upload Plugin. The Commercial Extensions plugin then provides higher-capacity roster processing, license-key entry, and validation of purchased entitlements. Individual State Packs remain separately installed add-on plugins.
Privacy
The plugin stores election settings, candidate data, voter roster data, ballot records, and basic receipt codes in plugin-owned database tables on the WordPress site where it is installed. It does not send voter data, ballot selections, or license information to AssociationBallotManager.com.
The Add-ons & Services screen contains ordinary external links. Data is sent to the linked website only when an administrator chooses to open one of those links. The free core does not contact an external licensing service and does not download executable code from external servers.
Installation
- Install the ZIP through Plugins > Add New > Upload Plugin, or copy the plugin folder to
/wp-content/plugins/. - Activate the plugin.
- Open Association Ballots > Settings and select “Repair Ballot Page Automatically.”
- Create an election under Association Ballots > Add New.
- Add candidates or choices and import a voter roster.
- Publish the election and distribute its standard ballot-page URL using your association website, portal, newsletter service, or other existing communication method.
FAQ
-
Does the free core require a license key?
-
No. The functionality included in this WordPress.org ZIP does not require a license key and does not expire.
-
No. Their implementation code is not included in this WordPress.org package. Commercial products are obtained separately outside WordPress.org and are not embedded in or unlocked by this free-core package.
-
What voter capacity does the Free Core support?
-
The Free Core supports unlimited elections with up to 50 voters in each election. The capacity applies separately to every election, never expires, and is not consumed by earlier elections. Higher-capacity roster processing is provided by a separately installed commercial extension whose implementation is not included in this WordPress.org package.
-
How does a voter access the free-core ballot?
-
The voter enters both the email address and matching membership ID from the imported roster. A short-lived local session allows the voter to submit one ballot. The free core does not include pre-issued unique secure ballot links or stored ballot credentials.
-
Does the Free Core send election emails?
-
No. The Free Core does not include sender settings, test email, SMTP guidance, templates, email preview, delivery logs, or automated voter notices. Those communications features are supplied by the separately installed Commercial Extensions plugin when a Pro Bundle or Portfolio license is active. Free Core administrators distribute the standard ballot-page URL using their existing communication tools.
-
What is a unique secure ballot link?
-
Pro and Portfolio can create a different random ballot URL for each voter. The random token connects the link to the correct election and voter record without placing the voter email address or membership ID in the URL. Administrators may download a CSV containing each voter email address and unique secure ballot URL for distribution through an email or mail-merge platform. Generating a replacement link invalidates the previously issued link for that voter.
-
Are state-specific legal rules included?
-
No. The free core includes only a generic jurisdiction-neutral baseline and state selection for recordkeeping. Separately distributed state-pack products may provide maintained state-specific profiles through their own installation instructions.
-
Does this guarantee legal compliance?
-
No. Election legality depends on governing documents and current law. Obtain qualified legal advice when appropriate.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“LIMNET Association Ballot Manager” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “LIMNET Association Ballot Manager” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
0.9.45
- Restored starter-profile note autofill for separately installed State Packs.
- Legal research notes now use the selected State Pack’s packaged statute citations when the field is blank.
- Governing-document notes now receive a neutral profile-specific review reminder when blank.
- Profile changes update only auto-filled or blank note fields and preserve administrator-edited text.
0.9.44
- Sanitized uploaded roster-file metadata before processing the CSV upload.
- Removed the unprefixed legacy State Pack filter invocation and retained the LIMNET-prefixed State Pack extension hook.
0.9.43
- Changed the election-editor higher-capacity button to open the dedicated Roster Size Upgrades page.
- Made the configured public ballot and results page automatically render without a theme sidebar and use the available page width.
0.9.42
- Updated Portfolio / Management Company pricing throughout the Free Core upgrade catalog to $4,999.95/year.
0.9.41
- Restored the Load Demo Candidates option in Step 2.
- Made membership_id a required roster column and required voter-verification field for the Free Core standard ballot URL.
- Clarified that election-document uploads and voter-facing visibility controls are Pro or Portfolio features.
- Rewrote the Add-ons purchase flow to explain account registration, purchase, My Account downloads, installation, and license activation.
- Clarified that Commercial Extensions is included with a paid license-based upgrade and is not a separate public free download.
- Updated the Free-core dashboard boundary notice and linked directly to the Add-ons page.
0.9.40
- Removed sender name, sender email, Send Test Email and basic email-delivery controls from the WordPress.org Free Core.
- Clarified that Free Core administrators distribute the standard ballot URL using their existing communication tools.
- Rebuilt Add-ons & Services with a clear one-extension/multiple-license purchase workflow.
- Added plain-language explanations of unique secure ballot links, downloadable voter-link CSV files, roster capacities, All States, Portfolio, individual State Packs and setup assistance.
- Preserved unlimited elections, the 50-voter-per-election Free Core capacity, security fixes, PHP 8.4 compatibility, CSV safeguards and election-timezone handling.
0.9.39
- Established the Free Core capacity as unlimited elections with up to 50 voters per election.
- Added an atomic roster-capacity check so imports that would exceed 50 voters make no database changes.
- Existing voter records can still be updated without consuming additional capacity.
- Added clear roster-capacity status, higher-capacity purchase links, and upgrade-installation guidance on ABM-owned admin pages.
- Preserved legacy/commercial rosters without deleting records while preventing the Free Core from adding new voters above its capacity.
- Retained all security, unique-prefix, PHP 8.4, CSV, timezone, and Plugin Check fixes.
0.9.38
- Added a stable coexistence path for the separately installed LIMNET ABM Commercial Extensions plugin.
- The free-core runtime now yields cleanly when the commercial extension is active, preventing duplicate menus, shortcodes, and request handlers.
- Updated upgrade instructions so customers install the commercial extension alongside the free core rather than replacing WordPress.org files.
- Retained the WordPress.org-safe free feature set, security fixes, PHP 8.4 compatibility, CSV safeguards, and election-timezone handling.
0.9.36
- Rebuilt the WordPress.org package as a true free core rather than an unlocked commercial build.
- Removed commercial implementation code, license fields, license-status logic, remote license checks, and all bundled state-specific profile files.
- Removed automated notices, audit logging and exports, quorum enforcement, pre-issued unique secure ballot links, hashed ballot credentials, replacement-ballot workflows, and portfolio features from the directory package.
- Added a basic roster-verification ballot flow using email, required membership ID, a short-lived local access session, and one-vote enforcement.
- Retained security, escaping, unique prefixes, PHP 8.4 CSV compatibility, timezone handling, and WordPress.org review fixes from earlier review builds.
- Added extension hooks for independently installed state-profile or commercial add-ons without loading or installing external executable code.
0.9.35
- Converted exported and displayed timestamps to the selected election timezone while retaining UTC storage.
0.9.34
- Addressed Plugin Check findings for escaping, translator comments, CSV handling, and custom-table database calls.
0.9.30
- Adopted the unique LIMNET plugin name, slug, text domain, and
limnet_abm_identifiers.
0.1.0
- Initial MVP release.
