Penny for Craft CMS

Free for Craft CMS 5 · Works on Solo

Hand over a scope, not a login

You need a bio from a new hire, a paragraph from a client, next month's opening hours. Penny gives you a third option between making them a Craft account and chasing it over email: pick the entry, tick the fields they may touch, and send a link. They fill it in, send it back, and the link is spent.

Penny

Features

Modelled on WordPress's One Time Login, except that plugin hands over a whole admin session and Penny hands over only the fields you ticked.

One link, one use

Keys are 32 random bytes and only their SHA-256 is stored, so a database dump holds no working link. Once the recipient submits, the link is dead.

  • Deadlines, revoke and re-issue
  • Wrong guesses rate-limited per IP

The scope is the boundary

The fields you tick are the only fields Penny renders and the only fields it writes. A posted value for anything else is dropped, whatever arrives in the request.

  • Admin, email, password and permissions are never writable

Nothing live until they submit

Entries and categories are edited on a draft, so a half-finished session never shows on your site and closing the tab loses nothing.

  • Hold for review keeps it a draft until you approve (Pro)

No account for the recipient

The Penny page renders Craft's real field inputs, Matrix and CKEditor and uploads included, without creating a user. It works on a Solo licence and nobody walks away with a login.

The full editor, when they need it

For a recipient who needs the whole control panel, Pro creates a temporary account limited to the invite's elements and fields. They hand the work in from a bar on every page, and the account is deleted there and then.

A trail for every invite

Created, sent, opened, saved, submitted: each step is recorded with when and from which address. The key itself is never logged.

  • Email delivery, reminders and submission notices (Pro)

Penny in use

Real screens from a Craft 5 install: the invite, with the fields ticked, and the page the recipient lands on.

A Penny invite in the Craft control panel, targeting a Team entry with Role, Bio and Direct line ticked and Internal notes left out
The Penny page a recipient sees: the sender's note, the deadline, the three ticked fields and the Send it in button, with no Internal notes field

Screenshots from a live install, not mockups.

Know what's out with a client

A Twig variable tells your templates which pages somebody is working on right now, and console commands handle the chasing.

twig
{# Is this page out with a client right now? #}
{% if craft.penny.isOut(entry) %}
    <p>Waiting on the client.</p>
{% endif %}

{# Every live invite covering this entry #}
{% for invite in craft.penny.invitesFor(entry).all() %}
    {{ invite.recipientName }}, due {{ invite.expiryDate|date('j M') }}
{% endfor %}

Frequently Asked Questions

The questions worth answering before you install it.

Start free, upgrade when you send a lot of them

Lite is free and covers one target per invite with the full scope, expiry and audit trail. Pro is $79 with a $59/year renewal, and adds more targets, temporary control panel sessions, emails and review.

More in Editorial

Pairs well with Penny

For the people writing the content. Scheduling, staging, revision diffs, house style, find and replace, and a warning before two editors overwrite each other.