Overview
Pennsylvania employers who withhold state income tax from employee wages must file a quarterly reconciliation with the Pennsylvania Department of Revenue.
The TaxBandits API supports the automation of Form PA-W3R, Pennsylvania's quarterly withholding reconciliation return.
Forms supported
| Form | Type | Filing frequency | Due date |
|---|---|---|---|
| Form PA-W3R | WH | Quarterly | Last day of the month following the quarter end |
Key compliance notes
- Zero filing required. Form PA-W3R must be filed every quarter, even if no wages were paid or no tax was withheld.
- Filed regardless of payment method. Even if tax was remitted by EFT, the PA-W3R reconciliation return must still be filed separately.
Before filing, you can simulate the entire verification flow in our Sandbox environment without submitting real data to state agencies. See how
Available endpoints
Each endpoint below is specific to Pennsylvania's withholding Form PA-W3R.
To use the following endpoints, you must first call the Auth method to obtain an access token. Include this token in your request header as a Bearer token. Refer to OAuth 2.0 Authentication for details on JWT-based authentication.
- Create – Generates a new Form PA-W3R quarterly withholding reconciliation return for the specified tax year and quarter.
- Update – Modifies the details of a previously created Form PA-W3R return before it's transmitted.
- Get – Retrieves the details of a previously created Form PA-W3R return.
Common endpoints (utility)
These endpoints share the same payload structure across all states, and apply uniformly whether you're working with a withholding form or a UI form:
- List: Retrieves a list of forms created for a specific business or period.
- Delete: Removes an in-progress form before it's transmitted to the state.
- Transmit: Submits a completed form to the corresponding state agency.
- RequestPdfUrls: Returns a link to download the PDF version of a form (final).
- Status: Checks whether a submitted form was accepted or rejected by the state.
As an alternative to polling the Status endpoint, you can configure a webhook for the event type Status Payroll Filings Status Change to receive automated status updates.