Webhook event types

A list of Check supported webhook events

Check-Topic header

Each webhook request has a Check-Topic header that represents which type of API event the webhook is associated with.

TopicDescription
payrollAny payroll lifecycle event
company_tax_documentAny company tax document event
company_authorization_documentAny company authorization document event
employee_tax_documentAny employee tax document event
contractor_tax_documentAny contractor tax document event
setup_documentAny setup document event
bank_accountAny bank account event
benefitAny benefit event
company_benefitAny company benefit event
post_tax_deductionAny post-tax deduction event
companyAny company event
company_terminatedAny company termination event
employeeAny employee event
contractorAny contractor event
workplaceAny workplace event
earning_codeAny earning code event
paymentAny payment status change event
federal_ein_verificationAny federal EIN verification change event
requirementAny Requirements API events
company_processing_statusAny company processing status change event
pay_scheduleAny pay schedule event
earning_rateAny earning rate event
[deprecating soon] tax_filingAny tax filing event
company_filingAny company filing event
tax_packageAny tax package event
net_pay_splitAny net pay split event
integration_accessAny integration access event
enrollment_profileAny enrollment profile event
setupAny setup event
fulfillmentAny fulfillment event
notificationAny notification event
correctionAny correction event
employee_tax_statement_overrideAny employee tax statement override event

Payroll Events

EventDescription
createdA payroll was created
deletedA payroll was deleted
updatedA payroll was updated Note: This event is available in API version 2025-01-01 or later.
status_changeA payroll instance's status changes (for example, a payroll moves from pending to processing). Note: This event was deprecated in API version 2025-01-01.

Example webhook event payload

{
    "event": "created",
    "data": {
        "id": "pay_Z26PNMC7Ky1wfFQzVqfF",
        "company": "com_sx3svU6K8c5ZkSFlOh5p",
        "period_start": "2019-06-16",
        "period_end": "2019-06-29",
        "approval_deadline": "2019-07-02T00:00:00.000000Z",
        "approved_at": "2019-06-29T18:26:56.848920Z",
        "payday": "2019-07-05",
        "status": "paid",
        "type": "regular",
        ... // remainder of payroll data
}

More detail on the Payroll object.

Document Events

These events apply to employee, company, and contractor document resources.

EventDescription
createdA document was created (For example, this could be triggered when an employee submits a document through Check Onboard)
deletedA document was deleted

Example webhook event payload
Here is an example webhook event payload for an employee tax document:

{
    "event": "created",
    "data": {
        "id": "doc_oSFuU4veTPqG8KRGAINc", 
        "year": 2021,
        "category": "employee_tax_document",
        "label": "Federal W-4", 
        "employee": "emp_jMjjmrBTSNzBCG1kRkh9", 
        "filed_on": "2021-02-18", 
        "jurisdiction": "FED"
    }
}

More detail on the Document object (and the various document categories).

Bank Account Events

EventDescription
createdA bank account was created
updatedA bank account was updated
deletedA bank account was deleted

Example webhook event payload

{
    "event": "created",
    "data": {
        "id": "bnk_BcuzUyfy6Rt2Woa6TAHz",
        "company": "com_cHVEOcdE6bzMiBxpOzTQ",
        "status": "ownership_verified",
        "disabled_reason": null,
        "plaid_bank_account": {
            "name": "Plaid Checking",
            "plaid_public_token": "public-sandbox-023e3f0d-bcd8-46ee-b1dd-fcb67bcb4372",
            "institution_name": "Chase",
            "mask": "0000",
            "type": "depository",
            "subtype": "checking",
            "verified": true,
            "microdeposit_verification_status": null
        }
    }
}

More detail on the Bank Account object.

Benefit Events

EventDescription
createdA benefit was created
updatedA benefit was updated
deletedA benefit was deleted

Example webhook event payload

{
    "event": "created",
    "data": {
        "id": "ben_x3BTJJjgRCHDRTffYUAJ",
        "benefit": "401k",
        "company_benefit": null,
        "employee": "emp_SXRWvWC6TYtZLHpCYxOi",
        "description": "Retirement",
        "effective_end": null,
        "effective_start": "2021-03-26",
        "hsa_contribution_limit": null,
        "company_contribution_amount": "1.00",
        "company_contribution_percent": null,
        "employee_contribution_amount": "1.00",
        "employee_contribution_percent": null
    },
}

More detail on the Benefit object.

Company Benefit Events

EventDescription
createdA company benefit was created
updatedA company benefit was updated
deletedA company benefit was deleted

Example webhook event payload

{
    "event": "created",
    "data": {
        "id": "cbn_lrcYUhTk1FVZl2vSCOBP",
        "benefit": "401k",
        "company": "com_kKTK4VafMNc5pIbI0G9x",
        "description": "Guideline 401(k)",
        "effective_end": null,
        "effective_start": "2021-03-26",
        "company_contribution_amount": "1.00",
        "company_contribution_percent": null,
        "employee_contribution_amount": "1.00",
        "employee_contribution_percent": null
    },
}

More detail on the The company benefit object.

Post-Tax Deduction Events

EventDescription
createdA post tax deduction was created
updatedA post tax deduction was updated
deletedA post tax deduction was deleted

Example webhook event payload

{
    "event": "created",
    "data": {
        "id": "ptd_g4AGCxtz8VakIL4PmZ0r",
        "type": "miscellaneous",
        "employee": "emp_bvNhcPxrbvRqgyCrlUcj",
        "description": "Union dues",
        "effective_start": "2020-01-01",
        "effective_end": null,
        "miscellaneous": {
            "amount": "10.00",
            "percent": null,
            "total_amount": "50.00"
        }
    }
}

More detail on the Post-Tax Deduction object.

Company Events

EventDescription
createdA company was created
updatedA company was updated

Example webhook event payload

{
    "event": "created",
    "data": {
        "id": "com_sx3svU6K8c5ZkSFlOh5p",
        "legal_name": "Stark Industries, Inc.",
        "trade_name": "Stark Industries",
        "email": "[email protected]",
        "phone": "5551234567",
        "pay_frequency": "biweekly",
        ... // remainder of company object
    }
}

Company Terminated Events

EventDescription
createdA company termination was created

Check sends this event once, when a company's termination is recorded. Check does not send another termination event when a termination is later changed.

Terminated company payload fields

AttributeDescription
companyPublic ID of the terminated company.
effectively_terminated_atWhen the company was effectively terminated.
churn_reasonVoluntary termination reason. null when the termination was involuntary.
involuntary_termination_reasonInvoluntary termination reason. null when the termination was voluntary.

Exactly one of churn_reason or involuntary_termination_reason is non-null.

Partner-selectable involuntary values are customer_not_paying_partner and chargeback. The voluntary churn_reason value price indicates the employer left due to pricing.

Webhook payloads may include other involuntary_termination_reason values when Check initiates the termination (for example compliance_risk or funding_failure_strikes). Treat both reason fields as open enums and tolerate unknown values.

Example voluntary termination event payload

{
  "event": "created",
  "data": {
    "company": "com_123",
    "effectively_terminated_at": "2023-02-02T00:00:00Z",
    "churn_reason": "price",
    "involuntary_termination_reason": null
  }
}

Example involuntary termination event payload

{
  "event": "created",
  "data": {
    "company": "com_123",
    "effectively_terminated_at": "2023-02-02T00:00:00Z",
    "churn_reason": null,
    "involuntary_termination_reason": "chargeback"
  }
}

More detail on the Company object.

Employee Events

EventDescription
createdAn employee was created
updatedAn employee was updated
deletedAn employee was deleted

Employees can be terminated by setting the termination_date in the API request, and we will receive an updated webhook with the updated parameters.

Example webhook event payload for an employee

{
    "event": "created",
    "data": {
        "id": "emp_zGGp6wYcxAeu1Ng8IA7v",
        "first_name": "Tony",
        "last_name": "Stark",
        "middle_name": null,
        "email": "[email protected]",
        "dob": "1970-05-29",
        ... // remainder of employee object
    }
}

More detail on the Employee object.

Contractor Events

EventDescription
createdA contractor was created
updatedA contractor was updated
deletedA contractor was deleted

Contractors can be terminated by setting the termination_date in the API request, and we will receive an updated webhook with the updated parameters.

Example webhook event payload for a contractor

{
    "event": "created",
    "data": {
        "id": "ctr_CyQIKSp6YvU6mBe2a6iq",
        "type": "individual",
        "company": "com_EkIJ9RewumnQLODHv1vl",
        "first_name": "Bruce",
        "middle_name": "Frederick Joseph",
        "last_name": "Springsteen",
        "business_name": null,
        "email": "[email protected]",
        ... // remainder of contractor object
    }
}

More detail on the Contractor object.

Workplace Events

EventDescription
createdA workplace was created
updatedA workplace was updated
deletedA workplace was deleted

Example webhook event payload for a workplace

{
    "event": "created",
    "data": {
        "id": "wrk_oRgjEaRycoCPuS5TqVkm",
        "name": "New York Office",
        "address": {
            "line1": "200 Park Ave",
            "line2": null,
            "city": "New York",
            "state": "NY",
            "postal_code": "10166",
            "country": "US"
        },
        "company": "com_P7JPeBhb8hH23iiReDQ5"
    }
}

More detail on the Workplace object.

Earning Code Events

EventDescription
createdAn earning code was created
updatedAn earning code was updated
deletedAn earning code was deleted

Example webhook event payload for an earning code

{
  "event": "created",
  "data": {
    "id": "erc_IR4KiBBB2E6YD2cZjOyn",
    "name": "Sales Commission",
    "type": "commission",
    "company": "com_ccGeW0Etf1UGNPBgQ1Xl"
  }
}

More detail on the Earning Code object.

Payments Webhooks

EventDescription
status_changeA payment status has changed to a non-draft state (processing, paid, failed, refunded)

Example webhook event payload for a payment status update

{
  "event": "status_change",
  "data": {
    "id": "pyt_vIFHhvyGN47ej1upyIT8",
    "status": "paid",
    "amount": "4522.0400",
    "type": "company_cash_requirement",
    "parent_type": "payroll",
    "parent_id": "pay_ENA4k8LMHbgpV07GLGSv",
    "payment_attempts": ...
}

More detail on the Payments object

Federal EIN Verification Events

EventDescription
createdA federal EIN verification was created
updatedA federal EIN verification was updated

Example webhook event payload for a federal EIN verification

{
  "event": "created",
  "data": {
    "id": "fev_D3FeAyR6Ao3LZiO3j6d2",
    "company": "com_097YZQgrXZQb8VHtI76S",
    "legal_name": "Stark Industries, Inc.",
    "federal_ein": "12-3456785",
    "status": "processing",
    "start_time": "2022-07-11T19:37:31.589206Z",
    "end_time": null
  }
}

Requirement Events

EventDescription
createdA requirement was created
updatedA requirement was updated
deletedA requirement was deleted

Example requirement event payload for a requirement update

{
  "event": "updated",
  "data": {
    "id": "req_D3FeAyR6Ao3LZiO3j6d2",
    "company": "com_097YZQgrXZQb8VHtI76S",
    "requirement": "signatory_identity_verification",
    "categories": ["company_provided_documents"],
    "status": "pending",
    "errors": [],
    "guidance": {
        "document_options": [{
            "name": "signatory_photo_id", 
            "label": "Non-expired government-issued photo ID for authorized signer",
        }],   
    },
  }
}

Company Processing Status Events

EventDescription
status_changeA company's processing period or ability changes. For example, a company on three-day processing is upgraded to two-day processing after demonstrating continuous creditworthiness, or a company is exited.
🚧

Note on applicability of Company Processing Status events

The Company Processing Status webhooks only apply to cases where a company is automatically graduated to accelerated processing or downgraded to 3-day processing by Check’s Graduation and Downgrade & Exit policy.

To capture all processing period changes, please refer to the Company webhook event type.

Example webhook event for a company graduated to two-day processing

{
  "event": "status_change",
  "data": {
    "id": "com_sx3svU6K8c5ZkSFlOh5p",
    "legal_name": "Stark Industries, Inc.",
    "implementation": {
      "status": "completed",
      "remaining_steps": {
        "kyb": {
          "status": "two_day_approved"
        }
      }
    },
    "processing_period": "two_day",
    ... // remainder of company object
  }
}

Example webhook event for a company downgraded from two-day to three-day processing

{
  "event": "status_change",
  "data": {
    "id": "com_sx3svU6K8c5ZkSFlOh5p",
    "legal_name": "Stark Industries, Inc.",
    "implementation": {
      "status": "completed",
      "remaining_steps": {
        "kyb": {
          "status": "four_day_approved"
        }
      }
    },
    "processing_period": "three_day",
    ... // remainder of company object
  }
}

Example webhook event for a company whose KYB status is set to denied after repeated funding failures

{
  "event": "status_change",
  "data": {
    "id": "com_sx3svU6K8c5ZkSFlOh5p",
    "legal_name": "Stark Industries, Inc.",
    "implementation": {
      "status": "completed",
      "remaining_steps": {
        "kyb": {
          "status": "denied"
        }
      }
    },
    "processing_period": "three_day",
    ... // remainder of company object
  }
}

Pay Schedule Events

EventDescription
createdA pay schedule was created
updatedA pay schedule was updated
deletedA pay schedule was deleted

Example webhook event payload for a pay schedule creation

{
  "event": "created",
  "data": {
    "id": "psc_KpOEeeH3kWMrxyzffjcn",
    "company": "com_FeToKDOuUyvQrQADcY2u",
    "name": "Test Schedule",
    "pay_frequency": "biweekly",
    "first_payday": "2021-04-16",
    "second_payday": null,
    "first_period_end": "2021-04-12",
    "metadata": {}
  }
}

Earning Rate Events

EventDescription
createdAn earning rate was created
updatedAn earning rate was updated

Example webhook event payload for an earning rate creation

{
  "event": "created",
  "data": {
    "id": "rte_aOSqW0QTKcE1iVU1C5",
    "amount": "11.25",
    "period": "hourly",
    "employee": "emp_aslkj192j3laksdj",
    "name": "Dishwasher Weekend Rate",
    "active": true,
    "metadata": {}
  }
}

[Deprecating Soon] Tax Filing Event

EventDescription
createdA tax filing was created
updatedA tax filing was updated
status_changeThe status of a tax filing has changed
deletedA tax filing has been deleted

Example webhook event payload for a tax filing

{
  "event": "created",
  "data": {
    "id": "flg_GaeJoEAzbqqc2D9GMfOF",
    "company": "com_vIFHhvyGN47ej1upyIT8",
    "year": 2023,
    "description": "Michigan State Unemployment Tax",  
    "frequency": "quarterly",
    "period": "q2",
    "status": "filed",
    "can_retry": false,
    "tax_filing_events": [
      {
        "id": "fev_jIFHhvyGN47ej1upyIT8",
        "tax_filing": "flg_jIFHhvyGN47ej1upyIT8",
        "status": "filed",
        "created_at": "2023-04-12T21:32:44.957364Z",
        "category": null,
        "label": null,
        "account_number": "123456789",
      },
      {
        "id": "fev_jupyIT8upyIT8upyIT87",
        "tax_filing": "flg_jIFHhvyGN47ej1upyIT8",
        "status": "submitted",
        "created_at": "2023-04-12T21:32:44.957364Z",
        "category": null,
        "label": null,
        "account_number": "123456789",
      },
      {
        "id": "fev_jHhvyHhvyHhvyHhvyHhv",
        "tax_filing": "flg_jIFHhvyGN47ej1upyIT8",
        "status": "pending",
        "created_at": "2023-04-12T21:32:44.957364Z",
        "category": null,
        "label": null,
        "account_number": "123456789",
      },
      {
        "id": "fev_7ej1upy7ej1upy7ej1up",
        "tax_filing": "flg_jIFHhvyGN47ej1upyIT8",
        "status": "rejected",
        "created_at": "2023-04-12T21:32:44.957364Z",
        "category": "applied_for_invalid_ein",
        "label": "EIN is either invalid or Applied For. Return will not be accepted by the agency. If filed, the agency will reject the return",
        "account_number": "Applied For",
      },
      {
        "id": "fev_pyITpyITpyITpyITpyIT",
        "tax_filing": "flg_jIFHhvyGN47ej1upyIT8",
        "status": "submitted",
        "created_at": "2023-04-12T21:32:44.957364Z",
        "category": null,
        "label": null,
        "account_number": "Applied For",
      },
      {
        "id": "fev_GN47eGN47eGN47eGN47e",
        "tax_filing": "flg_jIFHhvyGN47ej1upyIT8",
        "status": "pending",
        "created_at": "2023-04-12T21:32:44.957364Z",
        "category": null,
        "label": null,
        "account_number": "Applied For",
      },
    ],
  }
}

Company Filing Event

EventDescription
createdA filing was created
updatedA filing was updated
deletedA filing was deleted

Example webhook event payload for a company filing

{
  "event": "updated",
  "data": {
    "id": "com_fil_9kL2mN8pQ4rS6tU1vW3x",
    "company": "com_7bF9dG2hJ5kM8nP1qR4s",
    "year": 2024,
    "period": "q1", 
    "label": "Federal Quarterly Filing - Q1",
    "due_at": "2024-04-15",
    "filed_at": "2024-04-12T16:30:25.847Z",
    "document": "doc_3aE6fH9iL2mO5pR8sV1y",
    "filing_attempts": 2,
    "status": "filed",
    "status_history": [
      {
        "status": "inapplicable", 
        "status_at": "2024-01-15T10:30:15.423Z",
        "blocked_reasons": []
      },
      {
        "status": "pending", 
        "status_at": "2024-01-20T14:45:32.156Z",
        "blocked_reasons": []
      },
      {
        "status": "blocked", 
        "status_at": "2024-03-10T09:15:48.792Z",
        "blocked_reasons": [
          {
            "type": "applied_for_tax_id",
            "resource_type": "company_tax_param",
            "resource": "spa_h7zSw4NITCtef4Taf5yA"
          }
        ]
      },
      {
        "status": "pending", 
        "status_at": "2024-03-12T11:20:07.234Z",
        "blocked_reasons": []
      },
      {
        "status": "filed", 
        "status_at": "2024-04-12T16:30:25.847Z",
        "blocked_reasons": []
      }
    ]
  }
}

Tax Package Events

EventDescription
status_changeA tax package finished or failed generating

Check sends this event once per tax package, when generation finishes and the package's status becomes succeeded or failed. Check does not send an event when generation starts. A failed package arrives with status: failed, result set to null, and error set.

In the webhook payload, result.url is a relative path, such as /tax_packages/tax_pkg_1MrQwrLkdIwHu7ixUov4x2b3/download. To get the package, call Download a tax package (GET /tax_packages/:id/download) with the package id instead of hard-coding a host onto that path.

Example webhook event payload for a tax package that finished generating

{
  "event": "status_change",
  "data": {
    "id": "tax_pkg_1MrQwrLkdIwHu7ixUov4x2b3",
    "company": "com_myKIvCGb7M86G2CQbYe5",
    "status": "succeeded",
    "contents": {
      "employee_tax_statements": ["ets_123", "ets_456"],
      "filings": ["com_fil_999"]
    },
    "created_at": "2024-11-03T19:52:15Z",
    "succeeded_at": "2024-11-03T19:55:11Z",
    "result": {
      "url": "/tax_packages/tax_pkg_1MrQwrLkdIwHu7ixUov4x2b3/download"
    },
    "error": null
  }
}

More detail on the Tax Package object.

Net Pay Split Events

EventDescription
createdA net pay split was created
updatedA net pay split was updated

Example webhook event payload for a net pay split creation

{
  "event": "created",
  "data": {
    "id": "nps_1b951IjHG4w3yFQtpIwg", 
    "splits": [
      {
        "amount": "50.00", 
        "priority": 1, 
        "percentage": null, 
        "bank_account": "bnk_pli2zS8ulTsz82gSrvh3"
      }, 
      {
        "amount": "0.00", 
        "priority": 2, 
        "percentage": null, 
        "bank_account": "bnk_sTy2YqAYFi7hO2Eu4wNg"
      }
    ], 
    "employee": "emp_qZRfe3o34Rw5s3bPgUnr", 
    "contractor": null, 
    "is_default": true, 
    "deactivated_at": null, 
    "deactivated_reason": null
  }
}

Integration Access Events

EventDescription
createdAn integration access was created
updatedAn integration access was updated
deletedAn integration access was deleted

Example webhook event payload for an integration access creation

{
  "event": "created",
  "data": {
    "id": "iac_fVSfFvta4PucEMEe4Tsg", 
    "scope": ["company:retrieve", 
              "company_tax_document:list", 
              "document:download", 
              "employee:list", 
              "employee:retrieve", 
              "payroll:list", 
              "payroll:retrieve", 
              "payroll_item:retrieve", 
              "benefits:list", 
              "benefits:retrieve", 
              "benefits:partial_update", 
              "benefits:create", 
              "benefits:destroy", 
              "integration_access:retrieve", 
              "integration_partners:list", 
              "integration_partners:retrieve", 
              "integration_partners:authorize"], 
    "status": "pending", 
    "company": "com_yQqZgGvyG5oFwsihlipd", 
    "metadata": {}, 
    "access_type": "integrated", 
    "integration_partner": "int_Xf90bJAKE9Lf2jVjbgne", 
    "integration_permission": "ipe_nzP0UQPBTefnsHe16Are"
  }
}

Enrollment Profile Events

EventDescription
createdAn Enrollment Profile was created
updatedAn Enrollment Profile was updated
{
  "event": "created",
  "data": {
    "company": "com_vIFHhvyGN47ej1upyIT8",
    "user_since": null,
    "fraud_score": null,
    "paying_user": null,
    "social_media": [],
    "employee_count": 120,
    "enrollment_mode": "implementation_services",
    "predicted_fraud": null,
    "account_contacts": [],
    "contractor_count": null,
    "pay_period_amount": null,
    "expected_first_payday": null,
    "first_payroll_of_year": null,
    "first_payroll": null,
    "missed_payments_count": null,
    "earliest_known_revenue": null,
    "products_actively_used": [],
    "average_monthly_revenue": null,
    "previous_payroll_provider": null,
    "payroll_history_access_method": null,
    "approved_for_payment_processing": null,
    "months_on_previous_payroll_provider": null,
    "previous_payroll_provider_account_id": null,
    "implementation_services_submission_comment": null,
    "existing_payroll_customer_processing_period": null
  }
}

Setup Events

EventDescription
createdA Setup was created
updatedA Setup was updated
{  
  "event": "updated",
  "data": {
    "id": "ese_aBs7J2B2lk91ba8jjaa2",
    "phases": [
      {
        "name": "preliminary_review",
        "completed_at": "2025-02-21T13:30:45.431544Z"
      },
      { 
        "name": "team_setup", 
        "completed_at": "2025-03-06T21:39:55.661535Z" 
      },
      { 
        "name": "final_steps", 
        "completed_at": "2025-03-06T22:00:33.323800Z" 
      }
    ],
    "company": "com_Omi4cyBa7sj1baLwj1b2",
    "profile": {
      "first_payroll": false,
      "employee_count": 31,
      "contractor_count": 0,
      "first_payroll_of_year": null,
      "previous_payroll_provider": "Toast"
    },
    "closed_at": null,
    "setup_due": "2025-03-10T00:00:00Z",
    "created_at": "2025-02-12T14:40:57.221345Z",
    "completed_at": null,
    "submitted_at": "2025-02-12T14:40:57.250418Z"
  }
}

Fulfillment Events

EventDescription
createdA fulfillment was created
deletedA fulfillment was deleted

Example webhook event payload for a fulfillment

{
  "event": "created",
  "data": {
    "id": "ful_abc123def456",
    "company": "com_sx3svU6K8c5ZkSFlOh5p",
    "payment": "pyt_xyz789ghi012"
  }
}

More detail on the Fulfillment object.

Correction Events

🚧

The Correction API is currently in limited preview, and is not yet generally available.

EventDescription
createdA correction was created
updatedA correction was updated
deletedA correction was deleted

An updated event is sent when a correction's preview or approval starts or completes, when the correction is updated or reopened, when a payroll is added to or deleted from it, and when its status moves to processing, settled, or failed. See Corrections for details.

Example webhook event payload for a correction

{
  "event": "updated",
  "data": {
    "id": "cor_Bw6EkMDmxCPeVQ2eYzLu",
    "description": "Void and replace 3/31 payroll for J. Smith",
    "company": "com_sx3svU6K8c5ZkSFlOh5p",
    "year": 2026,
    "status": "draft",
    "preview": {
      "status": "succeeded",
      "started_at": "2026-06-29T18:26:56.848920Z",
      "messages": null
    },
    "approval": null,
    "settlement_date": "2026-07-15",
    ...
  }
}

More detail on the Correction object.

Employee Tax Statement Override Events

EventDescription
createdAn employee tax statement override was created
updatedAn employee tax statement override was updated
deletedAn employee tax statement override was deleted

An updated event is sent for every existing override saved by Create or update employee tax statement overrides, even if no values changed, and by Update an employee tax statement override only when a value changes.

Example webhook event payload for an employee tax statement override

{
  "event": "updated",
  "data": {
    "id": "ets_ovr_Hq3nVb7KcWz2LpRtYe9m",
    "company": "com_sx3svU6K8c5ZkSFlOh5p",
    "employee": "emp_OBfYZbVSadBmQZcU7wN2",
    "year": 2026,
    "qualified_overtime_compensation": "950.00",
    "other_lines": [
      {
        "label": "PUCC",
        "amount": "4200.00"
      }
    ],
    "metadata": {},
    "created_at": "2027-01-08T15:02:11.482915Z",
    "updated_at": "2027-01-12T10:41:37.105233Z"
  }
}

More detail on the Employee tax statement override object.

Notification Events

EventDescription
createdA Notification was created

Example webhook event payload for a notification creation

{
  "event": "created",
  "data": {
    "id": "ntf_MrFrw0F82NSJjyw10Erk",
    "topic": "ready_for_payroll",
    "company": "com_zH8Gq33iBkFj5o0GKjTw",
    "recipient_type": "company",
    "recipient": "com_zH8Gq33iBkFj5o0GKjTw",
    "email_communication": "cmn_MrFrw0F82NSJjyw10Erk",
    "created_at": "2024-01-15T10:30:00Z"
  }
}

Did this page help you?