Description
SignContract for WooCommerce lets store owners require document approval or electronic signature after checkout for selected products or categories. Merchants can assign signing templates to products or categories, define a fallback template, send signing links to customers, and show signing status in WooCommerce orders.
This WooCommerce approval workflow helps merchants collect document approval and electronic signing where required as part of their order process. The signing process is handled by the SignContract service, while WooCommerce displays the relevant signing status and order metadata.
Features include:
- Require approval or signature after checkout for selected WooCommerce products or categories.
- Assign agreement templates at product or category level.
- Configure a fallback signing template.
- Support PDF and supported image documents when supported by the SignContract service.
- Create customer signing links after checkout.
- Let customers sign by drawing, typing, or uploading a signature image.
- Show signing link expiry to customers.
- Include signing link expiry in customer email.
- Configure signing links from 1 to 168 hours, with a maximum of 168 hours / 7 days.
- Track signing status in WooCommerce order admin.
- Preserve historical signing metadata after disabling the integration.
- Show signed PDF and verification information when available.
- Export signed documents and audit metadata when available.
- Show plan, monthly usage, subscription renewal, and usage reset in WooCommerce admin.
- Configure template-based workflow actions after successful signing.
- Optionally update WooCommerce order status after signing when configured in the selected signing template.
SignContract account required
This plugin requires an active SignContract account and API key. Some features require an active paid subscription, except where a new customer free trial is available. The plugin connects to SignContract servers to create signing sessions, process documents, store signed files, and return status and verification data.
The plugin does not provide a complete local signing service by itself. Signing sessions, document processing, signed document storage, verification data, account usage, and subscription information are provided by SignContract.
External services
This plugin connects to the SignContract service at https://signcontract.app and https://api.signcontract.app/api. The service is provided by SignContract / Tengo International GmbH.
The SignContract service is required for this plugin to create signing sessions, process agreement documents and templates, generate signing links, store signed documents according to the merchant’s plan, provide verification metadata, return account/subscription/usage status, and send webhook updates back to WooCommerce.
Data sent to SignContract may include:
- Site URL or domain.
- WooCommerce order ID or order reference.
- Product, category, and template metadata needed to select the correct signing document.
- Customer name and email when needed to create or send signing sessions.
- Store owner or administrator email when needed for account connection, metadata, or support context.
- Agreement documents or templates uploaded by the merchant.
- Signature field positions and visible PDF seal preference.
- Signature method metadata, such as drawn, typed, or uploaded signature method, and typed signer name where used.
- Return URL, public signing frontend URL, webhook URL, webhook URL host, and generated webhook secret shared server-to-server for webhook HMAC verification.
- Connect token, plugin version, site locale, source identifier, and business account identifier when present during account connection or subscription management.
- Signing session status and webhook metadata.
- Signed document metadata, document hashes, and verification URLs.
- API key authentication headers or tokens required to authenticate store API requests.
Data may be sent when:
- Connecting the store to SignContract or exchanging a connection token.
- Opening SignContract pricing, checkout, subscription, or billing management pages from WooCommerce admin.
- Creating or refreshing a signing session.
- Preparing or editing a signing template.
- A customer signs a document.
- The plugin checks account, subscription, or usage status.
- Webhooks update WooCommerce order status or signing metadata.
Terms of Service: https://signcontract.app/terms
Privacy Policy: https://signcontract.app/privacy
Data Processing Agreement: https://signcontract.app/dpa
This plugin may redirect store owners to Stripe’s billing portal for subscription management. Stripe provides payment processing and billing services used by SignContract. When a store owner accesses billing management, the browser is redirected to Stripe’s hosted billing portal.
Data sent to Stripe indirectly via SignContract may include:
- Business account email.
- Subscription plan and billing details.
Stripe’s billing portal is hosted at https://billing.stripe.com.
Stripe Terms of Service: https://stripe.com/ssa
Stripe Privacy Policy: https://stripe.com/privacy
Privacy and data retention
Signed documents and metadata may be stored by SignContract according to the merchant’s selected plan and retention or download availability period. Signing link expiry controls how long a pending signing link remains valid. It is separate from signed PDF download availability or retention after signing.
Merchants are responsible for informing their customers that order and signing data may be processed by SignContract and for updating their store privacy policy accordingly.
Suggested privacy policy text:
When a product or order requires document approval or electronic signature, we may send order details, customer contact information, and the relevant agreement document to SignContract to create and process a signing session. SignContract may store signed documents and verification metadata according to our selected plan and retention settings.
Security
- Signing links are tokenized and expire.
- Expired signing links show an expired-link message.
- Webhooks are signed and verified using HMAC signatures created with a generated webhook secret shared server-to-server with SignContract.
- The API key is used for authenticated API requests from WooCommerce to SignContract.
- The generated webhook secret is used only to verify webhook callbacks from SignContract to WooCommerce.
- API keys and webhook secrets are stored in WordPress options.
- Technical server-to-server settings are hidden in production where applicable.
Developer Notes
- Technical connection settings may be shown in local or development environments only.
- Production uses configured service defaults or constants where applicable.
- Run Plugin Check before release.
- Do not include secrets in the plugin package.
License
GPLv2 or later.
Installation
WooCommerce is required. If WooCommerce is not active, the plugin shows a notice.
- Install and activate WooCommerce.
- Upload the plugin ZIP or install from WordPress.org.
- Activate SignContract for WooCommerce.
- Go to WooCommerce > SignContract.
- Connect your SignContract account or enter your API key if instructed.
- Configure signing templates.
- Assign templates to products or categories.
- Optionally configure signing link expiry and checkout notice.
- Optionally configure template workflow behavior after signing.
- Place a test order.
FAQ
-
Does this plugin require a SignContract account?
-
Yes. The plugin connects WooCommerce to the SignContract service. A SignContract account and active plan are required to create signing sessions.
-
Is there a free trial available?
-
Yes. When you connect your store, you can start a 7-day trial with 5 signed approvals included. No credit card is required. After the trial, choose a paid plan to continue signing.
-
Is WooCommerce required?
-
Yes. This plugin is designed for WooCommerce stores.
-
Is the plugin free?
-
The WordPress plugin can be installed, but signing sessions and SaaS features require a SignContract account or subscription. A 7-day trial with a 5-document trial allowance is available at no cost and does not require a payment method.
-
What happens when the trial ends?
-
Once the 7-day trial period ends or all 5 signed approvals have been used, new signing sessions cannot be created. Existing signed documents and template configurations remain visible. Choose a paid plan in the WooCommerce SignContract settings to continue signing.
-
What happens when the integration is disabled?
-
Disabling the integration stops new signing sessions from being created. Existing signing links remain valid until their normal expiry, and historical signed records remain visible.
-
Do existing signing links stop working if I disable the integration?
-
No. Disabling the integration prevents new signing requests but does not invalidate existing signing links.
-
How long are signing links valid?
-
The merchant can configure pending signing link expiry from 1 to 168 hours. The maximum is 168 hours, which is 7 days.
-
Is signing link expiry the same as signed PDF retention?
-
No. Signing link expiry controls how long a pending customer signing link can be used. Signed PDF download availability and retention are controlled by the merchant’s SignContract plan after the document is signed.
-
Can I assign different templates to different products or categories?
-
Yes. Templates can be assigned to products or categories. Product-specific templates take priority, then category templates, then the fallback template.
-
Can signing templates change the WooCommerce order status?
-
Yes. SignContract signing status is stored separately from WooCommerce order status by default. If configured in the selected signing template, the plugin can update the WooCommerce order status after successful signing, for example to Processing or Completed.
-
Does the plugin automatically update WooCommerce order workflow/status?
-
By default, no. The signing document is processed separately from the WooCommerce checkout and order workflow. The plugin stores signing metadata and status on the order. WooCommerce order status is changed only when the selected signing template explicitly defines a workflow action after successful signing.
-
How can customers sign?
-
Customers can sign by drawing their signature, typing their name as a signature, or uploading a supported signature image such as PNG or JPG/JPEG, depending on the signing viewer options available for the signing session.
-
Can I use PDF and image documents?
-
The plugin allows document types supported by the SignContract service, such as PDFs and supported image formats. Unsupported file types may be rejected.
-
What data is sent to SignContract?
-
See the “External services” section above for a complete list of the data that may be sent to SignContract and when it is sent.
-
Are guest orders supported?
-
Guest order signing links can be sent by email. WooCommerce account order visibility follows WooCommerce ownership logic.
-
Does this work with yearly plans?
-
Yes. Yearly plans renew yearly, while document usage allowances may reset monthly according to the plan.
-
How do customers verify signed documents?
-
Signed documents can include verification metadata and a verification URL. Customers may verify a signed document using the SignContract verification page by uploading the signed PDF.
-
Is there a free trial?
-
New SignContract customers may be eligible for a 7-day free trial that includes up to 5 signed documents. The trial is available only once for new customers and does not reset monthly. After the trial ends or the 5 signed documents are used, a paid SignContract plan is required to create new signing sessions.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“SignContract for WooCommerce” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “SignContract for WooCommerce” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.0.0
Initial release.
