This documentation covers the process of configuring webhooks within Decipher and the body structure of the webhooks sent by Decipher to your desired integration endpoints.
🧩 STEP 1: To configure webhooks, the first thing to do is to create New Credentials to connect them. If the other system uses “oauth” to authenticate the webhook coming from Decipher then credentials are needed. If not needed, skip to STEP 2.
To create credentials, Navigate to the Upper right corner in Decipher and Click on your profile icon and choose Account Settings.
Next, click on Credentials and then on "Create New".
⚠️ For a system that requires “oauth”, fill out the information for your credentials, select “Webhook oauth” from the Vendors dropdown and click on Connect.
For Salesforce, fill out the information for your credentials, select “Salesforce” from the Vendors drop-down and click on Connect.
🧩 STEP 2: In order to create your integration, click on your profile icon on the upper right-hand corner in Decipher and choose Integrations.
Next, Name it and choose a Type and a Vendor. Then click on Create.
To set up webhooks, choose the Event Type and add the URL, and the Method. Select the method based on your systems configuration or leave the method default to “GET”.
Different Integrations will open different custom fields. You can add all the fields you need. When everything is set up, click Create.
🔎 Now let’s look at the body structure of each webhook depending on the Event Type you chose.
Application Change Webhook
This webhook is fired every time there's a status change for every application which belongs to the account and contains the following information fields:
1. {
2. "account_id":"",
3. "created_at":"",
4. "updated_at":"",
5. "evaluated":"",
6. "credit_requested":"",
7. "fee_amount":"",
8. "advance_rate":"",
9. "interest_calculated":"",
10. "compounded_interest":"",
11. "processing_fee":"",
12. "origination_percentage":"",
13. "origination_paid_upfront":"",
14. "interest_rate_premium":"",
15. "credit_approved":"",
16. "completed":"",
17. "effective_date":"",
18. "proposal_date":"",
19. "proposal_expires":"",
20. "early_termination_fee":"",
21. "other_fee":"",
22. "updated_by_applicant_at":"",
23. "assigned_to":"",
24. "price_type":"",
25. "assigned_to_email":"",
26. "application_id":"",
27. "application_status":"",
28. "client_id":"",
29. "client_name":"",
30. "client_address":"",
31. "client_city":"",
32. "client_state":"",
33. "client_zip":"",
34. "client_phone":"",
35. "dot_number":"",
36. "tax_id":"",
37. "state_of_incorporation":"",
38. "date_of_incorporation":"",
39. "company_type":"",
40. "accounting_sync":"",
41. "dba":"",
42. "mc_number":"",
43. "client_assigned_to" => "",
44. "client_assigned_to_email" => "",
45. "primary_contact_id":"",
46. "primary_contact_name":"",
47. "primary_contact_first_name" => "",
48. "primary_contact_last_name" => "",
49. "primary_contact_email":"",
50. "product":"",
51. "tiers": [
52. {
53. "id": 1,
54. "number": 1,
55. "rate": "x%",
56. "days": x
57. },
58. {
59. "id": 2,
60. "number": 2,
61. "rate": "x%",
62. "days": x
63. }
64. ],
65. "price_based_on": "",
66. "ip_address": "x.x.x.x",
67. "application_started_from": "x"
Contact Update Webhook
This webhook is fired every time there's an update for every contact within an application which belongs to the account and contains the following information fields:
1 {
2 "name": "",
3 "last_name": "",
4 "title": "",
5 "created_at": "",
6 "updated_at": "",
7 "contact_id": ,
8 "contact_email": "",
9 "client_id": ,
10 "address": "",
11 "city": "",
12 "state": "",
13 "phone": "",
14 "mobile": "",
15 "website": "",
16 "postal_code": "",
17 "country": "",
18 "full_address": ", , , , "
19 }
Application Webhook
This webhook is fired every time there's an update for every application which belongs to the account and contains the following information fields:
1 {
2 "created_at": "",
3 "updated_at": "",
4 "tax_id": "",
5 "dba": "",
6 "mc_number": "",
7 "dot_number": "",
8 "company_type": "",
9 "client_id": ,
10 "client_company": "",
11 "assigned_to_user": ,
12 "client_name": "",
13 "mobile": "",
14 "address": "",
15 "city": "",
16 "state": "",
17 "country": "",
18 "postal_code": "",
19 "phone": "",
20 "assigned_to_email": "",
21 "email": "",
22 "first_name": "",
23 "last_name": "",
24 "Account_Number_cf": "",
25 "bank_name_cf": "",
26 "routing_number_cf": "",
27 "bank_acc_type_cf": "",
28 "bank_acc_owner_cf": ""
29 }