Webhooks

In this guide, we will look at how to register and consume webhooks to integrate your app with CollateralXP. With webhooks, your app can know when something happens in CollateralXP, such as someone assigns you to an order or adds a note for you.

Registering webhooks

The CollateralXP team which is responsible for your setup, will ask you in the proper time, to inform your webhook URL.

Then, whenever something of interest happens in the app, your webhooks is fired off by CollateralXP. In the next section, we'll look at how to consume webhooks.

Consuming webhooks

When your app receives a webhook request from CollateralXP, check the event attribute to see what event caused it. Then you can check the data attribute to see the event payload CollateralXP has sent to you.

Example webhook payload

{
  "event": "ordering::workflow::order_workflow::assigned",
  "data": {
    "vendor_id": "186d5e35-df0d-4611-aa77-f5942c9788f8",
    "product_ids": [
      "9e777f28-c2db-4e24-938e-87a51dcd7de3"
    ],
    "assignment_accepted_at": null
    "vendor_phone": "(111) 000-0000",
    // ...
  }
}

In the example above, ther order was assigned, and the payload event is a ordering::workflow::order_workflow::assigned.


Events

Order added

When a new order is placed

Example webhook payload

{
  "event": "ordering::workflow::order_workflow::added",
  "data": {
    "product_ids": ["fe398b5a-7125-4fc9-a3ec-99d90edc1d7d"],
    "vendor_phone": "(123) 999-0000",
    "address_resource": {
      "address_one": "2632 N M St",
      "address_two": "",
      "city": "Pensacola",
      "state": "Florida",
      "zip": "32501",
      "county": "Escambia County"
    },
    "address": "2632 N M St, Pensacola, FL 32501",
    "borrower_email": "borrower@example.com",
    "processors_emails": ["user@example.com"],
    "vendor_name": "John Doe",
    "lender_name": "Abc Bank",
    "loan_number": "11912",
    "file_number": "CXP-00000001",
    "payment_method": "invoice",
    "full_address": "2632 N M St, Pensacola, FL 32501",
    "order_id": "38a79d48-8b0d-4e47-8d31-75fa89765ab8c",
    "client_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "lender_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "created_at": "2023-04-14T15:19:21.752-03:00",
    "company_name": "Abc Bank",
    "contacts": {
      "borrower": {
        "name": "Adam Borrower",
        "email": "borrower@adamborrower.com",
        "phone": "(133) 999-0000"
      }
    }
  }
}

Order accepted

When the order was accepted

Example webhook payload

{
  "event": "ordering::workflow::order_workflow::accepted",
  "data": {
    "product_ids": ["fe398b5a-7125-4fc9-a3ec-99d90edc1d7d"],
    "products": ["1004"],
    "poc_phone": "+1 (123) 999-0000",
    "address_resource": {
      "address_one": "2632 N M St",
      "address_two": "",
      "city": "Pensacola",
      "state": "Florida",
      "zip": "32501",
      "county": "Escambia County"
    },
    "borrower_email": "borrower@example.com",
    "processors_emails": ["user@example.com"],
    "lender_name": "Abc Bank",
    "loan_number": "11912",
    "file_number": "CXP-00000001",
    "order_id": "38a79d48-8b0d-4e47-8d31-75fa89765ab8c",
    "client_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "lender_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "created_at": "2023-04-14T15:19:21.752-03:00",
    "borrower_phone": "Anna Bocchi",
    "company_name": "Abc Bank",
    "contacts": {
      "borrower": {
        "name": "Adam Borrower",
        "email": "borrower@adamborrower.com",
        "phone": "(133) 999-0000"
      }
    }
  }
}

Assigned

The order was assigned to a vendor.

Example webhook payload

{
  "event": "ordering::workflow::order_workflow::assigned",
  "data": {
    "vendor_id": "fc6230cb-55c4-43fb-acd0-442422212af3",
    "product_ids": [
      "fe398b5a-7125-4fc9-a3ec-99d90edc1d7d"
    ],
    "assignment_accepted_at": null,
    "vendor_phone": "(123) 000-0000",
    "address_resource": {
      "address_one": "7 Overlook Terrace",
      "address_two": null,
      "city": "Simsbury",
      "state": "Connecticut",
      "zip": "06070",
      "county": "Hartford County"
    },
    "address": "7 Overlook Terrace, Simsbury, CT 06070",
    "borrower_email": "borrower@email.com",
    "processors_emails": [
      "andre@noemail.com",
      "email@noemail.com"
    ],
    "vendor_name": "John Doe",
    "auto_reject_hours": 12,
    "fees": [
      {
        "fee": 1.0,
        "product_id": "fe398b5a-7125-4fc9-a3ec-99d90edc1d7d"
      }
    ],
    "vendor_license_number": "ABC0000",
    "vendor_license_type": "certified_general",
    "vendor_license_state": "CT",
    "vendor_license_expires_at": "2023-04-29T21:00:00.000-03:00",
    "order_id": "38a79d48-8b0d-4e47-8d31-75fa89765ab8c",
    "client_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "lender_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "created_at": "2023-04-14T15:19:21.752-03:00",
    "company_id": "d52663d2-54f2-4fd9-b515-e830de8e3888",
    "loan_officer_emails": ["kpolak@evaluationzone.com"],
    "contacts": {
      "borrower": {
        "name": "Adam Borrower",
        "email": "borrower@adamborrower.com",
        "emails": ["borrower@adamborrower.com"],
        "phone": "(133) 999-0000",
        "phones": ["(133) 999-0000"],
      },
      "vendor": {
        "name": "John Doe",
        "email": "john@doe.com",
        "emails": ["john@doe.com"],
        "phone": "(123) 000-0000",
        "phones": ["(123) 000-0000"],
        "license_number": "ABC0000"
      }
    }
  }
}

Assignment accepted

Vendor has accepted the assignment

Example webhook payload

{
  "event": "ordering::workflow::order_workflow::assignment_accepted",
  "data": {
    "vendor_id": "fc6230cb-55c4-43fb-acd0-442422212af3",
    "vendor_email": "vendor@example.com",
    "product_ids": ["fe398b5a-7125-4fc9-a3ec-99d90edc1d7d"],
    "assignment_accepted_at": "2023-04-14T15:01:49.471-03:00",
    "vendor_phone": "(123) 999-0000",
    "auto_accepted": false,
    "passthrough_model": false,
    "passthrough_integration": false,
    "address_resource": {
      "address_one": "2632 N M St",
      "address_two": "",
      "city": "Pensacola",
      "state": "Florida",
      "zip": "32501",
      "county": "Escambia County"
    },
    "address": "2632 N M St, Pensacola, FL 32501",
    "borrower_email": "borrower@example.com",
    "processors_emails": ["user@example.com"],
    "vendor_name": "John Doe",
    "lender_name": "Abc Bank",
    "loan_number": "11912",
    "file_number": "CXP-00000001",
    "order_id": "38a79d48-8b0d-4e47-8d31-75fa89765ab8c",
    "client_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "lender_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "created_at": "2023-04-14T15:19:21.752-03:00",
    "company_id": "d52663d2-54f2-4fd9-b515-e830de8e3888",
    "loan_officer_emails": ["kpolak@evaluationzone.com"],
    "contacts": {
      "borrower": {
        "name": "Adam Borrower",
        "email": "borrower@adamborrower.com",
        "emails": ["borrower@example.com"],
        "phone": "(133) 999-0000",
        "phones": ["(133) 999-0000"]
      },
      "vendor": {
        "name": "John Doe",
        "email": "john@doe.com",
        "emails": ["john@example.com"],
        "phone": "(123) 000-0000",
        "phones": ["(123) 000-0000"],
        "license_number": "ABC0000"
      }
    }
  }
}

Assignment conditions approved

When order assignment conditions were approved

Example webhook payload

{
  "event": "ordering::workflow::order_workflow::assignment_condition_approved",
  "data": {
    "vendor_id": "fc6230cb-55c4-43fb-acd0-442422212af3",
    "vendor_email": "vendor@example.com",
    "loan_officer_emails": ["loanofficer@example.com"],
    "passthrough_model": false,
    "passthrough_integration": false,
    "product_ids": ["fe398b5a-7125-4fc9-a3ec-99d90edc1d7d"],
    "assignment_accepted_at": "2023-04-14T15:19:21.752-03:00",
    "vendor_phone": "(123) 999-0000",
    "address_resource": {
      "address_one": "2632 N M St",
      "address_two": "",
      "city": "Pensacola",
      "state": "Florida",
      "zip": "32501",
      "county": "Escambia County"
    },
    "address": "2632 N M St, Pensacola, FL 32501",
    "borrower_email": "borrower@example.com",
    "processors_emails": ["user@example.com"],
    "vendor_name": "John Doe",
    "lender_name": "Abc Bank",
    "loan_number": "11912",
    "file_number": "CXP-00000001",
    "order_id": "38a79d48-8b0d-4e47-8d31-75fa89765ab8c",
    "client_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "lender_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "created_at": "2023-04-14T15:19:21.752-03:00",
    "company_id": "d52663d2-54f2-4fd9-b515-e830de8e3888",
    "contacts": {
      "borrower": {
        "name": "Adam Borrower",
        "email": "borrower@adamborrower.com",
        "emails": ["borrower@example.com"],
        "phone": "(133) 999-0000",
        "phones": ["(133) 999-0000"]
      },
      "vendor": {
        "name": "John Doe",
        "email": "john@doe.com",
        "emails": ["john@example.com"],
        "phone": "(123) 000-0000",
        "phones": ["(123) 000-0000"],
        "license_number": "ABC0000"
      }
    }
  }
}

Assignment conditions rejected

When order assignment conditions were rejected

Example webhook payload

{
  "event": "ordering::workflow::order_workflow::assignment_condition_rejected",
  "data": {
    "vendor_id": "fc6230cb-55c4-43fb-acd0-442422212af3",
    "order_id": "38a79d48-8b0d-4e47-8d31-75fa89765ab8c",
    "client_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "lender_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "created_at": "2023-04-14T15:19:21.752-03:00",
    "company_id": "d52663d2-54f2-4fd9-b515-e830de8e3888",
    "contacts": {
      "borrower": {
        "name": "Adam Borrower",
        "email": "borrower@adamborrower.com",
        "emails": ["borrower@example.com"],
        "phone": "(133) 999-0000",
        "phones": ["(133) 999-0000"]
      }
    }
  }
}

Inspection scheduled

The inspection has been scheduled

Example webhook payload

{
  "event": "ordering::workflow::assignment_workflow::inspection_scheduled",
  "data": {
    "inspection_scheduled_at": "2023-04-14T12:00:00.000-03:00",
    "order_id": "38a79d48-8b0d-4e47-8d31-75fa89765ab8c",
    "client_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "lender_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "created_at": "2023-04-14T15:19:21.752-03:00",
    "company_name": "Abc Bank",
    "contacts": {
      "borrower": {
        "name": "Adam Borrower",
        "email": "borrower@adamborrower.com",
        "emails": ["borrower@example.com"],
        "phone": "(133) 999-0000",
        "phones": ["(133) 999-0000"]
      },
      "vendor": {
        "name": "John Doe",
        "email": "john@doe.com",
        "emails": ["john@example.com"],
        "phone": "(123) 000-0000",
        "phones": ["(123) 000-0000"],
        "license_number": "ABC0000"
      }
    }
  }
}

Address Set

When the order address is updated.

Example webhook payload

{
  "event": "ordering::order_setup::address_set",
  "data": {
    "order_id": "7088e225-6b4a-4d69-a6c3-e2416948ac5e",
    "full_address": "6103 W Montrose Ave, Chicago, IL 60634",
    "street": "6103 W Montrose Ave",
    "city": "Chicago",
    "state": "IL",
    "county": "Cook County",
    "unit": "",
    "zip_code": "60634",
    "latitude": "41.9601032",
    "longitude": "-87.7799266",
  }
}

Inspection completed

The inspection has been completed

Example webhook payload

{
  "event": "ordering::workflow::assignment_workflow::inspection_completed",
  "data": {
    "inspection_completed_at": "2023-04-14T15:02:08.000-03:00",
    "order_id": "38a79d48-8b0d-4e47-8d31-75fa89765ab8c",
    "client_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "lender_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "created_at": "2023-04-14T15:19:21.752-03:00",
    "company_name": "Abc Bank",
    "contacts": {
      "borrower": {
        "name": "Adam Borrower",
        "email": "borrower@adamborrower.com",
        "emails": ["borrower@example.com"],
        "phone": "(133) 999-0000",
        "phones": ["(133) 999-0000"]
      },
      "vendor": {
        "name": "John Doe",
        "email": "john@doe.com",
        "emails": ["john@example.com"],
        "phone": "(123) 000-0000",
        "phones": ["(123) 000-0000"],
        "license_number": "ABC0000"
      }
    }
  }
}

Submission requested

Submission files were requested

Example webhook payload

{
  "event": "ordering::workflow::assignment_workflow::submitted",
  "data": {
    "loan_type": "conventional",
    "loan_number": "11912",
    "fha_case_number": "",
    "products": ["1004 CONV"],
    "files": [
      {
        "file_id": "1445a6f4-3648-42c6-b281-f1ed0a1d41c8",
        "file_type": "appraisal_xml",
        "product_id": "fe398b5a-7125-4fc9-a3ec-99d90edc1d7d",
        "attachment_resource": {
          "filename": "mismo.xml",
          "link": "http://app.collateralxp.com/mismo.xml"
        }
      }
    ],
    "order_id": "38a79d48-8b0d-4e47-8d31-75fa89765ab8c",
    "client_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "lender_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "created_at": "2023-04-14T15:19:21.752-03:00",
    "company_name": "Abc Bank",
    "appraised_value": 100000,
    "due_date": "2023-04-16T15:19:21.752-03:00",
    "contacts": {
      "borrower": {
        "name": "Adam Borrower",
        "email": "borrower@adamborrower.com",
        "phone": "(133) 999-0000"
      },
      "vendor": {
        "name": "John Doe",
        "email": "john@doe.com",
        "phone": "(123) 000-0000",
        "license_number": "ABC0000"
      }
    }
  }
}

Revision requested

When the order has a revision requested

Example webhook payload

{
  "event": "ordering::workflow::client_request_workflow::revision_asked",
  "data": {
    "content": "tedst",
    "order_id": "38a79d48-8b0d-4e47-8d31-75fa89765ab8c",
    "client_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "lender_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "created_at": "2023-04-14T15:19:21.752-03:00",
    "company_name": "Abc Bank",
    "contacts": {
      "borrower": {
        "name": "Adam Borrower",
        "email": "borrower@adamborrower.com",
        "phone": "(133) 999-0000"
      },
      "vendor": {
        "name": "John Doe",
        "email": "john@doe.com",
        "phone": "(123) 000-0000",
        "license_number": "ABC0000"
      }
    }
  }
}

QA revision requested

When the order has a QA revision asked

Example webhook payload

{
  "event": "ordering::workflow::quality_assurance_workflow::revision_asked",
  "data": {
    "content": "qa",
    "order_id": "38a79d48-8b0d-4e47-8d31-75fa89765ab8c",
    "client_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "lender_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "created_at": "2023-04-14T15:19:21.752-03:00",
    "company_name": "Abc Bank",
    "contacts": {
      "borrower": {
        "name": "Adam Borrower",
        "email": "borrower@adamborrower.com",
        "phone": "(133) 999-0000"
      },
      "vendor": {
        "name": "John Doe",
        "email": "john@doe.com",
        "phone": "(123) 000-0000",
        "license_number": "ABC0000"
      }
    }
  }
}

Revision requested from client

When the order has a revision requested from client

Example webhook payload

{
  "event": "ordering::workflow::client_request_workflow::revision_asked_from_client",
  "data": {
    "content": "tedst",
    "order_id": "38a79d48-8b0d-4e47-8d31-75fa89765ab8c",
    "client_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "lender_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "created_at": "2023-04-14T15:19:21.752-03:00",
    "company_name": "Abc Bank",
    "contacts": {
      "borrower": {
        "name": "Adam Borrower",
        "email": "borrower@adamborrower.com",
        "phone": "(133) 999-0000"
      },
      "vendor": {
        "name": "John Doe",
        "email": "john@doe.com",
        "phone": "(123) 000-0000",
        "license_number": "ABC0000"
      }
    }
  }
}

Completed

Order has been completed

Example webhook payload

{
  "event": "ordering::workflow::quality_assurance_workflow::completed",
  "data": {
    "files": [
      {
        "file_type": "appraiser_invoice",
        "attachment_resource": {
          "filename": "invoice.pdf",
          "content_type": "application/pdf",
          "byte_size": 139591,
          "checksum": "2KN+oaaAATpO61e9uhDFpQ==",
          "link": "http://app.collateralxp.com/invoice.pdf"
        }
      }
    ],
    "appraised_value": "0.0",
    "appraisal_effective_date": "2023-04-15",
    "appraisal_delivering_submission_id": "A0000110V",
    "freddie_mac_score": 8,
    "fannie_mae_score": 7.5,
    "completed_date": "2023-04-14",
    "products": ["1004 CONV"],
    "order_id": "38a79d48-8b0d-4e47-8d31-75fa89765ab8c",
    "client_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "lender_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "created_at": "2023-04-14T15:19:21.752-03:00",
    "due_date": "2023-04-15T15:19:21.752-03:00",
    "company_name": "Abc Bank",
    "contacts": {
      "borrower": {
        "name": "Adam Borrower",
        "email": "borrower@adamborrower.com",
        "phone": "(133) 999-0000"
      },
      "vendor": {
        "name": "John Doe",
        "email": "john@doe.com",
        "phone": "(123) 000-0000",
        "license_number": "ABC0000"
      }
    }
  }
}

Fulfilled

The order was fulfilled.

Example webhook payload

{
  "event": "ordering::workflow::client_request_workflow::fulfilled",
  "data": {
    "appraisal_delivering_submission_id": "A0000110V",
    "freddie_mac_score": 8,
    "fannie_mae_score": 7.5,
    "order_id": "38a79d48-8b0d-4e47-8d31-75fa89765ab8c",
    "client_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "lender_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "vendor_id": "fc6230cb-55c4-43fb-acd0-442422212af3",
    "created_at": "2023-04-14T15:19:21.752-03:00",
    "due_date": "2023-04-15T15:19:21.752-03:00",
    "company_name": "Abc Bank",
    "contacts": {
      "borrower": {
        "name": "Adam Borrower",
        "email": "borrower@adamborrower.com",
        "phone": "(133) 999-0000"
      },
      "vendor": {
        "name": "John Doe",
        "email": "john@doe.com",
        "phone": "(123) 000-0000",
        "license_number": "ABC0000"
      }
    },
    "products": ["1004 CONV"]
  }
}

Note added

The note was added to the order.

Example webhook payload

{
  "event": "ordering::note_added",
  "data": {
    "order_id": "38a79d48-8b0d-4e47-8d31-75fa89765ab8c",
    "author_name": "Andre Pereira",
    "subject": null,
    "from_workflow": false,
    "client_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "type": "vendor",
    "note_id": "c3c33d69-473a-4b05-b8df-a895394a342f",
    "content": " <br>  Inspection completed status updated by System.<br> <br>",
    "content_plain_text": "Inspection completed status updated by System.",
    "status_slug": "inspection_completed",
    "author_role": "staff",
    "author_email": "john@doe.com",
    "important": false,
    "note_added_at": "2025-11-25T14:30:21.000-03:00",
    "passthrough_model": false,
    "attachment_resources": [
      {
        "filename": "logo-test.svg",
        "key": "h1clz0cne3vc9hywtgpxn929rz60",
        "content_type": "image/svg+xml",
        "byte_size": 8568,
        "checksum": "GPRgd7clhrXGgnHB3yAIKQ==",
        "link": "http://app.collateralxp.com/logo-test.svg",
        "submission_file": false
      }
    ]
  }
}

Lifecycle note added

Notes generated by the system

Example webhook payload

{
  "event": "ordering::lifecycle_note_added",
  "data": {
    "order_id": "72636696-d58c-425b-884b-bd771f1e1d3d",
    "client_id": "5f188c48-0bd9-4416-9120-a907fecfd9cf",
    "type": "all_roles",
    "content": "In review status updated by System.",
    "note_id": "419be376-2a67-49e4-a17a-bfd2e77d5692",
    "subject": null,
    "author_name": "System",
    "author_role": null,
    "attachment_sgids": [],
    "from_workflow": false
  }
}

Note added (From integration)

The note was added to the order by some integration. BE CAREFUL WITH THIS EVENT, AS IT COULD EASILY CREATE CYCLIC NOTES CREATION IF THE NOTE CAME FROM YOUR INTEGRATION.

Example webhook payload

{
  "event": "ordering::note_added_from_integration",
  "data": {
    "order_id": "38a79d48-8b0d-4e47-8d31-75fa89765ab8c",
    "author_name": "Andre Pereira",
    "subject": null,
    "from_workflow": false,
    "client_id": "77cb42f8-8d31-4466-be83-30b29ba06253",
    "type": "vendor",
    "note_id": "c3c33d69-473a-4b05-b8df-a895394a342f",
    "content"=>" <br>  <br>  this is a note test <br> <br><br> <br>",
    "content_plain_text"=>"\n  this is a note test \n ",
    "author_role": "staff",
    "important": false,
    "status_slug": "pending_assignment",
    "attachment_sgids": [
      {
        "filename": "file.jpg",
        "key": "h1clz0cne3vc9hywtgpxn929rz60",
        "content_type": "image/jpeg",
        "byte_size": 108410,
        "checksum": "bSjL1dAw2aQq85H4/RiF0Q==",
        "link": "http://app.collateralxp.com/id.jpg",
        "submission_file": false
      }
    ]
  }
}

File added

A file was added to the order

Example webhook payload

{
  "event": "ordering::file_added",
  "data": {
    "file_id": "1445a6f4-3648-42c6-b281-f1ed0a1d41c8",
    "file_type": "appraiser_invoice",
    "filename": "invoice.pdf",
    "passthrough_model": false,
    "attachment_resource": {
      "filename": "invoice.pdf",
      "key": "h1clz0cne3vc9hywtgpxn929rz60",
      "content_type": "application/pdf",
      "byte_size": 139694,
      "checksum": "CDryWuA9onLnQ/4ItVWQDQ==",
      "link": "http://app.collateralxp.com/invoice.pdf",
      "submission_file": false
    },
    "order_id": "38a79d48-8b0d-4e47-8d31-75fa89765ab8c"
  }
}

Holded (it will be renamed to Held soon)

When something happens and all work should be paused, until the order is resumed.

Example webhook payload

{
  "event": "ordering::workflow::holded",
  "data": {
    "reason": "hold reason",
    "vendor_id": "814395f5-e672-4fd2-9ae0-a4b3cb55ddbe",
    "from_integration": false,
    "order_id": "7088e225-6b4a-4d69-a6c3-e2416948ac5e",
    "client_id": "5f188c48-0bd9-4416-9120-a907fecfd9cf",
    "lender_id": "5f188c48-0bd9-4416-9120-a907fecfd9cf",
    "company_id": "d52663d2-54f2-4fd9-b515-e830de8e3888",
    "created_at": "2025-11-25T15:14:11.728-03:00",
    "contacts": {
      "borrower": {
        "name": "John Doe",
        "emails": [
          "borrower@email.com"
        ],
        "email": "borrower@email.com",
        "phones": [
          "555-123-1234"
        ],
        "phone": "555-123-1234"
      },
      "vendor": {
        "name": "John Doe",
        "email": "john.doe@email.com",
        "phone": "(555) 123-1234",
        "license_number": null
      }
    }
  }
}

Resumed

When the order is resumed from a hold status.

Example webhook payload

{
  "event": "ordering::workflow::resumed",
  "data": {
    "vendor_id": "814395f5-e672-4fd2-9ae0-a4b3cb55ddbe",
    "from_integration": false,
    "order_id": "7088e225-6b4a-4d69-a6c3-e2416948ac5e",
    "client_id": "5f188c48-0bd9-4416-9120-a907fecfd9cf",
    "lender_id": "5f188c48-0bd9-4416-9120-a907fecfd9cf",
    "company_id": "d52663d2-54f2-4fd9-b515-e830de8e3888",
    "created_at": "2025-11-25T15:14:11.728-03:00",
    "contacts": {
      "borrower": {
        "name": "John Doe",
        "emails": ["borrower@email.com"],
        "email": "borrower@email.com",
        "phones": ["(555) 123-1234"],
        "phone": "(555) 123-1234"
      },
      "vendor": {
        "name": "John Doe",
        "email": "john.doe@email.com",
        "phone": "(555) 123-1234",
        "license_number": null
      }
    }
  }
}

Point of Contact Updated

Example webhook payload

{
  "event": "ordering::order_setup::point_of_contact_updated",
  "data": {
    "party_id": "4c289389-25b9-436e-8f29-29739bdb9735",
    "party_name": "John Doe",
    "phones": [
      "555-123-1234"
    ],
    "emails": [
      "borrower@email.com"
    ],
    "order_id": "7088e225-6b4a-4d69-a6c3-e2416948ac5e",
    "client_id": "5f188c48-0bd9-4416-9120-a907fecfd9cf",
    "lender_id": "5f188c48-0bd9-4416-9120-a907fecfd9cf",
    "company_id": "d52663d2-54f2-4fd9-b515-e830de8e3888",
    "created_at": "2025-11-25T15:14:11.728-03:00",
    "contacts": {
      "borrower": {
        "name": "John Doe",
        "emails": [
          "borrower@email.com"
        ],
        "email": "borrower@email.com",
        "phones": [
          "555-123-1234"
        ],
        "phone": "555-123-1234"
      },
      "vendor": {
        "name": "John Doe",
        "email": "john.doe@email.com",
        "phone": "(555) 123-1234",
        "license_number": null
      }
    }
  }
}

Assignment timed out

When the vendor does not accept the order in time.

Example webhook payload

{
  "event": "ordering::workflow::assignment_timed_out",
  "data": {
    "vendor_id": "814395f5-e672-4fd2-9ae0-a4b3cb55ddbe",
    "order_id": "7088e225-6b4a-4d69-a6c3-e2416948ac5e",
    "client_id": "5f188c48-0bd9-4416-9120-a907fecfd9cf",
    "lender_id": "5f188c48-0bd9-4416-9120-a907fecfd9cf",
    "company_id": "d52663d2-54f2-4fd9-b515-e830de8e3888",
    "created_at": "2025-11-25T12:14:11.000-06:00",
    "contacts": {
      "borrower": {
        "name": "John Doe",
        "emails": [
          "borrower@email.com"
        ],
        "email": "borrower@email.com",
        "phones": [
          "(555) 123-1234"
        ],
        "phone": "(555) 123-1234"
      },
      "vendor": {
        "name": "John Doe",
        "email": "john.doe@email.com",
        "phone": "(555) 123-1234",
        "license_number": null
      }
    }
  }
}

Payout completed

When a payout to the vendor is completed

Example webhook payload

{
  "event": "payouting::payout_completed",
  "data": {
    "payout_id": "dbabf37c-a38e-4982-b03d-3095f032cd27",
    "amount": 13,
    "check_number": "12345678",
    "completed_at": "2023-04-04T15:52:13.000-03:00",
    "vendor_id": "fc6230cb-55c4-43fb-acd0-442422212af3",
    "transfers": [{
      "amount": 1300,
      "order_id": "38a79d48-8b0d-4e47-8d31-75fa89765ab8c",
      "status": "due",
      "error": null,
      "scheduled_at": "2023-04-04T15:52:00.000-03:00",
      "fulfilled_at": null,
      "cancelled_at": null,
      "cancel_reason": null,
      "created_at": "2023-04-04T15:52:00.000-03:00",
      "id": null
    }]
  }
}

Terms changed

Order has changed its terms - due date and fees.

Example webhook payload

{
  "event": "ordering::order_terms_changed",
  "data": {
    "order_id": "72636696-d58c-425b-884b-bd771f1e1d3d",
    "old_data": {
      "due_date": "2025-12-05T20:59:59.000-03:00",
      "products": {
        "41efc469-eb78-4063-b63d-dfe57ddba976": "CONV CONDO (FNMA 1073)"
      },
      "paying_fee": "500.0",
      "product_ids": [
        "41efc469-eb78-4063-b63d-dfe57ddba976"
      ],
      "payouting_fee": "350.0",
      "vendor_due_date": "2025-12-04T20:59:59.000-03:00"
    },
    "new_data": {
      "due_date": "2025-12-05T20:59:59.000-03:00",
      "products": {
        "41efc469-eb78-4063-b63d-dfe57ddba976": "CONV CONDO (FNMA 1073)"
      },
      "paying_fee": "500.0",
      "product_ids": [
        "41efc469-eb78-4063-b63d-dfe57ddba976"
      ],
      "payouting_fee": "345.0",
      "vendor_due_date": "2025-12-03T20:59:59.000-03:00"
    },
    "skip_negotiation": true,
    "comments": "Avada Kedavra",
    // these two next params is deprecated and will be removed in the future
    "order_fee_items": [
      {
        "fee": "500.0",
        "product_id": "41efc469-eb78-4063-b63d-dfe57ddba976"
      }
    ],
    "vendor_fee_items": [
      {
        "fee": "345.0",
        "product_id": "41efc469-eb78-4063-b63d-dfe57ddba976"
      }
    ]
  }
}

Quality Assurance - Revision Asked

when the staff requires adjustments to the vendor submit

Example webhook payload

{
  "event": "ordering::workflow::quality_assurance_workflow::revision_asked",
  "data": {
    "content": "<div>test revision content</div>",
    "user_id": "fccbc598-cb8d-4b76-839b-3c2a16fb40d4",
    "order_id": "72636696-d58c-425b-884b-bd771f1e1d3d",
    "client_id": "5f188c48-0bd9-4416-9120-a907fecfd9cf",
    "lender_id": "5f188c48-0bd9-4416-9120-a907fecfd9cf",
    "company_id": "d52663d2-54f2-4fd9-b515-e830de8e3888",
    "created_at": "2025-11-25T12:23:26.000-03:00",
    "contacts": {
      "borrower": {
        "name": "John Doe",
        "emails": [
          "borrower@email.com"
        ],
        "email": "borrower@email.com",
        "phones": [
          "555-123-1234"
        ],
        "phone": "555-123-1234"
      },
      "vendor": {
        "name": "John Doe",
        "email": "john.doe@email.com",
        "phone": "(555) 123-1234",
        "license_number": null
      }
    }
  }
}

Unassigned

When the order is unassigned, meaning the old vendor is not responsible anymore

Example webhook payload

{
  "event": "ordering::workflow::unassigned",
  "data": {
    "vendor_id": "814395f5-e672-4fd2-9ae0-a4b3cb55ddbe",
    "from_integration": false,
    "product_ids": [
      "41efc469-eb78-4063-b63d-dfe57ddba976"
    ],
    "order_id": "7088e225-6b4a-4d69-a6c3-e2416948ac5e",
    "client_id": "5f188c48-0bd9-4416-9120-a907fecfd9cf",
    "lender_id": "5f188c48-0bd9-4416-9120-a907fecfd9cf",
    "company_id": "d52663d2-54f2-4fd9-b515-e830de8e3888",
    "created_at": "2025-11-25T15:14:11.000-03:00",
    "contacts": {
      "borrower": {
        "name": "John Doe",
        "emails": [],
        "email": null,
        "phones": [],
        "phone": null
      }
    }
  }
}

Canceled

Order canceled

Example webhook payload

{
  "event": "ordering::workflow::client_request_workflow::cancelled",
  "data": {
    "cancel_type": "cancel_only",
    "trip_fee": null,
    "cancel_reason": "Cancelled per client.",
    "order_id": "b40fbf84-5e1d-315a-8e9e-ad436a001dce",
    "client_id": "21649fb6-b51b-4220-a394-1f15a7a442d8",
    "lender_id": "21649fb6-123b-4e25-a594-1f15a7a442d8",
    "company_id": "d5263332-a122-4fd9-b515-e830de8e3888",
    "created_at": "2023-02-10T00:00:00.000-03:00",
    "contacts": {
      "borrower": {
        "name": "Jason Doe",
        "email": "jason@doe.com",
        "phone": "630-669-1234"
      },
      "vendor": {
        "name": "Matt Walking",
        "email": "matt@walking.com",
        "phone": "(123) 1123-4029",
        "license_number": "CP60500123"
      }
    },
    "vendor_id": "b40faf84-0e1d-4151-8e9e-ad436a001dce"
  }
}