Developers - Webhooks
Webhooks provide a way for applications to interoperate that doesnt require interfacing with the API. Http endpoints (POST) can be setup in your applications that would be called by Velosity for various entities (Sales Quote, Sales Order, Production Order), when certain events happen. Example: A webhook could be setup to call your application when the Status of a Sales Order changes to RELEASED.
List
Add
From the list view, click on Add to create a new webhook. At this stage, you will only need to select the entity which is to be passed to your HTTP endpoint. The other properties will be set from the Edit view.
Detail
From the Detail view you can see the various properties of the webhook - as well as Edit, Duplicate, Logs and Test.
Entities & Events
- Sales Order - Status Change to RELEASED
How to Use
Using a webhook called by the Velosity application requires publically accessible host (from the internet). The endpoint should be using HTTPS (SSL) protocol. The endpoint listens and responds to a POST request. The POST data sent to this endpoint is a Velosity Sales Order in JSON format. Check the API documentation for more details about the JSON format for Sales Orders.
Example:
https://yourdomain/velosity/salesorder (POST)
Payload:
{
"salesOrderID": "AB194631-130F-4EA2-A7C9-345B2959C120",
"salesQuoteID": "",
"customer": {
"customerID": "D02B246F-4585-436C-A359-7D5257BC4642",
"customerNumber": "C123",
"customerName": "One Vision INC",
"address": "123 Any St",
"city": "Mountain View",
"state": "CA",
"postalCode": "77434",
"country": "US",
"paymentTerms": "US",
"grossMarginTarget": 20.0,
"notes": [],
"history": [],
"documents": [],
"lineItemTemplates": [],
},
"contacts": [],
"metaData": [],
"status": "DRAFT",
"number": "SO1000",
"description": "",
"purchaseOrder": "",
"discountPercent": 0.00000,
"paymentTerms": "",
"promiseDateUTC": "2024-09-21T23:41:13",
"statusDates": {
"DRAFT": {
"userID": "4617AD42-3F76-46F6-8FC8-B6A598F49C96",
"statusType": "DRAFT",
"createdUTC": "2024-09-11T23:41:12.6114369Z"
}
},
"lineItems": [],
"items": [],
"documents": [],
"history": [],
"notes": [],
"tags": [],
"changeOrders": []
}
Test - Beeceptor
You can test a webhook using Beeceptor: https://beeceptor.com/webhook-integration/
Setup the webhook in Velosity to point to the unique URL Beecepter generates. Use / for the Resource.