Agreements Pro
Unique link → client signs multi-section agreement → admin countersigns → PDF generated, emailed, and securely indexed.
Install
No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:
wp plugin install https://github.com/smhz101/agreements-pro/archive/refs/heads/main.zipUnique link → client signs multi-section agreement → admin countersigns → PDF generated, emailed, and securely indexed. Optional DocuSign flow.
Description
Agreements Pro lets you send a unique link to a client to sign a multi-section agreement. After the client signs, an administrator countersigns and a PDF is generated, emailed to both parties, and stored in a protected uploads subdirectory. You can use the built-in canvas signature or switch to a DocuSign-based flow.
Features
- Custom post type "Agreements"
- Visual sections builder (JSON-backed)
- Client signing page via tokenized URL (
/sign/{token}) - Admin countersign step
- PDF generation with Dompdf
- Emails PDF to both parties and indexes files
- Pluggable providers (Native canvas, DocuSign anchor mode)
- Shortcode to share link:
[agreements_pro_link id="123"] - Section embedding shortcode:
[asp_section id="section_id"]
Security and Privacy
- PDFs are written to
/wp-content/uploads/asp-agreements/ - A
.htaccessfile is placed to deny direct HTTP access - Nonces, capability checks, and basic input sanitization are used
Installation
- Upload the plugin folder to the
/wp-content/plugins/directory or install it from the Plugins screen. - Activate the plugin through the Plugins screen.
- (Recommended) Run
composer require dompdf/dompdfinside the plugin folder to enable PDF generation. - Go to Agreements > Add New. Define your sections with the visual builder, set client and admin emails, and publish.
- Share the unique link shown in the meta box with your client.
- After the client submits, log in as an admin, countersign, and the PDF will be generated and emailed.
Frequently Asked Questions
Where are PDFs stored?
They are stored under /wp-content/uploads/asp-agreements/. A .htaccess file is written to deny direct HTTP access.
Can I use DocuSign?
Yes. Choose DocuSign as the provider in Agreements > Settings and configure the required credentials or options. The client signs through DocuSign and the PDF uses anchor placeholders.
Do I have to use Composer?
Dompdf is required for PDF generation. Installing it via Composer in the plugin directory is recommended:
composer require dompdf/dompdf
Is there a shortcode to share the client link?
Yes. Use [agreements_pro_link id="123"] where 123 is the Agreement post ID.
How do sections work?
Define sections in JSON with ids, titles, and required fields (name, date, signature, title). You can place a section inline in the agreement content using [asp_section id="your_id"]. Any sections not placed inline are rendered at the bottom of the client form and in the PDF.
Can I duplicate agreements?
Yes. Use the bulk action or row action named Duplicate on the Agreements list screen.
Screenshots
- Agreements list with share links
- Visual sections builder
- Client signing page
- Admin countersign page
- Documents index with downloads
Changelog
1.0.0
Initial release.
Upgrade Notice
1.0.0
First public release.