Quotation Webhooks
Please note that webhook payloads may differ from the API responses for the same entities. This is because webhooks often require less data to be sent, and therefore omit some fields.
Overview
- QUOTATION_CREATED
- QUOTATION_CONTENTS_UPDATED
- QUOTATION_STATUS_UPDATED
- QUOTATION_DELETED
Meta data
quotation_id
company_profile_id
mode
-> automatic / manual
Request body (methods with body)
id = timestamp + metadata.hashCode()
. This can be used to check if the webhook has already been processed.
timestamp = System.currentTimeMillis()
{
"id": 1608524826,
"timestamp": 1694531168,
"eventName": "QUOTATION_CREATED",
"payload": {
"id": "b454ac7c-beff-4c0a-b711-7cd2fba3ed78",
"quotation_number": 292,
"time_stamp": 1694531166145,
"expiration_time_stamp": 1697123166145,
"status": "CREATED",
"contact": {
"id": "e4e50748-b0bb-4f00-8d24-bf610a755f48",
"contact_info": {
"email": "jur@reuzenpanda.nl",
"first_name": "Jur",
"last_name": "Jansen",
"phone": "0612345678",
"address_street": "Stationsplein",
"address_number": "8",
"city": "Weert",
"postal_code": "6001 CH",
"country": "Nederland"
},
"audience": {
"id": "b2aa1603-d553-4a6c-a89b-be283706c1be",
"company_profile": {
"id": "02539024-03ad-4e10-a735-ea6eee1b5d0a"
}
},
"price_variables": {
"total_excl_vat": 100,
"total_incl_vat": 121
},
"products": [
{
"id": "5e5e9258-7058-41d1-a2c0-96a4e1168bcc",
"amount": 1,
"quotation_description": "Product description",
"description_variables": {
"description_variable_1": "Description variable 1"
},
"price_variables": {
"subtotal_incl_vat": 100,
"total_excl_vat": 100,
"vat_percentage": 21,
"total_incl_vat": 121,
"subtotal_excl_vat": 100
}
}
]
}
},
"metadata": {
"mode": "manual",
"quotation_id": "b454ac7c-beff-4c0a-b711-7cd2fba3ed78",
"company_profile_id": "02539024-03ad-4e10-a735-ea6eee1b5d0a"
}
}