Webhook Events Reference

DealBuilder sends an HTTP POST request to your configured endpoint whenever one of the events below occurs. Each request body is a JSON object whose shape is described on this page. Verify that the request came from DealBuilder by checking the webhookKey field against the key shown in your webhook subscription settings.

DocumentSent

Fired when a document is dispatched to its recipient(s). Contains the full document details including order lines, parties, and custom fields.

Fields

Field Type Description
eventType string nullable The event type name, e.g. DocumentSent, DocumentAccepted.
webhookKey string nullable The webhook subscription key, used to verify the request came from DealBuilder.
customerAddress deprecated string nullable Deprecated. Use the Parties array instead.
customerDetailedAddress deprecated WebhookAddress nullable Deprecated. Use the Parties array instead.
customerCompanyName deprecated string nullable Deprecated. Use the Parties array instead.
customerId deprecated string nullable Deprecated. Use the Parties array instead.
customerName deprecated string nullable Deprecated. Use the Parties array instead.
customerFirstName deprecated string nullable Deprecated. Use the Parties array instead.
customerLastName deprecated string nullable Deprecated. Use the Parties array instead.
customerEmail deprecated string nullable Deprecated. Use the Parties array instead.
customerOrgNumber deprecated string nullable Deprecated. Use the Parties array instead.
customerPhoneNumber deprecated string nullable Deprecated. Use the Parties array instead.
customerVisitAddress deprecated string nullable Deprecated. Use the Parties array instead.
customerDetailedVisitAddress deprecated WebhookAddress nullable Deprecated. Use the Parties array instead.
customerSignatureImage deprecated string nullable Deprecated. Use the Parties array instead.
sellerEmail deprecated string nullable Deprecated. Use the Parties array instead.
sellerName deprecated string nullable Deprecated. Use the Parties array instead.
sellerPhoneNumber deprecated string nullable Deprecated. Use the Parties array instead.
templateId string nullable ID of the template used to create the document.
templateName string nullable Display name of the template used to create the document.
parties WebhookDocumentParty[] nullable All parties on the document (recipients, senders, CCs, approvers).
id string nullable Unique ID of the party record.
roles string[] nullable Roles assigned to this party, e.g. Recipient, Sender, CC.
title string nullable Professional title of the party.
name string nullable Full name of the party.
firstName string nullable First name of the party.
lastName string nullable Last name of the party.
email string nullable Email address of the party.
phoneNumber string nullable Phone number of the party.
companyName string nullable Company name of the party.
companyOrgNumber string nullable Organisation / company registration number.
address string nullable Postal address as a single string (legacy). Use DetailedAddress when available.
visitAddress string nullable Visit/delivery address as a single string (legacy). Use DetailedVisitAddress when available.
detailedAddress WebhookAddress nullable Structured postal address. Populated when an address with separate fields was stored.
streetAddress string nullable Street name and number.
zip string nullable Postal / ZIP code.
city string nullable City or town name.
detailedVisitAddress WebhookAddress nullable Structured visit/delivery address. Populated when an address with separate fields was stored.
streetAddress string nullable Street name and number.
zip string nullable Postal / ZIP code.
city string nullable City or town name.
electronicIdAccept WebhookElectronicIdAccept nullable Electronic ID verification data. Populated only when the party accepted via BankID or similar.
name string nullable Full name as returned by the electronic ID provider.
identityScheme string nullable Identity scheme used, e.g. no:bankid, se:bankid, dk:mitid.
issuedAt datetime UTC timestamp when the electronic ID assertion was issued.
dateOfBirth string nullable Date of birth returned by the electronic ID provider (format: YYYY-MM-DD).
acceptDate datetime nullable UTC timestamp when this party accepted/signed the document. Null if not yet accepted.
id string nullable Unique ID of the document.
pdfUrl string nullable URL to the current PDF preview of the document.
createdBy string nullable Email of the user who created and sent the document.
externalReferenceId string nullable External reference ID set on the document (e.g. a CRM deal ID).
contractTitle string nullable Title/name of the document.
language string nullable Language code the document was generated in, e.g. en, nb, sv.
contractNumber integer Auto-incremented sequential number for the document within the account.
created datetime nullable UTC timestamp when the document was created.
validUntil datetime nullable UTC date after which the document expires and can no longer be accepted.
currency string nullable ISO 4217 currency code used on the document, e.g. NOK, EUR, USD.
totalStartup number Sum of all one-time (startup) order line values, before tax.
totalRecurring number Sum of all recurring order line values, before tax.
startupTax number Total tax amount on all one-time (startup) lines.
recurringTax number Total tax amount on all recurring lines.
totalCostStartup number Total cost (purchase price) of all one-time (startup) lines.
totalCostRecurring number Total cost (purchase price) of all recurring lines.
cCs string[] nullable Email addresses added as CC on the document send.
signingTypeId integer Numeric ID for the signing method used on the document.
signingTypeName string nullable Name of the signing method, e.g. ClickToSign, BankID.
description string nullable Free-text description shown to the recipient at the top of the document.
terms string nullable Terms and conditions text the recipient must agree to.
statusId integer Numeric status ID of the document at time of sending.
statusName string nullable Human-readable status name, e.g. Sent.
orderlines WebhookDocumentOrderLine[] nullable All order lines (products/services) on the document.
id string nullable Unique identifier for the order line / product.
name string nullable Display name of the product or service.
description string nullable Longer description of the product or service.
tax number Tax percentage applied to this line (e.g. 25 for 25%).
value number Unit price before discount and tax.
taxValue number Calculated tax amount in currency units.
discount number Discount amount or percentage depending on DiscountInPercentage.
afterDiscount number Unit price after discount has been applied, before tax.
recurring boolean Whether this line is a recurring charge (true) or a one-time startup cost (false).
quantity integer Quantity of units on this line.
cost number Internal cost / purchase price of the product.
discountInPercentage boolean True if the discount is a percentage; false if it is an absolute amount.
productInternalId deprecated string nullable Deprecated. Use ProductExternalId instead.
productExternalId string nullable External product ID from an integrated system (e.g. ERP or CRM).
productInternalDescription string nullable Internal description / notes visible only within DealBuilder.
subOrderLines WebhookDocumentOrderLine[] nullable Child lines when this line is a product bundle.
activites WebhookActivity[] nullable Full audit trail of activity events on the document at time of sending.
readDate datetime nullable UTC timestamp when the activity occurred.
ip string nullable IP address of the actor.
userAgent string nullable Browser or client user-agent string of the actor.
eventString string nullable Human-readable description of the activity.
activityTypeId integer nullable Numeric ID for the activity type.
activityTypeName string nullable Name of the activity type, e.g. ContractOpenedViaEmail.
email string nullable Email address of the actor who triggered this activity.
customFields WebhookDocumentCustomField[] nullable Custom field values with type metadata, as defined on the document template.
id string nullable Id of the custom field as defined in the template.
description string nullable Description of the custom field as defined in the template.
typeId integer Numeric type identifier (e.g. 1 = text, 2 = date, 3 = dropdown).
typeName string nullable Human-readable type name, e.g. TextField, DateField, DropDown.
value string nullable The value entered for this custom field on the document.
Example payload
{ "eventType": "string", "webhookKey": "string", "templateId": "string", "templateName": "string", "parties": [ { "id": "string", "roles": [ "string" ], "title": "string", "name": "string", "firstName": "string", "lastName": "string", "email": "string", "phoneNumber": "string", "companyName": "string", "companyOrgNumber": "string", "address": "string", "visitAddress": "string", "detailedAddress": { "streetAddress": "string", "zip": "string", "city": "string" }, "detailedVisitAddress": { "streetAddress": "string", "zip": "string", "city": "string" }, "electronicIdAccept": { "name": "string", "identityScheme": "string", "issuedAt": "2025-01-15T12:00:00Z", "dateOfBirth": "string" }, "acceptDate": "2025-01-15T12:00:00Z" } ], "id": "string", "pdfUrl": "string", "createdBy": "string", "externalReferenceId": "string", "contractTitle": "string", "language": "string", "contractNumber": 0, "created": "2025-01-15T12:00:00Z", "validUntil": "2025-01-15T12:00:00Z", "currency": "string", "totalStartup": 0, "totalRecurring": 0, "startupTax": 0, "recurringTax": 0, "totalCostStartup": 0, "totalCostRecurring": 0, "cCs": [ "string" ], "signingTypeId": 0, "signingTypeName": "string", "description": "string", "terms": "string", "statusId": 0, "statusName": "string", "orderlines": [ { "id": "string", "name": "string", "description": "string", "tax": 0, "value": 0, "taxValue": 0, "discount": 0, "afterDiscount": 0, "recurring": false, "quantity": 0, "cost": 0, "discountInPercentage": false, "productExternalId": "string", "productInternalDescription": "string", "subOrderLines": [] } ], "activites": [ { "readDate": "2025-01-15T12:00:00Z", "ip": "string", "userAgent": "string", "eventString": "string", "activityTypeId": 0, "activityTypeName": "string", "email": "string" } ], "customFields": [ { "id": "string", "description": "string", "typeId": 0, "typeName": "string", "value": "string" } ] }

DocumentExpiring

Fired when a document is approaching its signing deadline date. Allows you to send reminders or take action before the document expires.

Fields

Field Type Description
eventType string nullable The event type name, e.g. DocumentSent, DocumentAccepted.
webhookKey string nullable The webhook subscription key, used to verify the request came from DealBuilder.
customerAddress deprecated string nullable Deprecated. Use the Parties array instead.
customerDetailedAddress deprecated WebhookAddress nullable Deprecated. Use the Parties array instead.
customerCompanyName deprecated string nullable Deprecated. Use the Parties array instead.
customerId deprecated string nullable Deprecated. Use the Parties array instead.
customerName deprecated string nullable Deprecated. Use the Parties array instead.
customerFirstName deprecated string nullable Deprecated. Use the Parties array instead.
customerLastName deprecated string nullable Deprecated. Use the Parties array instead.
customerEmail deprecated string nullable Deprecated. Use the Parties array instead.
customerOrgNumber deprecated string nullable Deprecated. Use the Parties array instead.
customerPhoneNumber deprecated string nullable Deprecated. Use the Parties array instead.
customerVisitAddress deprecated string nullable Deprecated. Use the Parties array instead.
customerDetailedVisitAddress deprecated WebhookAddress nullable Deprecated. Use the Parties array instead.
customerSignatureImage deprecated string nullable Deprecated. Use the Parties array instead.
sellerEmail deprecated string nullable Deprecated. Use the Parties array instead.
sellerName deprecated string nullable Deprecated. Use the Parties array instead.
sellerPhoneNumber deprecated string nullable Deprecated. Use the Parties array instead.
templateId string nullable ID of the template used to create the document.
templateName string nullable Display name of the template used to create the document.
parties WebhookDocumentParty[] nullable All parties on the document (recipients, senders, CCs, approvers).
id string nullable Unique ID of the party record.
roles string[] nullable Roles assigned to this party, e.g. Recipient, Sender, CC.
title string nullable Professional title of the party.
name string nullable Full name of the party.
firstName string nullable First name of the party.
lastName string nullable Last name of the party.
email string nullable Email address of the party.
phoneNumber string nullable Phone number of the party.
companyName string nullable Company name of the party.
companyOrgNumber string nullable Organisation / company registration number.
address string nullable Postal address as a single string (legacy). Use DetailedAddress when available.
visitAddress string nullable Visit/delivery address as a single string (legacy). Use DetailedVisitAddress when available.
detailedAddress WebhookAddress nullable Structured postal address. Populated when an address with separate fields was stored.
streetAddress string nullable Street name and number.
zip string nullable Postal / ZIP code.
city string nullable City or town name.
detailedVisitAddress WebhookAddress nullable Structured visit/delivery address. Populated when an address with separate fields was stored.
streetAddress string nullable Street name and number.
zip string nullable Postal / ZIP code.
city string nullable City or town name.
electronicIdAccept WebhookElectronicIdAccept nullable Electronic ID verification data. Populated only when the party accepted via BankID or similar.
name string nullable Full name as returned by the electronic ID provider.
identityScheme string nullable Identity scheme used, e.g. no:bankid, se:bankid, dk:mitid.
issuedAt datetime UTC timestamp when the electronic ID assertion was issued.
dateOfBirth string nullable Date of birth returned by the electronic ID provider (format: YYYY-MM-DD).
acceptDate datetime nullable UTC timestamp when this party accepted/signed the document. Null if not yet accepted.
contractId string nullable Unique ID of the expiring document.
createdBy string nullable Email of the user who created the document.
dateSent datetime UTC timestamp when the document was originally sent.
validUntil datetime UTC date after which the document expires and can no longer be accepted.
contractNumber integer Auto-incremented sequential number for the document within the account.
contractTitle string nullable Title/name of the document.
externalReferenceId string nullable External reference ID set on the document (e.g. a CRM deal ID).
viewUrl string nullable URL where the recipient can view and accept the document.
Example payload
{ "eventType": "string", "webhookKey": "string", "templateId": "string", "templateName": "string", "parties": [ { "id": "string", "roles": [ "string" ], "title": "string", "name": "string", "firstName": "string", "lastName": "string", "email": "string", "phoneNumber": "string", "companyName": "string", "companyOrgNumber": "string", "address": "string", "visitAddress": "string", "detailedAddress": { "streetAddress": "string", "zip": "string", "city": "string" }, "detailedVisitAddress": { "streetAddress": "string", "zip": "string", "city": "string" }, "electronicIdAccept": { "name": "string", "identityScheme": "string", "issuedAt": "2025-01-15T12:00:00Z", "dateOfBirth": "string" }, "acceptDate": "2025-01-15T12:00:00Z" } ], "contractId": "string", "createdBy": "string", "dateSent": "2025-01-15T12:00:00Z", "validUntil": "2025-01-15T12:00:00Z", "contractNumber": 0, "contractTitle": "string", "externalReferenceId": "string", "viewUrl": "string" }

DocumentValidUntilChanged

Fired when the signing deadline date of a pending document is updated. Contains both the old and new deadline dates.

Fields

Field Type Description
eventType string nullable The event type name, e.g. DocumentSent, DocumentAccepted.
webhookKey string nullable The webhook subscription key, used to verify the request came from DealBuilder.
templateId string nullable ID of the template used to create the document.
templateName string nullable Display name of the template used to create the document.
documentId string nullable Unique ID of the document.
createdBy string nullable Email of the user who created and sent the document.
dateSent datetime UTC timestamp when the document was originally sent.
documentTitle string nullable Title/name of the document.
externalReferenceId string nullable External reference ID set on the document (e.g. a CRM deal ID).
viewUrl string nullable URL where the recipient can view the document.
customFields WebhookDocumentCustomField[] nullable Custom field values with type metadata, as defined on the document template.
id string nullable Id of the custom field as defined in the template.
description string nullable Description of the custom field as defined in the template.
typeId integer Numeric type identifier (e.g. 1 = text, 2 = date, 3 = dropdown).
typeName string nullable Human-readable type name, e.g. TextField, DateField, DropDown.
value string nullable The value entered for this custom field on the document.
parties WebhookDocumentParty[] nullable All parties on the document (recipients, senders, CCs, approvers).
id string nullable Unique ID of the party record.
roles string[] nullable Roles assigned to this party, e.g. Recipient, Sender, CC.
title string nullable Professional title of the party.
name string nullable Full name of the party.
firstName string nullable First name of the party.
lastName string nullable Last name of the party.
email string nullable Email address of the party.
phoneNumber string nullable Phone number of the party.
companyName string nullable Company name of the party.
companyOrgNumber string nullable Organisation / company registration number.
address string nullable Postal address as a single string (legacy). Use DetailedAddress when available.
visitAddress string nullable Visit/delivery address as a single string (legacy). Use DetailedVisitAddress when available.
detailedAddress WebhookAddress nullable Structured postal address. Populated when an address with separate fields was stored.
streetAddress string nullable Street name and number.
zip string nullable Postal / ZIP code.
city string nullable City or town name.
detailedVisitAddress WebhookAddress nullable Structured visit/delivery address. Populated when an address with separate fields was stored.
streetAddress string nullable Street name and number.
zip string nullable Postal / ZIP code.
city string nullable City or town name.
electronicIdAccept WebhookElectronicIdAccept nullable Electronic ID verification data. Populated only when the party accepted via BankID or similar.
name string nullable Full name as returned by the electronic ID provider.
identityScheme string nullable Identity scheme used, e.g. no:bankid, se:bankid, dk:mitid.
issuedAt datetime UTC timestamp when the electronic ID assertion was issued.
dateOfBirth string nullable Date of birth returned by the electronic ID provider (format: YYYY-MM-DD).
acceptDate datetime nullable UTC timestamp when this party accepted/signed the document. Null if not yet accepted.
validUntil datetime The new UTC expiry date.
previousValidUntil datetime The previous UTC expiry date before the change.
Example payload
{ "eventType": "string", "webhookKey": "string", "templateId": "string", "templateName": "string", "documentId": "string", "createdBy": "string", "dateSent": "2025-01-15T12:00:00Z", "documentTitle": "string", "externalReferenceId": "string", "viewUrl": "string", "customFields": [ { "id": "string", "description": "string", "typeId": 0, "typeName": "string", "value": "string" } ], "parties": [ { "id": "string", "roles": [ "string" ], "title": "string", "name": "string", "firstName": "string", "lastName": "string", "email": "string", "phoneNumber": "string", "companyName": "string", "companyOrgNumber": "string", "address": "string", "visitAddress": "string", "detailedAddress": { "streetAddress": "string", "zip": "string", "city": "string" }, "detailedVisitAddress": { "streetAddress": "string", "zip": "string", "city": "string" }, "electronicIdAccept": { "name": "string", "identityScheme": "string", "issuedAt": "2025-01-15T12:00:00Z", "dateOfBirth": "string" }, "acceptDate": "2025-01-15T12:00:00Z" } ], "validUntil": "2025-01-15T12:00:00Z", "previousValidUntil": "2025-01-15T12:00:00Z" }

DocumentOpened

Fired when a recipient opens a document via the email link or a direct URL.

Fields

Field Type Description
eventType string nullable The event type name, e.g. DocumentSent, DocumentAccepted.
webhookKey string nullable The webhook subscription key, used to verify the request came from DealBuilder.
customerAddress deprecated string nullable Deprecated. Use the Parties array instead.
customerDetailedAddress deprecated WebhookAddress nullable Deprecated. Use the Parties array instead.
customerCompanyName deprecated string nullable Deprecated. Use the Parties array instead.
customerId deprecated string nullable Deprecated. Use the Parties array instead.
customerName deprecated string nullable Deprecated. Use the Parties array instead.
customerFirstName deprecated string nullable Deprecated. Use the Parties array instead.
customerLastName deprecated string nullable Deprecated. Use the Parties array instead.
customerEmail deprecated string nullable Deprecated. Use the Parties array instead.
customerOrgNumber deprecated string nullable Deprecated. Use the Parties array instead.
customerPhoneNumber deprecated string nullable Deprecated. Use the Parties array instead.
customerVisitAddress deprecated string nullable Deprecated. Use the Parties array instead.
customerDetailedVisitAddress deprecated WebhookAddress nullable Deprecated. Use the Parties array instead.
customerSignatureImage deprecated string nullable Deprecated. Use the Parties array instead.
sellerEmail deprecated string nullable Deprecated. Use the Parties array instead.
sellerName deprecated string nullable Deprecated. Use the Parties array instead.
sellerPhoneNumber deprecated string nullable Deprecated. Use the Parties array instead.
templateId string nullable ID of the template used to create the document.
templateName string nullable Display name of the template used to create the document.
parties WebhookDocumentParty[] nullable All parties on the document (recipients, senders, CCs, approvers).
id string nullable Unique ID of the party record.
roles string[] nullable Roles assigned to this party, e.g. Recipient, Sender, CC.
title string nullable Professional title of the party.
name string nullable Full name of the party.
firstName string nullable First name of the party.
lastName string nullable Last name of the party.
email string nullable Email address of the party.
phoneNumber string nullable Phone number of the party.
companyName string nullable Company name of the party.
companyOrgNumber string nullable Organisation / company registration number.
address string nullable Postal address as a single string (legacy). Use DetailedAddress when available.
visitAddress string nullable Visit/delivery address as a single string (legacy). Use DetailedVisitAddress when available.
detailedAddress WebhookAddress nullable Structured postal address. Populated when an address with separate fields was stored.
streetAddress string nullable Street name and number.
zip string nullable Postal / ZIP code.
city string nullable City or town name.
detailedVisitAddress WebhookAddress nullable Structured visit/delivery address. Populated when an address with separate fields was stored.
streetAddress string nullable Street name and number.
zip string nullable Postal / ZIP code.
city string nullable City or town name.
electronicIdAccept WebhookElectronicIdAccept nullable Electronic ID verification data. Populated only when the party accepted via BankID or similar.
name string nullable Full name as returned by the electronic ID provider.
identityScheme string nullable Identity scheme used, e.g. no:bankid, se:bankid, dk:mitid.
issuedAt datetime UTC timestamp when the electronic ID assertion was issued.
dateOfBirth string nullable Date of birth returned by the electronic ID provider (format: YYYY-MM-DD).
acceptDate datetime nullable UTC timestamp when this party accepted/signed the document. Null if not yet accepted.
contractId string nullable Unique ID of the document on which the activity occurred.
createdBy string nullable Email of the user who created the document.
dateSent datetime UTC timestamp when the document was originally sent.
contractNumber integer Auto-incremented sequential number for the document within the account.
contractTitle string nullable Title/name of the document.
externalReferenceId string nullable External reference ID set on the document (e.g. a CRM deal ID).
activity WebhookActivity nullable Details of the specific activity that triggered this webhook.
readDate datetime nullable UTC timestamp when the activity occurred.
ip string nullable IP address of the actor.
userAgent string nullable Browser or client user-agent string of the actor.
eventString string nullable Human-readable description of the activity.
activityTypeId integer nullable Numeric ID for the activity type.
activityTypeName string nullable Name of the activity type, e.g. ContractOpenedViaEmail.
email string nullable Email address of the actor who triggered this activity.
Example payload
{ "eventType": "string", "webhookKey": "string", "templateId": "string", "templateName": "string", "parties": [ { "id": "string", "roles": [ "string" ], "title": "string", "name": "string", "firstName": "string", "lastName": "string", "email": "string", "phoneNumber": "string", "companyName": "string", "companyOrgNumber": "string", "address": "string", "visitAddress": "string", "detailedAddress": { "streetAddress": "string", "zip": "string", "city": "string" }, "detailedVisitAddress": { "streetAddress": "string", "zip": "string", "city": "string" }, "electronicIdAccept": { "name": "string", "identityScheme": "string", "issuedAt": "2025-01-15T12:00:00Z", "dateOfBirth": "string" }, "acceptDate": "2025-01-15T12:00:00Z" } ], "contractId": "string", "createdBy": "string", "dateSent": "2025-01-15T12:00:00Z", "contractNumber": 0, "contractTitle": "string", "externalReferenceId": "string", "activity": { "readDate": "2025-01-15T12:00:00Z", "ip": "string", "userAgent": "string", "eventString": "string", "activityTypeId": 0, "activityTypeName": "string", "email": "string" } }

DocumentAccepted

Fired when all required parties have accepted (signed) a document. Includes the signed PDF URL, totals, and full audit trail.

Fields

Field Type Description
eventType string nullable The event type name, e.g. DocumentSent, DocumentAccepted.
webhookKey string nullable The webhook subscription key, used to verify the request came from DealBuilder.
customerAddress deprecated string nullable Deprecated. Use the Parties array instead.
customerDetailedAddress deprecated WebhookAddress nullable Deprecated. Use the Parties array instead.
customerCompanyName deprecated string nullable Deprecated. Use the Parties array instead.
customerId deprecated string nullable Deprecated. Use the Parties array instead.
customerName deprecated string nullable Deprecated. Use the Parties array instead.
customerFirstName deprecated string nullable Deprecated. Use the Parties array instead.
customerLastName deprecated string nullable Deprecated. Use the Parties array instead.
customerEmail deprecated string nullable Deprecated. Use the Parties array instead.
customerOrgNumber deprecated string nullable Deprecated. Use the Parties array instead.
customerPhoneNumber deprecated string nullable Deprecated. Use the Parties array instead.
customerVisitAddress deprecated string nullable Deprecated. Use the Parties array instead.
customerDetailedVisitAddress deprecated WebhookAddress nullable Deprecated. Use the Parties array instead.
customerSignatureImage deprecated string nullable Deprecated. Use the Parties array instead.
sellerEmail deprecated string nullable Deprecated. Use the Parties array instead.
sellerName deprecated string nullable Deprecated. Use the Parties array instead.
sellerPhoneNumber deprecated string nullable Deprecated. Use the Parties array instead.
templateId string nullable ID of the template used to create the document.
templateName string nullable Display name of the template used to create the document.
parties WebhookDocumentParty[] nullable All parties on the document (recipients, senders, CCs, approvers).
id string nullable Unique ID of the party record.
roles string[] nullable Roles assigned to this party, e.g. Recipient, Sender, CC.
title string nullable Professional title of the party.
name string nullable Full name of the party.
firstName string nullable First name of the party.
lastName string nullable Last name of the party.
email string nullable Email address of the party.
phoneNumber string nullable Phone number of the party.
companyName string nullable Company name of the party.
companyOrgNumber string nullable Organisation / company registration number.
address string nullable Postal address as a single string (legacy). Use DetailedAddress when available.
visitAddress string nullable Visit/delivery address as a single string (legacy). Use DetailedVisitAddress when available.
detailedAddress WebhookAddress nullable Structured postal address. Populated when an address with separate fields was stored.
streetAddress string nullable Street name and number.
zip string nullable Postal / ZIP code.
city string nullable City or town name.
detailedVisitAddress WebhookAddress nullable Structured visit/delivery address. Populated when an address with separate fields was stored.
streetAddress string nullable Street name and number.
zip string nullable Postal / ZIP code.
city string nullable City or town name.
electronicIdAccept WebhookElectronicIdAccept nullable Electronic ID verification data. Populated only when the party accepted via BankID or similar.
name string nullable Full name as returned by the electronic ID provider.
identityScheme string nullable Identity scheme used, e.g. no:bankid, se:bankid, dk:mitid.
issuedAt datetime UTC timestamp when the electronic ID assertion was issued.
dateOfBirth string nullable Date of birth returned by the electronic ID provider (format: YYYY-MM-DD).
acceptDate datetime nullable UTC timestamp when this party accepted/signed the document. Null if not yet accepted.
id string nullable Unique ID of the accepted document.
createdBy string nullable Email of the user who originally created and sent the document.
accepted datetime UTC timestamp when the last required party accepted the document.
pdfUrl string nullable URL to download the signed PDF of the document.
contractNumber integer Auto-incremented sequential number for the document within the account.
contractTitle string nullable Title/name of the document.
totalStartup number Sum of all one-time (startup) order line values, before tax.
totalRecurring number Sum of all recurring order line values, before tax.
startupTax number Total tax amount on all one-time (startup) lines.
recurringTax number Total tax amount on all recurring lines.
totalCostRecurring number Total cost (purchase price) of all recurring lines.
totalCostStartup number Total cost (purchase price) of all one-time (startup) lines.
acceptedByIp string nullable IP address of the last party who accepted the document.
acceptedByEnvironment string nullable Browser/OS environment string of the last party who accepted.
externalReferenceId string nullable External reference ID set on the document (e.g. a CRM deal ID).
currency string nullable ISO 4217 currency code used on the document, e.g. NOK, EUR, USD.
activites WebhookActivity[] nullable Full audit trail of activity events on the document.
readDate datetime nullable UTC timestamp when the activity occurred.
ip string nullable IP address of the actor.
userAgent string nullable Browser or client user-agent string of the actor.
eventString string nullable Human-readable description of the activity.
activityTypeId integer nullable Numeric ID for the activity type.
activityTypeName string nullable Name of the activity type, e.g. ContractOpenedViaEmail.
email string nullable Email address of the actor who triggered this activity.
customFields deprecated string[] nullable Deprecated. Use WebhookCustomFields instead.
webhookCustomFields WebhookDocumentCustomField[] nullable Custom field values with type metadata, as defined on the document template.
id string nullable Id of the custom field as defined in the template.
description string nullable Description of the custom field as defined in the template.
typeId integer Numeric type identifier (e.g. 1 = text, 2 = date, 3 = dropdown).
typeName string nullable Human-readable type name, e.g. TextField, DateField, DropDown.
value string nullable The value entered for this custom field on the document.
orderLines WebhookDocumentOrderLine[] nullable All order lines (products/services) on the document.
id string nullable Unique identifier for the order line / product.
name string nullable Display name of the product or service.
description string nullable Longer description of the product or service.
tax number Tax percentage applied to this line (e.g. 25 for 25%).
value number Unit price before discount and tax.
taxValue number Calculated tax amount in currency units.
discount number Discount amount or percentage depending on DiscountInPercentage.
afterDiscount number Unit price after discount has been applied, before tax.
recurring boolean Whether this line is a recurring charge (true) or a one-time startup cost (false).
quantity integer Quantity of units on this line.
cost number Internal cost / purchase price of the product.
discountInPercentage boolean True if the discount is a percentage; false if it is an absolute amount.
productInternalId deprecated string nullable Deprecated. Use ProductExternalId instead.
productExternalId string nullable External product ID from an integrated system (e.g. ERP or CRM).
productInternalDescription string nullable Internal description / notes visible only within DealBuilder.
subOrderLines WebhookDocumentOrderLine[] nullable Child lines when this line is a product bundle.
Example payload
{ "eventType": "string", "webhookKey": "string", "templateId": "string", "templateName": "string", "parties": [ { "id": "string", "roles": [ "string" ], "title": "string", "name": "string", "firstName": "string", "lastName": "string", "email": "string", "phoneNumber": "string", "companyName": "string", "companyOrgNumber": "string", "address": "string", "visitAddress": "string", "detailedAddress": { "streetAddress": "string", "zip": "string", "city": "string" }, "detailedVisitAddress": { "streetAddress": "string", "zip": "string", "city": "string" }, "electronicIdAccept": { "name": "string", "identityScheme": "string", "issuedAt": "2025-01-15T12:00:00Z", "dateOfBirth": "string" }, "acceptDate": "2025-01-15T12:00:00Z" } ], "id": "string", "createdBy": "string", "accepted": "2025-01-15T12:00:00Z", "pdfUrl": "string", "contractNumber": 0, "contractTitle": "string", "totalStartup": 0, "totalRecurring": 0, "startupTax": 0, "recurringTax": 0, "totalCostRecurring": 0, "totalCostStartup": 0, "acceptedByIp": "string", "acceptedByEnvironment": "string", "externalReferenceId": "string", "currency": "string", "activites": [ { "readDate": "2025-01-15T12:00:00Z", "ip": "string", "userAgent": "string", "eventString": "string", "activityTypeId": 0, "activityTypeName": "string", "email": "string" } ], "customFields": { "key": "value" }, "webhookCustomFields": [ { "id": "string", "description": "string", "typeId": 0, "typeName": "string", "value": "string" } ], "orderLines": [ { "id": "string", "name": "string", "description": "string", "tax": 0, "value": 0, "taxValue": 0, "discount": 0, "afterDiscount": 0, "recurring": false, "quantity": 0, "cost": 0, "discountInPercentage": false, "productExternalId": "string", "productInternalDescription": "string", "subOrderLines": [] } ] }

DocumentAcceptedOrderLines

Fires once per order line when a document is accepted. Useful for pushing individual sales lines to external ERP or CRM systems.

Fields

Field Type Description
eventType string nullable The event type name, e.g. DocumentSent, DocumentAccepted.
webhookKey string nullable The webhook subscription key, used to verify the request came from DealBuilder.
customerAddress deprecated string nullable Deprecated. Use the Parties array instead.
customerDetailedAddress deprecated WebhookAddress nullable Deprecated. Use the Parties array instead.
customerCompanyName deprecated string nullable Deprecated. Use the Parties array instead.
customerId deprecated string nullable Deprecated. Use the Parties array instead.
customerName deprecated string nullable Deprecated. Use the Parties array instead.
customerFirstName deprecated string nullable Deprecated. Use the Parties array instead.
customerLastName deprecated string nullable Deprecated. Use the Parties array instead.
customerEmail deprecated string nullable Deprecated. Use the Parties array instead.
customerOrgNumber deprecated string nullable Deprecated. Use the Parties array instead.
customerPhoneNumber deprecated string nullable Deprecated. Use the Parties array instead.
customerVisitAddress deprecated string nullable Deprecated. Use the Parties array instead.
customerDetailedVisitAddress deprecated WebhookAddress nullable Deprecated. Use the Parties array instead.
customerSignatureImage deprecated string nullable Deprecated. Use the Parties array instead.
sellerEmail deprecated string nullable Deprecated. Use the Parties array instead.
sellerName deprecated string nullable Deprecated. Use the Parties array instead.
sellerPhoneNumber deprecated string nullable Deprecated. Use the Parties array instead.
templateId string nullable ID of the template used to create the document.
templateName string nullable Display name of the template used to create the document.
parties WebhookDocumentParty[] nullable All parties on the document (recipients, senders, CCs, approvers).
id string nullable Unique ID of the party record.
roles string[] nullable Roles assigned to this party, e.g. Recipient, Sender, CC.
title string nullable Professional title of the party.
name string nullable Full name of the party.
firstName string nullable First name of the party.
lastName string nullable Last name of the party.
email string nullable Email address of the party.
phoneNumber string nullable Phone number of the party.
companyName string nullable Company name of the party.
companyOrgNumber string nullable Organisation / company registration number.
address string nullable Postal address as a single string (legacy). Use DetailedAddress when available.
visitAddress string nullable Visit/delivery address as a single string (legacy). Use DetailedVisitAddress when available.
detailedAddress WebhookAddress nullable Structured postal address. Populated when an address with separate fields was stored.
streetAddress string nullable Street name and number.
zip string nullable Postal / ZIP code.
city string nullable City or town name.
detailedVisitAddress WebhookAddress nullable Structured visit/delivery address. Populated when an address with separate fields was stored.
streetAddress string nullable Street name and number.
zip string nullable Postal / ZIP code.
city string nullable City or town name.
electronicIdAccept WebhookElectronicIdAccept nullable Electronic ID verification data. Populated only when the party accepted via BankID or similar.
name string nullable Full name as returned by the electronic ID provider.
identityScheme string nullable Identity scheme used, e.g. no:bankid, se:bankid, dk:mitid.
issuedAt datetime UTC timestamp when the electronic ID assertion was issued.
dateOfBirth string nullable Date of birth returned by the electronic ID provider (format: YYYY-MM-DD).
acceptDate datetime nullable UTC timestamp when this party accepted/signed the document. Null if not yet accepted.
id string nullable Unique ID of the accepted document.
createdBy string nullable Email of the user who originally created and sent the document.
accepted datetime UTC timestamp when the document was accepted.
pdfUrl string nullable URL to download the signed PDF of the document.
signatureImage string nullable Base64-encoded signature image of the accepting party.
contractNumber integer Auto-incremented sequential number for the document within the account.
contractTitle string nullable Title/name of the document.
totalStartup number Sum of all one-time (startup) order line values, before tax.
totalRecurring number Sum of all recurring order line values, before tax.
startupTax number Total tax amount on all one-time (startup) lines.
recurringTax number Total tax amount on all recurring lines.
totalCostRecurring number Total cost (purchase price) of all recurring lines.
totalCostStartup number Total cost (purchase price) of all one-time (startup) lines.
externalReferenceId string nullable External reference ID set on the document (e.g. a CRM deal ID).
currency string nullable ISO 4217 currency code used on the document, e.g. NOK, EUR, USD.
orderLineDescription string nullable Description of this specific order line.
orderLineId string nullable ID of this specific order line.
orderLineName string nullable Name/title of this specific order line.
orderLineValue number Unit price of this order line before discount and tax.
orderLineDiscount number Discount amount applied to this order line.
orderLineAfterDiscount number Unit price of this order line after discount, before tax.
orderLineRecurring boolean Whether this order line is a recurring charge (true) or a one-time cost (false).
orderLineQuantity integer Quantity of units for this order line.
orderLineCost number Internal cost / purchase price of this order line.
customFields WebhookDocumentCustomField[] nullable Custom field values with type metadata, as defined on the document template.
id string nullable Id of the custom field as defined in the template.
description string nullable Description of the custom field as defined in the template.
typeId integer Numeric type identifier (e.g. 1 = text, 2 = date, 3 = dropdown).
typeName string nullable Human-readable type name, e.g. TextField, DateField, DropDown.
value string nullable The value entered for this custom field on the document.
Example payload
{ "eventType": "string", "webhookKey": "string", "templateId": "string", "templateName": "string", "parties": [ { "id": "string", "roles": [ "string" ], "title": "string", "name": "string", "firstName": "string", "lastName": "string", "email": "string", "phoneNumber": "string", "companyName": "string", "companyOrgNumber": "string", "address": "string", "visitAddress": "string", "detailedAddress": { "streetAddress": "string", "zip": "string", "city": "string" }, "detailedVisitAddress": { "streetAddress": "string", "zip": "string", "city": "string" }, "electronicIdAccept": { "name": "string", "identityScheme": "string", "issuedAt": "2025-01-15T12:00:00Z", "dateOfBirth": "string" }, "acceptDate": "2025-01-15T12:00:00Z" } ], "id": "string", "createdBy": "string", "accepted": "2025-01-15T12:00:00Z", "pdfUrl": "string", "signatureImage": "string", "contractNumber": 0, "contractTitle": "string", "totalStartup": 0, "totalRecurring": 0, "startupTax": 0, "recurringTax": 0, "totalCostRecurring": 0, "totalCostStartup": 0, "externalReferenceId": "string", "currency": "string", "orderLineDescription": "string", "orderLineId": "string", "orderLineName": "string", "orderLineValue": 0, "orderLineDiscount": 0, "orderLineAfterDiscount": 0, "orderLineRecurring": false, "orderLineQuantity": 0, "orderLineCost": 0, "customFields": [ { "id": "string", "description": "string", "typeId": 0, "typeName": "string", "value": "string" } ] }

PendingApproval

Fired when a document is submitted for internal approval and is waiting for an approver to review it.

Fields

Field Type Description
eventType string nullable The event type name, e.g. DocumentSent, DocumentAccepted.
webhookKey string nullable The webhook subscription key, used to verify the request came from DealBuilder.
customerAddress deprecated string nullable Deprecated. Use the Parties array instead.
customerDetailedAddress deprecated WebhookAddress nullable Deprecated. Use the Parties array instead.
customerCompanyName deprecated string nullable Deprecated. Use the Parties array instead.
customerId deprecated string nullable Deprecated. Use the Parties array instead.
customerName deprecated string nullable Deprecated. Use the Parties array instead.
customerFirstName deprecated string nullable Deprecated. Use the Parties array instead.
customerLastName deprecated string nullable Deprecated. Use the Parties array instead.
customerEmail deprecated string nullable Deprecated. Use the Parties array instead.
customerOrgNumber deprecated string nullable Deprecated. Use the Parties array instead.
customerPhoneNumber deprecated string nullable Deprecated. Use the Parties array instead.
customerVisitAddress deprecated string nullable Deprecated. Use the Parties array instead.
customerDetailedVisitAddress deprecated WebhookAddress nullable Deprecated. Use the Parties array instead.
customerSignatureImage deprecated string nullable Deprecated. Use the Parties array instead.
sellerEmail deprecated string nullable Deprecated. Use the Parties array instead.
sellerName deprecated string nullable Deprecated. Use the Parties array instead.
sellerPhoneNumber deprecated string nullable Deprecated. Use the Parties array instead.
templateId string nullable ID of the template used to create the document.
templateName string nullable Display name of the template used to create the document.
parties WebhookDocumentParty[] nullable All parties on the document (recipients, senders, CCs, approvers).
id string nullable Unique ID of the party record.
roles string[] nullable Roles assigned to this party, e.g. Recipient, Sender, CC.
title string nullable Professional title of the party.
name string nullable Full name of the party.
firstName string nullable First name of the party.
lastName string nullable Last name of the party.
email string nullable Email address of the party.
phoneNumber string nullable Phone number of the party.
companyName string nullable Company name of the party.
companyOrgNumber string nullable Organisation / company registration number.
address string nullable Postal address as a single string (legacy). Use DetailedAddress when available.
visitAddress string nullable Visit/delivery address as a single string (legacy). Use DetailedVisitAddress when available.
detailedAddress WebhookAddress nullable Structured postal address. Populated when an address with separate fields was stored.
streetAddress string nullable Street name and number.
zip string nullable Postal / ZIP code.
city string nullable City or town name.
detailedVisitAddress WebhookAddress nullable Structured visit/delivery address. Populated when an address with separate fields was stored.
streetAddress string nullable Street name and number.
zip string nullable Postal / ZIP code.
city string nullable City or town name.
electronicIdAccept WebhookElectronicIdAccept nullable Electronic ID verification data. Populated only when the party accepted via BankID or similar.
name string nullable Full name as returned by the electronic ID provider.
identityScheme string nullable Identity scheme used, e.g. no:bankid, se:bankid, dk:mitid.
issuedAt datetime UTC timestamp when the electronic ID assertion was issued.
dateOfBirth string nullable Date of birth returned by the electronic ID provider (format: YYYY-MM-DD).
acceptDate datetime nullable UTC timestamp when this party accepted/signed the document. Null if not yet accepted.
contractId string nullable Unique ID of the document awaiting approval.
createdBy string nullable Email of the user who created the document and requested approval.
dateSent datetime UTC timestamp when the document was submitted for approval.
validUntil datetime UTC date after which the document expires.
contractNumber integer Auto-incremented sequential number for the document within the account.
contractTitle string nullable Title/name of the document.
externalReferenceId string nullable External reference ID set on the document (e.g. a CRM deal ID).
approvers string[] nullable Email addresses of the users who are required to approve the document.
viewUrl string nullable URL where an approver can review and approve or reject the document.
Example payload
{ "eventType": "string", "webhookKey": "string", "templateId": "string", "templateName": "string", "parties": [ { "id": "string", "roles": [ "string" ], "title": "string", "name": "string", "firstName": "string", "lastName": "string", "email": "string", "phoneNumber": "string", "companyName": "string", "companyOrgNumber": "string", "address": "string", "visitAddress": "string", "detailedAddress": { "streetAddress": "string", "zip": "string", "city": "string" }, "detailedVisitAddress": { "streetAddress": "string", "zip": "string", "city": "string" }, "electronicIdAccept": { "name": "string", "identityScheme": "string", "issuedAt": "2025-01-15T12:00:00Z", "dateOfBirth": "string" }, "acceptDate": "2025-01-15T12:00:00Z" } ], "contractId": "string", "createdBy": "string", "dateSent": "2025-01-15T12:00:00Z", "validUntil": "2025-01-15T12:00:00Z", "contractNumber": 0, "contractTitle": "string", "externalReferenceId": "string", "approvers": [ "string" ], "viewUrl": "string" }