APIsWebhooksBGV Order Status Change

BGV Order Status Change Webhook Payload

This webhook is triggered when a BGV (Background Verification) order’s sub-orders status changes. You can track BGV status changes through this webhook payload.

Use this webhook to receive real-time status updates for individual sub-orders within a BGV order (SSN Trace, NatCrim, Sex Offender, Global Watchlist, ID Verification, etc.).

Webhook Event

Event Type: BGV_ORDER_STATUS_CHANGE

Payload

{
  "orderId": "61571280-6597-44c2-84a6-cb813d1c30d2",
  "externalCandidateId": "EXT123456",
  "subOrders": [
    {
      "subOrderId": "f1662894-cda6-424f-bc8f-4ccecea1201e",
      "subOrderProductType": "SSN_TRACE",
      "subOrderStatus": "COMPLETED"
    },
    {
      "subOrderId": "25822562-29d2-48eb-8252-6789d6d3bb2c",
      "subOrderProductType": "NATCRIM",
      "subOrderStatus": "IN_PROGRESS"
    },
    {
      "subOrderId": "1e900661-ac37-414a-96a0-0393ce352d64",
      "subOrderProductType": "SEX_OFFENDER",
      "subOrderStatus": "PENDING"
    }
  ]
}

Payload Fields

FieldTypeDescription
orderIdstringBGV order identifier
externalCandidateIdstringExternal candidate ID provided by client
subOrdersarrayArray of sub-order status updates

Sub-Order Fields

FieldTypeDescription
subOrderIdstringUnique identifier of the sub-order
subOrderProductTypeenumType of background check product
subOrderStatusenumCurrent status of the sub-order

Product Type Values

Product TypeDescription
SSN_TRACESocial Security Number Trace
NATCRIMNational Criminal Background Check
SEX_OFFENDERSex Offender Registry Check
GLOBAL_SECURITY_CHECKGlobal Security Check
ID_VERIFICATIONIdentity Verification
EDUCATION_VERIFICATIONEducation Verification
EMPLOYMENT_VERIFICATIONEmployment Verification
ADDRESS_VERIFICATIONAddress Verification
CRIMINALCriminal Background Check

Sub-Order Status Values

StatusDescription
PENDINGSub-order is pending processing
IN_PROGRESSSub-order is currently being processed
COMPLETEDSub-order has been completed successfully
NEED_INFOAdditional information is required
CANCELLEDSub-order has been cancelled
ERRORSub-order encountered an error

Example Webhook Handler

app.post('/webhook/bgv-order-status-change', (req, res) => {
  const { orderId, externalCandidateId, subOrders } = req.body;
  
  console.log('BGV Order Status Change:', {
    orderId,
    externalCandidateId,
    subOrdersCount: subOrders.length
  });
  
  // Process each sub-order status change
  subOrders.forEach(subOrder => {
    console.log(`Sub-order ${subOrder.subOrderId} (${subOrder.subOrderProductType}): ${subOrder.subOrderStatus}`);
    
    // Handle different status changes
    switch (subOrder.subOrderStatus) {
      case 'COMPLETED':
        // Handle completed sub-order
        break;
      case 'NEED_INFO':
        // Handle sub-order requiring additional information
        break;
      case 'IN_PROGRESS':
        // Handle sub-order in progress
        break;
    }
  });
  
  // Process the webhook data
  // Update your database, send notifications to relevant parties, etc.
  
  res.status(200).json({ received: true });
});