Skip to main content
Version: 1.7.1

ValidateForm

Validates the Forms in the request against IRS Business rules and field specification without creating the returns in TaxBandits.

POST FormW2G/ValidateForm 
Run in Postman

Request Body

FieldTypeDescription
SubmissionManifestobjectSubmissionManifest provides brief information about a particular submission on the whole.

It contains information like

  • Submission ID
  • Tax Year
  • IsPostal
  • IsFederalFiling
  • IsStateFiling
  • IsOnlineAccess
  • IsScheduleFiling & ScheduleFiling service details
    TaxYearstringTax year of Form W-2G to be filed.
Allowed values: "2022","2023","2024"
    IsFederalFilingBooleanFederal Filing for the return will be enabled when the value is True. Form W-2G will be sent directly to the IRS.
    IsStateFilingBooleanState Filing for the return will be enabled when the value is True. Form W-2G will be directly filed with the respective recipient states.
Note: State Filing will not be created for the states that do not require State filing.
    IsPostalBooleanIf this value is set as true, the Postal Mailing service will be opted for all the recipients included in the submission.

Once the returns are transmitted, the 1099-B form copies will be mailed to the recipient's address via USPS.

Note: Postal Orders for Foreign Address will not be created.
    IsOnlineAccessBooleanIf this value is set as true, the Online Access service will be enabled for all the recipients included in the submission.

Once the returns are transmitted, an email with a link to the secure TaxBandits portal will be sent to the recipients. The recipients can then provide consent and download Form 1099-B copies from the portal.
    IsScheduleFilingBooleanWhen true, schedule filing services will be provided for Form W-2G returns under this submission.
    ScheduleFilingobjectContains preferred date to submit the returns to the IRS. Required only when "IsScheduleFiling" is True.
        EfileDatestringDate of Schedule Filing. Enter the date in the format: MM/DD/YYYY or MM-DD-YYYY Example: 10/20/2021 or 10-20-2021
ReturnHeaderobjectContains information about the Business details.
    BusinessobjectObject to identify the Business Details.
        BusinessIdGuidOptional Use the unique Business ID (Generated by TaxBandits), you received in the response of the Business CREATE Endpoint. If you have do not have a Business ID, ignore the field. By giving the Business ID, you do not have to provide all the business information again.
        BusinessNmstringName of the business
Size Range: ..75
        FirstNmstringFirst Name of the Individual
Size Range: ..20
        MiddleNmstringMiddle Name of the Individual
Size Range: ..20
        LastNmstringLast Name of the Individual
Size Range: ..20
        SuffixstringSuffix of the Individual
Allowed values

"Jr", "Sr", "I", "II", "III", "IV", "V", "VI", "VII"

        TradeNmstringOptional Name under which the business operates
Size Range: ..75
        IsEINBooleanWhen true, identify that the business TIN is an EIN.
        EINorSSNstringWhen IsEIN is true, use Employer Identification Number (EIN). When IsEIN is false, use Social Security Number (SSN)
Size Range: 9-11
        EmailstringOptional Email address of the Business
Size Range: ..100
Note : This email address cannot be the same for two different recipients under the same business.
        ContactNmstringOptional Name of the person who can be contacted by the IRS.
Size Range: ..27
        PhonestringOptional Phone number of the business
Size Range: 10
        PhoneExtnstringOptional Extension of the business phone number
Size Range: ..5
        FaxstringOptional Fax number of the Business
Size Range: 10
        BusinessTypestringOptional Type of business. Optional for W-2/1099 and mandatory for 94X series
Size Range: 4
Allowed values

"ESTE", "PART", "CORP", "EORG", "SPRO"

For the description of the Allowed Values , click here
        SigningAuthorityobjectOptional Details of the person who is authorized to sign the return
            NamestringOptional Name of the signing authority
Size Range: ..35
            PhonestringOptional Phone number of the signing authority
Size Range: 10
            BusinessMemberTypestringOptional Business title of the signing authority
Size Range: 5..29
Allowed values

"CORPORATESECRETARY", "SECRETARYTREASURER", "PARTNER", "GENERALPARTNER", "LIMITEDPARTNER", "LLCMEMBER", "MANAGINGMEMBER", "MANAGER", "TAXMATTERPARTNER", "PRESIDENT", "VICEPRESIDENT", "CORPORATETREASURER", "TREASURER", "ASSISTANTTREASURER", "CHIEFACCOUNTINGOFFICER", "CHIEFEXECUTIVEOFFICER", "CHIEFFINANCIALOFFICER", "TAXOFFICER", "CHIEFOPERATINGOFFICER", "CORPORATEOFFICER", "EXECUTIVEDIRECTOR", "DIRECTOR", "CHAIRMAN", "EXECUTIVEADMINISTRATOR", "RECEIVER", "PASTOR", "ASSISTANTTORELIGIOUSLEADER", "REVEREND", "PRIEST", "MINISTER", "RABBI", "LEADEROFRELIGIOUSORGANIZATION", "SECRETARY", "DIRECTOROFTAXATION", "DIRECTOROFPERSONNEL", "ADMINISTRATOR", "EXECUTOR", "TRUSTEE", "FIDUCIARY", "OWNER", "SOLEPROPRIETOR", "MEMBER", "SOLEMEMBER"

        KindOfEmployerstringIdentifies the kind of employer. Mandatory for W-2 and optional for W-2G and 94X series
Allowed values

"FEDERALGOVT", "STATEORLOCAL501C", "NONGOVT501C", "STATEORLOCALNON501C", "NONEAPPLY"

        KindOfPayerstringIdentifies the kind of payer. This field is mandatory in W-2 and optional in W-2G and 94X series
Allowed values

"REGULAR941", "REGULAR944", "AGRICULTURAL943", "HOUSEHOLD", "MILITARY", "MEDICAREQUALGOVEM", "RAILROADFORMCT1"

        IsBusinessTerminatedBooleanWhen true, identifies the business as terminated.
        IsForeignBooleanWhen true, identifies the business address with a foreign address.
        USAddressobjectIf IsForeign is false, pass US address of the business
            Address1stringEmployer/Payer's US address (street or post office box of that locality)
Size Range: ..46
            Address2stringOptional Employer/Payer's suite or apartment
Size Range: ..46
            CitystringEmployer/Payer's city
Size Range: ..50
            StatestringEmployer/Payer's state code. Refer Static values.
Size Range: 2
Allowed values

"AL", "AK", "AZ", "AR", "CA", "CO", "CT", "DE", "DC", "FL", "GA", "HI", "ID", "IL", "IN", "IA", "KS", "KY", "LA", "ME", "MD", "MA", "MI", "MN", "MS", "MO", "MT", "NE", "NV", "NH", "NJ", "NM", "NY", "NC", "ND", "OH", "OK", "OR", "PA", "RI", "SC", "SD", "TN", "TX", "UT", "VT", "VA", "WA", "WV", "WI", "WY", "AS", "FM", "GU", "MH", "MP", "PW", "PR", "VI", "AA", "AE", "AP"

            ZipCdstringEmployer/Payer's zip code
Size Range: 5..10
        ForeignAddressobjectIf IsForeign is true, pass foreign address of the business
            Address1stringEmployer/Payer's foreign address (street address or post office box of that locality)
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", "AU", "AJ", "BF", "BA", "FQ", "BG", "BB", "BO", "BE", "BH", "BN", "BD", "BT", "BL", "BK", "BC", "BV", "BR", "IO", "VI", "BX", "BU", "UV", "BM", "BY", "CB", "CM", "CA", "CV", "CJ", "CT", "CD", "CI", "CH", "KT", "IP", "CK", "CO", "CN", "CF", "CG", "CW", "CR", "CS", "IV", "HR", "CU", "UC", "CY", "EZ", "DA", "DX", "DJ", "DO", "DR", "TT", "EC", "EG", "ES", "EK", "ER", "EN", "ET", "FK", "FO", "FM", "FJ", "FI", "FR", "FP", "FS", "GB", "GA", "GG", "GM", "GH", "GI", "GR", "GL", "GJ", "GQ", "GT", "GK", "GV", "PU", "GY", "HA", "HM", "VT", "HO", "HK", "HQ", "HU", "IC", "IN", "ID", "IR", "IZ", "EI", "IS", "IT", "JM", "JN", "JA", "DQ", "JE", "JQ", "JO", "KZ", "KE", "KQ", "KR", "KN", "KS", "KV", "KU", "KG", "LA", "LG", "LE", "LT", "LI", "LY", "LS", "LH", "LU", "MC", "MK", "MA", "MI", "MY", "MV", "ML", "MT", "IM", "RM", "MR", "MP", "MX", "MQ", "MD", "MN", "MG", "MJ", "MH", "MO", "MZ", "WA", "NR", "BQ", "NP", "NL", "NC", "NZ", "NU", "NG", "NI", "NE", "NF", "CQ", "NO", "MU", "OC", "PK", "PS", "LQ", "PM", "PP", "PF", "PA", "PE", "RP", "PC", "PL", "PO", "RQ", "QA", "RO", "RS", "RW", "TB", "RN", "WS", "SM", "TP", "SA", "SG", "RI", "SE", "SL", "SN", "NN", "LO", "SI", "BP", "SO", "SF", "SX", "OD", "SP", "PG", "CE", "SH", "SC", "ST", "SB", "VC", "SU", "NS", "SV", "WZ", "SW", "SZ", "SY", "TW", "TI", "TZ", "TH", "TO", "TL", "TN", "TD", "TS", "TU", "TX", "TK", "TV", "UG", "UP", "AE", "UK", "UY", "UZ", "NH", "VE", "VM", "VQ", "WQ", "WF", "WI", "YM", "ZA", "ZI"

            PostalCdstringEmployer/Payer's postal code
Size Range: ..16
ReturnDataobject[]Contains information about the recipient details and Form W-2G details.
    SequenceIdstringAn unique reference ID for the submission that can be used to identify a particular record. The Sequence ID will be returned in the Response for your reference.
Size Range: 50
    IsPostalBooleanIf this value is set as true, the Postal Mailing service will be opted for the recipient included in the record.

Once the return is transmitted, the 1099-B copy will be mailed to the recipient's address via USPS.

Postal Orders for Foreign Address will not be created.

Note: To enable this, you must have set the IsPostal value as True under the submission. You can set this value as False for the other records for which you don’t want this service.
    IsOnlineAccessBooleanIf this value is set as true, the Online Access service will be enabled for the recipient included in the record.

Once the return is transmitted, an email with a link to the secure TaxBandits portal will be sent to the recipient. The recipient can then provide consent and download Form 1099-B copy from the portal.

Note: To enable this, you must have set the IsOnlineAccess value as True under the submission. You can set this value as False for the other records for which you don’t want this service.
    RecipientobjectObject to identify the recipient details.
        RecipientIdGuidOptionalAn unique ID generated by TaxBandits after the return is created and will be returned in the Response. You can use this id for your future reference to Update.
        TINTypestringSpecify the TIN type of the recipient.
Allowed values

"SSN", "EIN", "ITIN", "ATIN", "NA"

        TINstringBring in the nine-digit taxpayer identification number of the Recipient (SSN, ITIN, ATIN, or EIN).
Size Range: 9-11
        FirstPayeeNmstringBring in the name of the recipient (preferably last name first for an Individual). If more space is required for the name, use the Second Payee Name Field.
Size Range: 40
        SecondPayeeNmstringOptional If there are multiple recipients (for example, partners, joint owners, or spouses), use this field for those names not associated with the TIN or if not enough space was provided in the First Payee Name, continue the name in this field.
Size Range: 40
        FirstNmstringFirst Name of the Individual
Size Range: ..20
        MiddleNmstringMiddle Name of the Individual
Size Range: ..20
        LastNmstringLast Name of the Individual
Size Range: ..20
        SuffixstringSuffix of the Individual
Allowed values

"Jr", "Sr", "I", "II", "III", "IV", "V", "VI", "VII"

        USAddressobjectIf IsForeign is false, pass US address of the recipient
            Address1stringRecipient's US address (street address or post office box of that locality)
Size Range: ..46
            Address2stringOptional Recipient's suite or apartment
Size Range: ..46
            CitystringRecipient's city
Size Range: ..50
            StatestringRecipient's state code. Refer Static values.
Size Range: 2
Allowed values

"AL", "AK", "AZ", "AR", "CA", "CO", "CT", "DE", "DC", "FL", "GA", "HI", "ID", "IL", "IN", "IA", "KS", "KY", "LA", "ME", "MD", "MA", "MI", "MN", "MS", "MO", "MT", "NE", "NV", "NH", "NJ", "NM", "NY", "NC", "ND", "OH", "OK", "OR", "PA", "RI", "SC", "SD", "TN", "TX", "UT", "VT", "VA", "WA", "WV", "WI", "WY", "AS", "FM", "GU", "MH", "MP", "PW", "PR", "VI", "AA", "AE", "AP"

            ZipCdstringRecipient's zip code
Size Range: 5..10
        ForeignAddressobjectIf IsForeign is true, pass foreign address of the recipient
            Address1stringRecipient's foreign address (street address or post office box of that locality)
Size Range: ..50
            Address2stringOptional Recipient's suite or apartment
Size Range: ..50
            CitystringRecipient's city.
Size Range: ..50
            ProvinceOrStateNmstringRecipient's Province or State Name.
Size Range: ..50
            CountrystringRecipient's country code. Refer Static values.
Size Range: 2
Allowed values

"AF", "AX", "AL", "AG", "AQ", "AN", "AO", "AV", "AY", "AC", "AR", "AM", "AA", "AT", "AS", "AU", "AJ", "BF", "BA", "FQ", "BG", "BB", "BO", "BE", "BH", "BN", "BD", "BT", "BL", "BK", "BC", "BV", "BR", "IO", "VI", "BX", "BU", "UV", "BM", "BY", "CB", "CM", "CA", "CV", "CJ", "CT", "CD", "CI", "CH", "KT", "IP", "CK", "CO", "CN", "CF", "CG", "CW", "CR", "CS", "IV", "HR", "CU", "UC", "CY", "EZ", "DA", "DX", "DJ", "DO", "DR", "TT", "EC", "EG", "ES", "EK", "ER", "EN", "ET", "FK", "FO", "FM", "FJ", "FI", "FR", "FP", "FS", "GB", "GA", "GG", "GM", "GH", "GI", "GR", "GL", "GJ", "GQ", "GT", "GK", "GV", "PU", "GY", "HA", "HM", "VT", "HO", "HK", "HQ", "HU", "IC", "IN", "ID", "IR", "IZ", "EI", "IS", "IT", "JM", "JN", "JA", "DQ", "JE", "JQ", "JO", "KZ", "KE", "KQ", "KR", "KN", "KS", "KV", "KU", "KG", "LA", "LG", "LE", "LT", "LI", "LY", "LS", "LH", "LU", "MC", "MK", "MA", "MI", "MY", "MV", "ML", "MT", "IM", "RM", "MR", "MP", "MX", "MQ", "MD", "MN", "MG", "MJ", "MH", "MO", "MZ", "WA", "NR", "BQ", "NP", "NL", "NC", "NZ", "NU", "NG", "NI", "NE", "NF", "CQ", "NO", "MU", "OC", "PK", "PS", "LQ", "PM", "PP", "PF", "PA", "PE", "RP", "PC", "PL", "PO", "RQ", "QA", "RO", "RS", "RW", "TB", "RN", "WS", "SM", "TP", "SA", "SG", "RI", "SE", "SL", "SN", "NN", "LO", "SI", "BP", "SO", "SF", "SX", "OD", "SP", "PG", "CE", "SH", "SC", "ST", "SB", "VC", "SU", "NS", "SV", "WZ", "SW", "SZ", "SY", "TW", "TI", "TZ", "TH", "TO", "TL", "TN", "TD", "TS", "TU", "TX", "TK", "TV", "UG", "UP", "AE", "UK", "UY", "UZ", "NH", "VE", "VM", "VQ", "WQ", "WF", "WI", "YM", "ZA", "ZI"

            PostalCdstringRecipient's Postal Code
Size Range: ..16
        EmailstringRecipient's email address.
Size Range: 0..100
        FaxstringOptional Recipient's Fax number.
Size Range: 10
        PhonestringRecipient's Phone Number.
Size Range: 15
    W2GFormDataobjectRecipient's Form W-2G information
        B1ReportableWinningsnumberEnter the Reportable winning amount.
Size Range: 0-9999999999.99
        B2DateWonnumberEnter the date of the winning event.
Size Range: 8
        B3WagerTypeEnumEnter the type of wager
Size Range: 1
Allowed values

"HORSE_RACETRACK", "DOG_RACETRACK", "JAI_ALAI", "STATE_CONDUCTED_LOTTERY", "KENO", "BINGO", "SLOT_MACHINES", "POKER_WINNINGS", "ANY_OTHER_TYPE_OF_GAMBLING_WINNINGS"

        B4FedTaxWHnumberEnter any federal income tax withheld, whether regular gambling withholding or backup withholding.
Size Range: 0-9999999999.99
Note : This value should be less than 40% of box 1.
        B5TxnstringEnter the ticket or card number (and color, if applicable), machine serial number, other identifying number or any other information that will help identify the winning transaction.
Size Range: 15
        B6RacestringEnter the race (or game) relating to the winning ticket
Size Range: 5
        B7WinningsIdWagersnumberEnter the amount of additional winnings from identical wagers.
Size Range: 0-9999999999.99
        B8CashierstringEnter the initials or number of the cashier making the winning payment
Size Range: 5
        B10WindowstringEnter the window number or location of the person paying the winning payment.
Size Range: 5
        B11FirstIdstringEnter the first identification number of the person receiving the winning payment.
Size Range: 15
        B12SecondIdstringEnter the second identification number of the person receiving the winnings
Size Range: 15
        Statesobject[]Contains list of state returns information.
            StateCdstringState Code.
Size Range: 2
Allowed values

"AL", "AK", "AZ", "AR", "CA", "CO", "CT", "DE", "DC", "FL", "GA", "HI", "ID", "IL", "IN", "IA", "KS", "KY", "LA", "ME", "MD", "MA", "MI", "MN", "MS", "MO", "MT", "NE", "NV", "NH", "NJ", "NM", "NY", "NC", "ND", "OH", "OK", "OR", "PA", "RI", "SC", "SD", "TN", "TX", "UT", "VT", "VA", "WA", "WV", "WI", "WY", "AS", "FM", "GU", "MH", "MP", "PW", "PR", "VI", "AA", "AE", "AP"

            StateIdNumstringIdentification Number of State.
Size Range: ..20
            StateWinningsnumberEnter the Reportable state winning amount.
Size Range: 0-9999999999.99
            StateWHnumberIncome tax amount withheld for State.
Size Range: 0-9999999999.99
            LocalWinningsnumberEnter the Reportable Local winning amount.
Size Range: 0-9999999999.99
            LocalWHnumberLocal income tax withheld.
Size Range: 0-9999999999.99
            LocalityNmnumberName of the Locality.
Size Range: 0-9999999999.99

Request JSON

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

{
"SubmissionManifest": {
"SubmissionId": null,
"TaxYear": "2024",
"IsFederalFiling": true,
"IsStateFiling": true,
"IsPostal": true,
"IsOnlineAccess": true,
"IsScheduleFiling": false,
"ScheduleFiling": null
},
"ReturnHeader": {
"Business": {
"BusinessId": null,
"BusinessNm": "Snowdaze LLC",
"FirstNm": null,
"MiddleNm": null,
"LastNm": null,
"Suffix": null,
"PayerRef": "Pe1234",
"TradeNm": "Iceberg Icecreams",
"IsEIN": true,
"EINorSSN": "62-6369245",
"Email": "chandler@sample.com",
"ContactNm": "Chandler White",
"Phone": "1234567890",
"PhoneExtn": "12345",
"Fax": "1234567890",
"BusinessType": "ESTE",
"SigningAuthority": {
"Name": "Chandler White",
"Phone": "1234567890",
"BusinessMemberType": "ADMINISTRATOR"
},
"KindOfEmployer": "FederalGovt",
"KindOfPayer": "REGULAR941",
"IsBusinessTerminated": true,
"IsForeign": false,
"USAddress": {
"Address1": "1751 Kinsey Rd",
"Address2": "Main St",
"City": "Dothan",
"State": "AL",
"ZipCd": "36303"
},
"ForeignAddress": {
"Address1": null,
"Address2": null,
"City": null,
"ProvinceOrStateNm": null,
"Country": null,
"PostalCd": null
}
}
},
"ReturnData": [
{
"SequenceId": "1",
"IsPostal": true,
"IsOnlineAccess": true,
"IsForced": false,
"Recipient": {
"RecipientId": null,
"TINType": "EIN",
"TIN": "393817572",
"FirstPayeeNm": "Stephen",
"SecondPayeeNm": "Davis",
"FirstNm": null,
"MiddleNm": null,
"LastNm": null,
"Suffix": null,
"IsForeign": false,
"USAddress": {
"Address1": "1751 Kinsey Rd",
"Address2": "Main St",
"City": "Dothan",
"State": "AL",
"ZipCd": "36303"
},
"ForeignAddress": {
"Address1": null,
"Address2": null,
"City": null,
"ProvinceOrStateNm": null,
"Country": null,
"PostalCd": null
},
"Email": "mark+32@sample.com",
"Fax": "1234567890",
"Phone": "1234567890"
},
"W2GFormData": {
"B1ReportableWinnings": 50000.65,
"B2DateWon": "02/01/2023",
"B3WagerType": "DOG_RACETRACK",
"B4FedTaxWH": 500.82,
"B5Txn": null,
"B6Race": "Horse",
"B7WinningsIdWagers": 700.89,
"B8Cashier": "Yugyu",
"B10Window": 78.35,
"B11FirstId": "GA93393935",
"B12SecondId": "NR935IIT935",
"States": {
"StateCd": "CA",
"StateIdNum": "999-9999-9",
"StateWinnings": 1000.56,
"StateWH": 100.28,
"LocalWinnings": 300.23,
"LocalWH": 100.45,
"LocalityNm": "Pristine"
}
}
}
]
}

Response Body

FieldTypeDescription
StatusCodenumberReturns the HTTP status codes like 200,300 etc.
StatusNamestringName of the status code
StatusMessagestringDetailed status message
ErrorRecordsobject[]It will show the detailed information about the error status of Form W-2G Records.
    SequenceIdstringAn unique reference ID for the submission that can be used to identify a particular record. 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 code
    NamestringName of the validation error
    MessagestringDescription of the validation error

Response JSON

{
"StatusCode": 200,
"StatusName": "Ok",
"StatusMessage": "Successful API call",
"ErrorRecords": null,
"Errors": null
}