Loading...
New: API Access + Custom Branding now available on Business. Upgrade now →
Loading...
Use Salesforce Apex or Flow to trigger signing requests from Opportunity records. Signed PDFs auto-attach back to your records. Close deals faster without leaving your CRM.
Business plan required · Works with Sales Cloud & Service Cloud · No per-record fees
Compatible with
Four steps to connect Salesforce Opportunity records to e-signature workflows.
Get a SignBolt Business API key from your dashboard. This authenticates all API calls from your Salesforce Apex code or Flow actions.
Store your API key as a Salesforce Named Credential or Custom Setting. Use it in Apex callouts or Flow HTTP actions — no hardcoded secrets.
Create an Apex trigger or Flow on your Opportunity object. When the stage reaches 'Contract Sent', call the SignBolt API with the contact's email and the relevant PDF.
When SignBolt fires the document.signed webhook, your Salesforce endpoint updates the Opportunity record, attaches the signed PDF, and moves the stage to 'Closed Won'.
Automate the entire contract lifecycle inside Salesforce.
Trigger signing requests directly from Salesforce Opportunity records using Apex triggers or Flow automation. When a deal reaches the right stage, SignBolt handles the rest.
When SignBolt fires the document.signed webhook, your Salesforce org receives the event and can attach the signed PDF to the Opportunity, Account, or Contact record automatically.
The API-based integration works with any Salesforce cloud edition. Use it with Sales Cloud Opportunities, Service Cloud Cases, or any custom object — the REST API is object-agnostic.
Use the document.signed webhook to trigger a Salesforce Flow that moves the Opportunity stage to 'Closed Won', logs a chatter post, and creates a follow-up task for your rep.
Add custom fields to your Opportunity object: signing_status__c, signed_at__c, signed_pdf_url__c. Update them via webhook so your team always knows the current signing state.
API access, webhooks, API key management, and all integration capabilities are included in the SignBolt Business plan at $24/mo. No per-record or per-document fees.
SignBolt fires these events to your configured Salesforce webhook endpoint. Use them to keep Opportunity records in sync with signing activity.
document.signedFires when a recipient completes signing. Payload includes document ID, signer email, timestamp, and a URL to download the signed PDF for attachment to Salesforce records.
document.viewedFires when a recipient opens the signing link. Update your Opportunity stage to 'Contract Viewed' and trigger a Salesforce task for your rep to follow up if needed.
document.declinedFires when a recipient declines to sign. Create a Salesforce task, alert the account owner, and trigger a re-engagement process in your org.
Step-by-step instructions to connect SignBolt to Salesforce using Apex callouts and webhook endpoints.
Log in to your SignBolt Business dashboard. Navigate to Settings → API Keys and generate a new key. In Salesforce, store it as a Custom Setting or Named Credential — never hardcode it in Apex.
Add a Remote Site Setting for https://signbolt.store in Salesforce Setup. Then create the SignBoltService Apex class below. Call sendForSignature() from an Apex Trigger or Flow when the Opportunity stage changes.
// Apex Callout — Send document for signature from Opportunity
// Triggered by a Flow or Apex Trigger on Opportunity stage change
public class SignBoltService {
private static final String API_KEY = SignBolt_Settings__c.getInstance().API_Key__c;
private static final String BASE_URL = 'https://signbolt.store/api/v1/sign';
public static void sendForSignature(
String signerEmail,
String pdfBase64,
String opportunityId
) {
HttpRequest req = new HttpRequest();
req.setEndpoint(BASE_URL);
req.setMethod('POST');
req.setHeader('Authorization', 'Bearer ' + API_KEY);
req.setHeader('Content-Type', 'application/json');
Map<String, Object> body = new Map<String, Object>{
'signerEmail' => signerEmail,
'fileBase64' => pdfBase64,
'webhookUrl' => 'https://YOUR_SITE.force.com/signbolt/webhook',
'metadata' => new Map<String, String>{
'salesforceOpportunityId' => opportunityId
}
};
req.setBody(JSON.serialize(body));
Http http = new Http();
HttpResponse res = http.send(req);
if (res.getStatusCode() == 200) {
Map<String, Object> result =
(Map<String, Object>) JSON.deserializeUntyped(res.getBody());
// Store the signing request ID on the Opportunity
Opportunity opp = new Opportunity(
Id = opportunityId,
SignBolt_Request_Id__c = (String) result.get('id'),
Signing_Status__c = 'Sent'
);
update opp;
}
}
}Expose a Salesforce Site (Apex REST class) or use a middleware (Zapier, Make, or a serverless function) to receive the document.signed webhook from SignBolt. The payload below includes the Opportunity ID you passed in metadata, so your handler can look up and update the record.
// SignBolt fires this to your Salesforce webhook endpoint
// when a document is signed
{
"event": "document.signed",
"documentId": "doc_abc123",
"signerEmail": "client@example.com",
"signedAt": "2026-04-08T10:32:00Z",
"downloadUrl": "https://signbolt.store/api/documents/doc_abc123/download",
"metadata": {
"salesforceOpportunityId": "006XXXXXXXXXXXXXXX"
}
}
// Your Apex REST endpoint receives this and:
// 1. Finds the Opportunity by metadata.salesforceOpportunityId
// 2. Updates Opportunity.StageName = 'Closed Won'
// 3. Updates Opportunity.Signing_Status__c = 'Signed'
// 4. Attaches the signed PDF via ContentVersion + ContentDocumentLinkWhen you receive the document.signed webhook, use the Salesforce API or an Apex handler to:
API access, webhooks, API key management, and unlimited documents — everything you need to connect SignBolt to Salesforce — is included in the Business plan.
No. This is an API-based integration using SignBolt's REST API and Salesforce Apex callouts or Flow HTTP actions. You connect the two platforms directly using your SignBolt Business API key — no AppExchange package is required.
The Business plan ($24/mo) includes API access, webhook support, and the API key management dashboard required to build and run the Salesforce integration.
No. Recipients receive an email with a secure signing link and can sign the document in their browser without creating an account. Only you, as the sender, need a SignBolt Business account.
You can receive SignBolt webhooks in Salesforce using a Salesforce Site (Apex REST endpoint exposed as a public URL), an Experience Cloud site endpoint, or by routing through a middleware like Zapier, Make, or a serverless function that then calls the Salesforce API.
Yes. Salesforce Flows support HTTP callout actions via the 'HTTP Callout' element (available in Flow Builder). Configure the callout to POST to the SignBolt API at /api/v1/sign with your Bearer token and field mappings from the Opportunity record.
Start with the Business plan, grab your API key, and build your first Salesforce signing workflow today. The REST API is documented and ready.