SalesByte
Webhooks

Quote Checkout Webhook

This webhook is triggered by SalesByte whenever a quote is successfully checked out by a customer (signed or purchased). SalesByte will send a POST request containing detailed information about the checked-out quote to the configured webhook URL in your external system.

Configuration

  • URL: Configured by the user in SalesByte's integration settings
  • Method: POST

Purpose

To notify an external system in real-time when a SalesByte quote has been finalized by the customer.

Webhook Payload

SalesByte will send a JSON object in the request body containing detailed information about the checked-out quote.

{
  "id": 0,
  "quote_profile_name": "string",
  "customer_name": "string",
  "customer_first_name": "string | null",
  "customer_last_name": "string | null",
  "customer_company": "string | null",
  "customer_phone": "string | null",
  "customer_email": "string | null",
  "address_firstline": "string | null",
  "address_secondline": "string | null",
  "address_postcode": "string | null",
  "address_city": "string | null",
  "custom_fields": {
    "Custom Field Label 1": "value",
    "Custom Field Label 2": "value"
  },
  "quote_value": "numeric | null",
  "created_at": "string",
  "updated_at": "string",
  "salesperson": {
    "name": "string",
    "email": "string"
  },
  "is_signed": true,
  "is_fully_signed": true,
  "requires_more_signatures": true,
  "is_project_approval_pending": true,
  "is_project_approval_signed": true,
  "signed_offer": {
    "main_document_name": "string",
    "main_document_url": "string",
    "extra_documents": [
      {
        "name": "string",
        "pdf_url": "string"
      }
    ]
  },
  "signed_products": {
    "original_price_including_vat": "numeric",
    "price_including_vat": "numeric",
    "discount_including_vat": "numeric",
    "currency": "string",
    "products": [
      {
        "sku": "string | null",
        "amount": "numeric",
        "url": "string | null",
        "name": "string",
        "original_price_including_vat": "numeric",
        "price_including_vat": "numeric",
        "original_sum_including_vat": "numeric",
        "sum_including_vat": "numeric",
        "currency": "string",
        "price_unit": "string | null"
      }
    ]
  },
  "additional_documents_signed": [
    {
      "name": "string",
      "url": "string"
    }
  ],
  "additional_documents_requiring_signature": [
    {
      "name": "string",
      "url": "string"
    }
  ],
  "statuses": ["string"],
  "links": {
    "edit": "string",
    "customer_view": "string",
    "customer_verificate": "string",
    "customer_project_approval": "string"
  }
}

Payload Fields

Basic Information

FieldTypeDescription
idintegerThe unique ID of the quote
quote_profile_namestringThe name of the quote profile used
quote_valuenumeric | nullThe total value of the quote
created_atstringTimestamp when quote was created (ISO 8601)
updated_atstringTimestamp when quote was last updated (ISO 8601)

Customer Information

FieldTypeDescription
customer_namestringThe full name of the customer
customer_first_namestring | nullFirst name of the customer
customer_last_namestring | nullLast name of the customer
customer_companystring | nullCustomer's company name
customer_phonestring | nullCustomer's phone number
customer_emailstring | nullCustomer's email address

Address Information

FieldTypeDescription
address_firstlinestring | nullFirst line of verified address
address_secondlinestring | nullSecond line of verified address
address_postcodestring | nullPostcode of verified address
address_citystring | nullCity of verified address

Salesperson Information

FieldTypeDescription
salesperson.namestringName of the assigned salesperson
salesperson.emailstringEmail of the assigned salesperson

Signature Status

FieldTypeDescription
is_signedbooleanQuote has at least one signature
is_fully_signedbooleanAll required signatures collected
requires_more_signaturesbooleanMore signatures still needed
is_project_approval_pendingbooleanProject approval is pending
is_project_approval_signedbooleanProject approval has been signed

Signed Offer

The signed_offer object contains details about the signed quote option (if applicable):

FieldTypeDescription
main_document_namestringName of the main document
main_document_urlstringURL to the main signed document PDF
extra_documentsarrayAdditional documents included in the signed offer

Signed Products

The signed_products object contains details of signed products if the quote is product-based:

FieldTypeDescription
original_price_including_vatnumericOriginal total price including VAT
price_including_vatnumericFinal total price including VAT
discount_including_vatnumericTotal discount including VAT
currencystringCurrency of the product prices
productsarrayArray of signed product details

Product Object Fields

FieldTypeDescription
skustring | nullProduct SKU
amountnumericAmount of the product
urlstring | nullURL related to the product
namestringProduct name
original_price_including_vatnumericOriginal price including VAT per unit
price_including_vatnumericFinal price including VAT per unit
original_sum_including_vatnumericOriginal total sum including VAT
sum_including_vatnumericFinal total sum including VAT
currencystringCurrency of the product
price_unitstring | nullPrice unit (e.g., "pcs")

Custom Fields

The custom_fields object contains data from custom fields, mapped by label. Up to 10 custom fields that are not disabled will be included.

FieldDescription
links.editURL to edit the quote
links.customer_viewURL for customer to view the quote
links.customer_verificateURL for customer verification
links.customer_project_approvalURL for customer project approval

Expected Response

Your external system should respond with an HTTP status code of 200 OK to acknowledge successful receipt of the data.

Any other status code (e.g., 400, 500) will indicate to SalesByte that the delivery failed, and SalesByte may attempt to retry the webhook delivery according to its internal retry policy.

The response body is typically ignored by SalesByte.

On this page