Slack
Overview
Section titled “Overview”The Slack integration sends document signing notifications to a Slack channel using Incoming Webhooks. When a document requires signatures, is signed, or is completed, a rich notification with action buttons appears in your designated Slack channel.
Use Cases
Section titled “Use Cases”| Scenario | Description |
|---|---|
| Team awareness | Keep your team informed of every signing event without leaving Slack |
| Sales deal closing | Notify the sales channel the instant a proposal or contract is signed |
| HR document flow | Alert HR when new-hire paperwork (NDAs, offer letters) is executed |
| Legal review | Post signing activity to a legal channel for real-time compliance monitoring |
| Executive visibility | Surface document completion status to leadership channels |
| Fast follow-up | Use action buttons in Slack messages to jump straight to the document |
Prerequisites
Section titled “Prerequisites”- A Slack workspace where you have admin permissions
- WPsigner 2.1.0+ installed and activated
Compatibility
Section titled “Compatibility”| Component | Minimum Version | Recommended |
|---|---|---|
| WPsigner | 2.1.0 | Latest |
| WordPress | 5.8 | 6.4+ |
| PHP | 7.4 | 8.1+ |
| Slack API | Incoming Webhooks v2 | Incoming Webhooks v2 |
| TLS | 1.2 | 1.3 |
| PHP Extensions | curl, json | curl, json, openssl |
-
Create a Slack App
Go to api.slack.com/apps and click Create New App → From scratch.
Name it something like “WPsigner” and select your workspace.
-
Enable Incoming Webhooks
In the app settings sidebar, click Incoming Webhooks and toggle it ON.
-
Add a Webhook
Click Add New Webhook to Workspace, select the channel where you want to receive notifications, and click Allow.
-
Copy the Webhook URL
Copy the generated webhook URL. It will look like:
https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX -
Configure in WPsigner
Go to WPsigner → Integrations → Slack → Configure.
- Toggle Enable Slack Notifications
- Paste your webhook URL
- Optionally enter the channel name for your reference
- Click Test Connection to verify
- Click Save Settings
Notifications
Section titled “Notifications”The integration sends rich Block Kit messages for four events:
Document Ready for Signature
Section titled “Document Ready for Signature”When a document is created and a signer is assigned, a notification with a Sign Document button is sent to the channel.
Signature Recorded
Section titled “Signature Recorded”When a signer completes their signature, a confirmation notice appears in the channel.
Document Completed
Section titled “Document Completed”When all signers have signed, a completion notification is sent with the total signer count.
Reminder (Manual)
Section titled “Reminder (Manual)”When an admin sends a manual reminder, a notification with a Sign Now button appears.
Security
Section titled “Security”| Measure | Implementation |
|---|---|
| Webhook URL storage | Encrypted at rest (AES-256-GCM) |
| URL validation | Domain restricted to hooks.slack.com only |
| URL privacy | Never echoed back to the browser |
| Transport security | HTTPS + TLS 1.2+ (enforced by Slack) |
| Access control | WordPress admin capability check |
| CSRF protection | WordPress nonce verification |
| Content escaping | All user content escaped before inclusion |
Troubleshooting
Section titled “Troubleshooting””Invalid Slack webhook URL”
Section titled “”Invalid Slack webhook URL””The URL must start with https://hooks.slack.com/. Verify you copied the full URL from Slack.
”Test failed” with channel_not_found
Section titled “”Test failed” with channel_not_found”The channel associated with the webhook may have been deleted or archived. Create a new webhook for an active channel.
”Test failed” with invalid_payload
Section titled “”Test failed” with invalid_payload”Ensure your WPsigner installation uses PHP 7.4+ with json_encode support.
No message appears after test
Section titled “No message appears after test”- Check that the webhook is enabled in your Slack App settings
- Verify the channel hasn’t been archived
- Check that your server can reach
hooks.slack.com(no firewall blocking outbound HTTPS)
API Reference
Section titled “API Reference”Hooks Used
Section titled “Hooks Used”| Hook | Event |
|---|---|
wps_signer_created | Signing request sent |
wps_after_document_signed | Signature recorded |
wps_document_completed | All signatures complete |
Options
Section titled “Options”| Option Key | Description |
|---|---|
wps_slack_enabled | Integration enabled (boolean) |
wps_slack_webhook_url | Encrypted webhook URL |
wps_slack_channel_name | Display channel name (string) |
Comparison
Section titled “Comparison”| Feature | Slack | Telegram | |
|---|---|---|---|
| Target | Channel (team) | Individual (Chat ID) | Individual (phone) |
| Auth | Webhook URL | Bot Token | API Token |
| Message format | Block Kit (mrkdwn) | HTML | Template |
| Setup complexity | Low | Medium | High |
| Rate limit | 1/sec/webhook | 30/sec | Varies |
Next Steps
Section titled “Next Steps”- Microsoft Teams Integration — Receive Adaptive Card notifications in Teams channels
- Telegram Integration — Notify individual signers via a Telegram bot
- Twilio SMS Integration — Deliver signing requests and reminders by SMS
- WhatsApp Integration — Send notifications via WhatsApp Business API
- Zapier Integration — Connect WPsigner with 5,000+ apps via Zapier
- n8n Integration — Build custom automation workflows with n8n
- Make Integration — Create visual automation scenarios with Make
- All Integrations — Browse every available WPsigner integration