SignContract for WooCommerce
Customer approval for custom and personalised WooCommerce orders
SignContract for WooCommerce helps merchants who sell custom, personalised, or made-to-order products collect signed customer approval before production begins.
If your business requires customers to review and approve order details, artwork, proofs, specifications, terms, or documents before you start working, this plugin automates that process inside WooCommerce.
Who the plugin is for
This plugin is built for merchants who need documented proof that a customer has reviewed and approved order details. Common industries include:
- Printing shops — send the final artwork proof for approval before sending jobs to press.
- Embroidery businesses — confirm the logo, placement, colours, and garment details before stitching.
- Personalised clothing stores — confirm names, numbers, sizes, and designs before production.
- Engravers — confirm the exact text, spelling, font, and layout before engraving.
- Signs and banners companies — confirm dimensions, materials, artwork, and installation details.
- Custom packaging suppliers — confirm the dieline, branding, dimensions, and print design.
- Invitation and stationery businesses — confirm names, dates, wording, colours, and layout.
- Promotional product sellers — confirm branding, quantities, colours, and product specifications.
How the approval workflow works
- Assign an approval template to a product or category. The template contains the document or agreement the customer must review.
- Customer places an order. WooCommerce automatically sends a signing link by email and shows it on the order page.
- Customer reviews and signs. The customer opens the link, reviews the document, and approves by drawing, typing, or uploading a signature.
- You get signed approval. The signed document and approval record are stored and linked to the WooCommerce order for your records.
Why merchants use this plugin
- Reduce misunderstandings — customers confirm artwork, spelling, colours, sizes, measurements, layouts, and production details before you start.
- Fewer remakes — clear approval records mean less back-and-forth when details are questioned.
- Fewer disputes and chargebacks — a signed approval linked to the order documents what the customer agreed to.
- Faster production — no waiting for email replies or phone confirmations. The approval link does the work.
- Professional process — customers receive a clear, branded approval experience.
Common approval examples
- A printing shop sends the final artwork proof. The customer approves the layout, colours, and crop marks.
- An embroidery business confirms the logo placement, thread colours, and garment type.
- A personalised clothing store confirms the name, number, font, and size on each item.
- An engraver confirms the exact text, spelling, font choice, and placement layout.
- A sign company confirms the dimensions, material finish, artwork file, and installation notes.
- A packaging supplier confirms the dieline, branding placement, dimensions, and print colour profile.
- An invitation business confirms the names, dates, wording, paper colour, and font layout.
- A promotional product supplier confirms the branding artwork, quantities, product colour, and specifications.
Key features
- Assign approval templates at the product or category level.
- Configure a default fallback template for unassigned products.
- Automatically send approval links after checkout.
- Customers sign from email or the WooCommerce order page.
- Support for PDF and supported image documents.
- Draw, type, or upload a signature.
- Signed approval records linked to each WooCommerce order.
- Track approval status directly in WooCommerce order admin.
- Configurable signing link expiry from 1 to 168 hours (7 days).
- Signed PDF and verification metadata available after signing.
- Export signed documents and audit data when available.
- Optional workflow actions after signing, such as updating order status.
- Preserve historical approval records after disabling the integration.
SignContract account required
This plugin requires an active SignContract account and API key. A 7-day free trial with 5 signed approvals is available for new customers. No credit card is required for the trial.
The plugin connects to SignContract servers to create approval sessions, process documents, store signed files, and return status and verification data.
The plugin does not provide a complete local signing service by itself. Approval 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.
