Developer Reference
Webhooks & Event Subscriptions
TackQuote emits real-time HTTP POST webhooks whenever quote states change. Subscribe your internal ERPs, CRMs, or custom microservices to quote events.
1. HMAC SHA-256 Signature Verification
Every webhook request includes an X-TackQuote-Signature header. Verify signature validity using your tenant's webhook signing secret:
const crypto = require('crypto');
function verifyWebhook(payloadBody, signatureHeader, secret) {
const hmac = crypto
.createHmac('sha256', secret)
.update(payloadBody, 'utf8')
.digest('hex');
return crypto.timingSafeEqual(
Buffer.from(signatureHeader),
Buffer.from(`sha256=${hmac}`)
);
}2. Supported Event Types
| Event Name | Description |
|---|---|
| quote.created | Emitted when a new quote draft is initialized by a sales rep or storefront RFQ. |
| quote.sent | Emitted when a quote digital proposal is dispatched to a buyer email address. |
| quote.viewed | Emitted when a buyer opens their interactive proposal portal link. |
| quote.negotiated | Emitted when a buyer requests custom line item quantity or pricing adjustments. |
| quote.signed | Emitted when a buyer signs the proposal with an ESIGN-compliant digital signature. |
| quote.accepted | Emitted when deposit payment or Net Terms credit checkout is completed. |