Contracts
A contract lifecycle portal is where contract owners submit agreements for legal review, legal approves or rejects each one with a reason on the record, and a reminder goes out before a contract renews.
Pattern: RequestsDescribe it to Pory
“Our team leads send vendor contracts to legal before anything is agreed. Legal approves or rejects each one, and we want a reminder before any contract renews.”
Contracts
In plain English
A contract lifecycle portal is where contract owners submit agreements for legal review, legal approves or rejects each one with a reason on the record, and a reminder goes out before a contract renews. It follows the Requests pattern: someone submits, someone decides, it moves through statuses. Pory generates it from a plain-English description, with a login for each role (contract owner and legal counsel) that shows only what that role should see, and flat pricing with unlimited contract owners.
What it does
Contracts used to reach legal as forwarded email attachments, and approvals came back as "fine by me" with no note of what was checked. Legal counsel sees every contract on a board by status, opens one, reads the attached file, and approves or rejects it, writing the reason on the record. The contract owner reads the answer on their contract instead of chasing legal in the corridor.
Auto-renewals used to be noticed on the credit card statement, a year too late to cancel. Each contract carries its renewal date, and legal gets a reminder in their portal inbox and by email before it arrives, naming the contract and the date. There's time to renegotiate or give notice, instead of another year of a tool nobody opens.
Pory generates a portal from these pieces and wires the permissions between them. The same parts run a grant round, a help desk, and a tenant portal — only the names on the pages change.
Collect
Signed-in or public, with typed fields and file uploads. A form files a record; it doesn't start an email thread.
An application page, a notice board, an open directory — pages and forms anyone can use without signing in, on your domain.
People create their own account and land in the role you chose for them.
Upload and view files on the record they belong to — not in a folder named FINAL v2.
Decide
Decision buttons for whoever may edit the status. Who decided, when, and why stays on the record.
“Where's my request?” answered as a progress bar on the submitter's own page.
Cards in columns. Drag a record to move it along.
Task lists ticked off per record, in its detail view, with progress — onboarding runs, inspections, opening duties.
Name who a record is for and it lands on their list, and nobody else's.
A reviewer's score, a coach's feedback, a clinician's note — kept on the record it belongs to, never lost in a thread.
Renewals, expiries and overdue work, in an in-app inbox and by email.
Share
Search, filters, sorting, inline add and edit — the spreadsheet, minus the sharing accident.
Portraits, names, and roles from a table, shown only to the roles allowed to see them.
Records on a month or week view, by date.
Records as cards or photos.
Open a unit, a pet or a listing to see its details and everything tied to it — requests, visits, offers. Share it by link; edit, change the status or add a related item from there.
Check-in details, benefits, updates — a page for a role to read.
Live figures over the records a viewer is allowed to see.
Control
Each person sees their own records, the ones assigned to them, their team's or the ones they manage. Fields can be hidden per role. Generated from your description, not set up field by field.
A sign-in link by email, by default. Password sign-in if you'd rather.
Your domain, your colours, your logo. Members see you.
Describe it in a sentence and send the invite. Unlimited contract owners, flat price.