Skip to main content
Version: 1.7.3

Create

Create

Use this endpoint to generate a new withholding form for the state of Virginia.

VA-5Q (Quarterly Form):

  • Used for reporting state withholding taxes on a quarterly basis.

  • Employers who withhold Virginia state income tax from employee wages and are not required to file monthly use this form.

  • Covers the tax period of 3 months (quarterly).

VA-5M (Monthly Form):

  • Used for reporting state withholding taxes on a monthly basis.

  • Employers who withhold large amounts of Virginia state tax or meet the threshold requiring monthly reporting must use this form.

  • Covers one month of withholding.

POST StateFilings/VA5QWH/Create 

Request Body

FieldTypeDescription
SubmissionIdGuidUnique identifier created by TaxBandits for each submission. Not required when you are creating a return.
StateWHRecordsObject []Object to create VA-5Qs
SequenceIdStringA unique number given by an inbound application to identify failed records.
Size Range: ..10
ReturnHeaderObjectIdentifies the supporting details of Form VA-5Q.
QtrStringThe Quarter for which Form VA-5Q needs to be filed.
Allowed values

"Q1", "Q2", "Q3", "Q4"

TaxYrStringThe tax year for which Form VA-5Q needs to be filed.
Allowed values

2025

BusinessIdStringOptional Use the unique BusinessId (Generated by TaxBandits) you received in the response of the Business CREATE Endpoint. If you do not have a BusinesId, ignore the field. By giving the BusinessId, you do not have to provide all the business information again.
BusinessObjectThe details of the business you’re filing for.
BusinessNmStringName of the business.
Size Range: ..75
PayerRefstringOptional An unique identifier for each payer completing their information. This identifier can be used in future references of the payer in the API.
Size Range: ..50
TradeNmStringOptional Name under which the business operates.
Size Range: ..75
IsEINBooleanWhen true, identifies the business with an EIN.
EINorSSNStringWhen IsEIN is true, use Employer Identification Number (EIN). When IsEIN is false, use Social Security Number (SSN).
Size Range: 9-11
EmailStringEmail address of the business.
Size Range: ..100
IsForeignBooleanWhen true, identifies the business as having a foreign address.
USAddressObjectIf IsForeign is false, pass the US address of the business.
Address1StringEmployer/Payer’s US address (street address or post office box).
Size Range: ..46
Address2StringOptional Employer/Payer’s suite or apartment.
Size Range: ..46
CityStringEmployer/Payer’s city.
Size Range: ..50
StateStringEmployer/Payer’s state.
Size Range: 2
Allowed values

"AL", "AK", "AZ", "AR", "CA", "CO", "CT", "DE", "DC", "FL", "GA", "HI", "ID", "IL", "IN", etc.

ZipCdStringEmployer/Payer’s zip code.
Size Range: 5..10
ForeignAddressObjectIf IsForeign is true, pass the foreign address of the business.
Address1StringEmployer/Payer’s foreign address (street address or post office box).
Size Range: ..50
Address2StringOptional Employer/Payer’s suite or apartment.
Size Range: ..50
CityStringEmployer/Payer’s city.
Size Range: ..50
ProvinceOrStateNmStringEmployer/Payer’s province or state name.
Size Range: ..50
CountryStringEmployer/Payer’s country.
Size Range: 2
Allowed values

"AF", "AX", "AL", "AG", "AQ", "AN", "AO", "AV", "AY", "AC", "AR", "AM", "AA", "AT", "AS", etc.

PostalCdStringEmployer/Payer’s postal code.
Size Range: ..16
ReturnDataObject[]Identifies the Form VA-5Q data.
FormVA5QObjectVirginia withholding quarterly tax return.
WHIdNumStringVirginia withholding account number.
Allowed Format: "30-999999999F-001" or "30999999999F001"
L1VAWHAmtNumberTotal Virginia income tax withheld for the quarter
Size Range: 0-99999999.99
IsL1OverPaymentBooleanIf True identifies that Adjustment is made for the over payment reporting
IsL2UnderPaymentBooleanIf True identifies that Adjustment is made for the under payment reporting
L2AdjAmtNumberPrevious period(s) adjustments
Size Range: 0-99999999.99
L3TotAdjAmtNumberTotal adjustment totals of the quarter
Size Range: 0-99999999.99
L4PenaltyAmtNumberPenalties for the quarter
Size Range: 0-99999999.99
L5InterestAmtNumberTotal interest amount for the quarter
Size Range: 0-99999999.99
L6TotAmtDueNumberTotal amount due for the quarter
Size Range: 0-99999999.99
StatePaymentObjectObject to identify the state payment details
RoutingTransitNumberStringBank routing number for state payment
Size Range: 9
BankAccountNumberStringBank account number for state payment
Size Range: ..17
PaymentAmtNumberPayment amount for state payment
Size Range: 0-99999999.99

Response Body

FieldTypeDescription
SubmissionIdGuidUnique identifier of a submission
SuccessRecordsobject[]It will show the detailed information about the success status of Form VA-5Q Records
SequenceIdstringA unique number given by an inbound application to identify particular records.
BusinessIdGuidUnique identifier of a Business
PayerRefstringUnique identifier of the payer
RecordIdGuidAn unique identifier generated by TaxBandits when a VA-5Q return is created
FormTypestringDenotes the type of withholding form (Form VA-5Q).
StatusstringReturns the record status of return.
StatusTsstringDate and time of the return created.
InfostringReturns the information about the return
Errorsobject[]Shows error information of state returns of Form VA-5Q
IdstringReturns the validation error Id.
NamestringName of the validation error.
MessagestringDescription of the validation error.
ErrorRecordsobject[]It will show the detailed information about the error status of Form VA-5Q Records.
SequenceIdstringA unique number given by an inbound application to identify particular records. The Sequence ID will be returned in the Response for your reference.
RecordIdGuidUnique identifier of a record
Errorsobject[]Shows detailed error information
IdstringReturns the validation error Id
NamestringName of the validation error
MessagestringDescription of the validation error
Errorsobject[]Shows detailed error information.
IdstringReturns the validation error Id.
NamestringName of the validation error.
MessagestringDescription of the validation error.

Request JSON

{

"SubmissionId": "0199e75c-0735-77da-a40d-90459b8b9495",
"StateWHRecords": [
{
"Sequence": "001",
"RecordId": "0199e75c-084f-730c-9db2-238dbdc5e014",
"ReturnHeader": {
"Qtr": "Q4",
"TaxYr": "2025",
"Business": {
"BusinessId": "351fc0b4-2568-40af-a403-4c08468cdd95",
"BusinessNm": "SnowDaze LLC",
"PayerRef": null,
"FirstNm": null,
"MiddleNm": null,
"LastNm": null,
"Suffix": null,
"TradeNm": "",
"IsEIN": true,
"EINorSSN": "34-2093733",
"Email": "john@sample.com",
"ContactNm": null,
"Phone": null,
"PhoneExtn": null,
"Fax": null,
"BusinessType": null,
"SigningAuthority": null,
"KindOfEmployer": null,
"KindOfPayer": null,
"IsBusinessTerminated": false,
"IsForeign": false,
"USAddress": {
"Address1": "12 main st",
"Address2": null,
"City": "Rock Hill",
"State": "SC",
"ZipCd": "29730"
},
"ForeignAddress": null,
"ACADetails": null
}
},
"ReturnData": {
"FormVA5Q": {
"WHIdNum": "30-999999999F-001",
"L1VAWHAmt": 300,
"L2AdjAmt": 200,
"IsL2OverPayment": true,
"IsL2UnderPayment": false,
"L3TotAdjAmt": 200,
"L4PenaltyAmt": 100,
"L5InterestAmt": 100,
"L6TotAmtDue": 400
},
"StatePayment": {
"BankRoutingNum": "217555555",
"BankAccountNum": "0000000001",
"PaymentAmt": 100
}
}
}
]
}

Response JSON

Success Response - This is a sample response for successful API requests.

{
"StatusCode": "200",
"StatusName": "Ok",
"StatusMessage": "Successful API call",
"SubmissionId": "0199e6f0-2c54-752a-a1a4-efe2be1e13a6",
"SuccessRecords": [
{
"SequenceId": "001",
"BusinessId": "136f3b7f-4734-42be-894c-dc7c68258ea7",
"PayerRef": null,
"RecordId": "0199e6f0-2d46-7068-bb26-ba57f29784f5",
"FormType": "VA5Q",
"Status": "CREATED",
"StatusTs": "2025-10-15 04:15:23 -04:00",
"Info": null,
"Errors": null
}
],
"ErrorRecords": null,
"Errors": null
}