Create
The Request Payload has manifest data (describes the Tax Form Type, Tax Year, etc.), business information, and data required to create the tax return. The CREATE endpoint takes in the Request Payload, validates data, applies the business rules, and creates the appropriate tax return. A unique Id called “Submission ID” is created and passed back to the sender when a tax return is created. A “Submission” is used to refer to the transaction between the client and the API server. The API will create a Unique ID for the business data if the EIN (Employer Identification Number) is not in the database. Any subsequent API calls can use the Business ID instead of sending the complete business data every time. Another Unique ID called “Record Id” is created to identify the records inside the submission.When the “Form W2 Create” endpoint is called, that many number of Record Ids are created for each employee record inside the single submission. Of course, one Submission Id is created for the entire transaction.
POST FormW2/Create
Request Body
Field | Type | Description |
---|---|---|
SubmissionManifest | object | SubmissionManifest provides the 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. |
TaxYear | string | Tax year of Form W2 to be filed. Allowed Values: "2021" |
IsFederalFiling | Boolean | Federal Filing for the return will be enabled when the value is True. Form W2 will be sent directly to the IRS. |
IsStateFiling | Boolean | State Filing for the return will be enabled when the value is True. Form W2 will be directly filed with the respective employee states. Note: State Filing will not be created for the states that do not require State filing. |
IsPostal | Boolean | Postal Order will be created when the value is set as True. Once the return is Transmitted, Form W2 employee copies will be postal mailed to the employee's address via USPS. Note: Postal Orders for Foreign Address will not be created. |
IsOnlineAccess | Boolean | Online Access will be enabled when the value is set as True. Once the return is Transmitted, an email with the link to the secure TaxBandits portal will be sent to the employee. The employee can provide consent and download Form W2 employee copies from the portal. |
IsScheduleFiling | Boolean | When true, schedule filing services will be provided for W2 returns under this submission. |
ScheduleFiling | object | Contains preferred date to submit the returns to the IRS. Required only when "IsScheduleFiling" is True . |
EfileDate | string | Date of Schedule Filing. Enter the date in the format: MM/DD/YYYY or MM-DD-YYYY Example: 10/20/2021 or 10-20-2021 |
ReturnHeader | object | Contains information about the Business details. |
Business | object | Object to identify the Business Details. |
BusinessId | Guid | Optional 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. |
PayerRef | string | Optional 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 |
BusinessNm | string | Name of the business Size Range: ..75 |
TradeNm | string | Optional Name under which the business operates Size Range: ..75 |
IsEIN | Boolean | When true, identifies the business with an EIN. |
EINorSSN | string | Enter the Employer Identification Number (EIN) as you are filing Form W-2. You can not file Form W-2 with your SSN. Size Range: 9-11 |
string | Email address of the Business Size Range: ..100 | |
ContactNm | string | Optional Name of the person who can be contacted by the IRS Size Range: ..27 |
Phone | string | Phone number of the business Size Range: 10 |
PhoneExtn | string | Optional Extension of the business phone number Size Range: ..5 |
Fax | string | Optional Fax number of the Business Size Range: 10 |
BusinessType | string | Optional Type of business. Optional for W-2/1099 and mandatory for 94X series Size Range: 4 Allowed values"ESTE", "PART", "CORP", "EORG", "SPRO" |
SigningAuthority | object | Optional Details of the person who is authorized to sign the return |
Name | string | Optional Name of the signing authority Size Range: ..35 |
Phone | string | Optional Phone number of the signing authority Size Range: 10 |
BusinessMemberType | string | Optional 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" |
KindOfEmployer | string | Identifies the kind of employer. Mandatory for W-2 and optional for 1099-MISC and 94X seriesAllowed values"FEDERALGOVT", "STATEORLOCAL501C", "NONGOVT501C", "STATEORLOCALNON501C", "NONEAPPLY" |
KindOfPayer | string | Identifies the kind of payer. This field is mandatory in W-2 and optional in 1099-MISC and 94X seriesAllowed values"REGULAR941", "REGULAR944", "AGRICULTURAL943", "HOUSEHOLD", "MILITARY", "MEDICAREQUALGOVEM", "RAILROADFORMCT1" |
IsBusinessTerminated | Boolean | When true, identifies the business as terminated. |
IsForeign | Boolean | When true, identifies the business address with a foreign address. |
USAddress | object | If IsForeign is false, pass US address of the business |
Address1 | string | Employer/Payer's US address (street address or post office box of that locality) Size Range: ..46 |
Address2 | string | Optional Employer/Payer's suite or apartment Size Range: ..46 |
City | string | Employer/Payer's city Size Range: ..50 |
State | string | Employer/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" |
ZipCd | string | Employer/Payer's zip code. Size Range: 5..10 |
ForeignAddress | object | If IsForeign is true, pass foreign address of the business |
Address1 | string | Employer/Payer's foreign address (street address or post office box of that locality) Size Range: ..50 |
Address2 | string | Optional Employer/Payer's suite or apartment Size Range: ..50 |
City | string | Employer/Payer's city Size Range: ..50 |
ProvinceOrStateNm | string | Employer/Payer's province or state name Size Range: ..50 |
Country | string | Employer/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" |
PostalCd | string | Employer/Payer's postal code Size Range: ..16 |
ReturnData | object[] | Contains information about the employee details and Form W2 details. |
SequenceId | string | An 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 |
Employee | object | Object to identify the employee details. |
EmployeeId | Guid | OptionalAn 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. |
SSN | string | Employee's Social Security Number (SSN) Size Range: 9-11 |
FirstNm | string | Employee's first name. Size Range: 15 |
MiddleNm | string | Optional Employee's middle name. Size Range: 15 |
LastNm | string | Employee's last name. Size Range: 20 |
Suffix | string | Optional Employee's suffix.Allowed values"Jr", "Sr", "I", "II", "III", "IV", "V", "VI", "VII" |
string | Optional Employee's email address. Size Range: 0..100 Note : This email address cannot be the same for two different Employees under the same business. | |
Fax | string | Optional Employee's fax number. Size Range: 10 |
Phone | string | Optional Employee's phone number Size Range: 10 |
IsForeign | Boolean | When true, identifies the employee address with a foreign address. |
USAddress | object | Object to identify the employee's US address |
Address1 | string | Employee's US address (street address or post office box of that locality) Size Range: ..46 |
Address2 | string | Employee's suite or apartment Size Range: ..46 |
City | string | Employee's city Size Range: ..50 |
State | string | Employee'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" |
ZipCd | string | Employee's zip code Size Range: 5..10 |
ForeignAddress | object | If IsForeign is true, pass foreign address of the employee |
Address1 | string | Employee's foreign address (street address or post office box of that locality) Size Range: ..50 |
Address2 | string | Optional Employee's suite or apartment Size Range: ..50 |
City | string | Employee's city. Size Range: ..50 |
ProvinceOrStateNm | string | Employee's Province or State Name. Size Range: ..50 |
Country | string | Employee'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" |
PostalCd | string | Employee's Postal Code Size Range: ..16 |
W2FormData | object | Employee's Form W-2 information |
B1Wages | number | Gets the total taxable wages, tips, and other compensation paid by the employer to employees during the year. These figures should be prior to payroll deductions. Size Range: 0-999999999.99 |
B2FedTaxWH | number | Gets the total federal income tax withheld from the employee's wages for the year. Include the 20% excise tax withheld on excess parachute payments. Size Range: 0-999999999.99. |
B3SocSecWages | number | Gets the total wages paid (before payroll deductions) subject to employee social security tax. Size Range: 0-999999999.99 |
B4SocSecTaxWH | number | Gets the total amount of social security tax withheld from employees. Include only taxes withheld for wages and tips. Size Range: 0-999999999.99 |
B5MediWages | number | Gets the amount of wages and tips subject to medicare tax. These are similar to those subject to social security tax (boxes 3 and 7) except that there is no wage base limit for Medicare tax. Size Range: 0-999999999.99 |
B6MediTaxWH | number | Gets the amount of taxes withheld from employees for Medicare tax Size Range: 0-999999999.99 |
B7SocSecTips | number | Gets the tips reported by the employee for which the employer did not have enough employee funds to collect the social security tax for the tips. Size Range: 0-999999999.99 |
B8AllocatedTips | number | Gets the tips allocated to your employee if you operate a large food or beverage establishment. Size Range: 0-999999999.99 |
B10DependtCareBenefits | number | Gets the total amount of dependent care benefits paid or incurred by the employer for employees under a dependent care assistance program. Size Range: 0-999999999.99 |
B11Sec457Plan | number | Gets the amount distributed to an employee from the employer's non-qualified plan Size Range: 0-999999999.99 |
B11NonSec457Plan | number | Gets the amount distributed to an employee from the employer's non-governmental section 457(b) plan Size Range: 0-999999999.99 |
B12aAmt | number | Enter the amount value for the code selected under Box 12a. Size Range: 0-999999999.99 |
B12bAmt | number | Enter the amount value for the code selected under Box 12b. Size Range: 0-999999999.99 |
B12cAmt | number | Enter the amount value for the code selected under Box 12c. Size Range: 0-999999999.99 |
B12dAmt | number | Enter the amount value for the code selected under Box 12d. Size Range: 0-999999999.99 |
B12aCd | string | Enter the Box 12a Code.Allowed values"A", "B", "C", "D", "E", "F", "G", "H", "J", "K", "L", "M", "N", "P", "Q", "R", "S", "T", "V", "W", "Y", "Z", "AA", "BB", "CC", "DD", "EE", "FF", "GG", "HH" |
B12bCd | string | Enter the Box 12b Code.Allowed values"A", "B", "C", "D", "E", "F", "G", "H", "J", "K", "L", "M", "N", "P", "Q", "R", "S", "T", "V", "W", "Y", "Z", "AA", "BB", "CC", "DD", "EE", "FF", "GG", "HH" |
B12cCd | string | Enter the Box 12c Code.Allowed values"A", "B", "C", "D", "E", "F", "G", "H", "J", "K", "L", "M", "N", "P", "Q", "R", "S", "T", "V", "W", "Y", "Z", "AA", "BB", "CC", "DD", "EE", "FF", "GG", "HH" |
B12dCd | string | Enter the Box 12d Code.Allowed values"A", "B", "C", "D", "E", "F", "G", "H", "J", "K", "L", "M", "N", "P", "Q", "R", "S", "T", "V", "W", "Y", "Z", "AA", "BB", "CC", "DD", "EE", "FF", "GG", "HH" |
B13IsStatEmp | Boolean | When true, identifies the statutory employees whose earnings are subject to social security and Medicare taxes but not subject to federal income tax withholding. They are independent contractors under the common-law rules but are treated by statute as employees. |
B13IsRetPlan | Boolean | When true, identifies if the employee is an active participant of a retirement plan. |
B13Is3rdPartySickPay | Boolean | When true, identifies if the business reports third-party sick pay. |
B14Other | string | Gets any additional information that the employer wants to give to employees that cannot be reported in boxes 1-13. Examples include auto allowance, travel reimbursement, relocation expenses, job uniforms, after-tax employee contributions to an HSA, etc. Size Range: 1..51 |
ControlNum | string | Identifies individual Forms W-2 and this box is optional. |
States | object[] | Contains list of state returns information. |
B15StateCd | string | State Code of Employer's State. 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" |
B15StateIdNum | string | Identification Number of Employer's State. Size Range: ..20 |
B16StateWages | number | Amount of Wages, tips, etc for State. Size Range: 0-999999999.99 |
B17StateTax | number | Income Tax of State. Size Range: 0-999999999.99 |
LocalityData | object[] | Contains list of locality information about the state. |
LocalWages | number | Amount of Local Wages, tips, etc for State. Size Range: 0-999999999.99 |
LocalTax | number | Local Income Tax of State. Size Range: 0-999999999.99 |
LocalityNm | string | Locality name of State. |
TaxTypeCd | enum | Enter the Tax Type Code for the amount entered in "LocalWages" and "LocalTax".Allowed values"C City Income Tax", "D County Income Tax", "E School District Income Tax", "F Other Income Tax" |
County | enum | Enter the Indiana County code if the "TaxTypeCd" code is "D" - County Income Tax.Allowed values"Adams", "Allen", "Bartholomew", "Benton", "Blackford", "Boone", "Brown", "Carrol", "Cass", "Clark", "Clay", "Clinton", "Crawford", "Daviess", "Dearborn", "Decatur", "DeKalb", "Delaware", "Dubois", "Elkhart", "Fayette", "Floyd", "Fountain", "Franklin", "Fulton", "Gibson", "Grant", "Greene", "Hamilton", "Hancock", "Harrison", "Hendricks", "Henry", "Howard", "Huntington", "Jackson", "Jasper", "Jay", "Jefferson", "Jennings", "Johnson", "Knox", "Kosciusko", "LaGrange", "Lake", "LaPorte", "Lawrence", "Madison", "Marion", "Marshall", "Martin", "Miami", "Monroe", "Montgomery", "Morgan", "Newton", "Noble", "Ohio", "Orange", "Owen", "Parke", "Perry", "Pike", "Porter", "Posey", "Pulaski", "Putnam", "Randolph", "Ripley", "Rush", "St.Joseph", "Scott", "Shelby", "Spencer", "Starke", "Steuben", "Sullivan", "Switzerland", "Tippecanoe", "Tipton", "Union", "Vanderburgh", "Vermillion", "Vigo", "Wabash", "Warren", "Warrick", "Washington", "Wayne", "Wells", "White", "Whitley" |
SchoolDistrictNum | string | Enter the School District Number if the "TaxTypeCd" is "E" - School District Income Tax. |
EmployeeStateSpecificData | object | Contains employee specific data for the selected states. |
KS | object | Contains employee state specific data for Kansas. |
EmployeeContribution | number | Enter the amount of Employee Contribution to KPERS, KP & F and Judges. Size Range: 0-999999999.99 |
ME | object | Contains employee state specific data for Maine. |
MEPERScontribution | number | Enter the amount of pick-up contributions deducted from this employee’s salary and contributed to MEPERS on behalf of the employee. Size Range: 0-999999999.99 |
MD | object | Contains employee state specific data for Maryland. |
W4ExemptionCount | int | Enter the number of exemptions claimed on Form W-4. |
NJ | object | Contains employee state specific data for New Jersey. |
PvtFmlLeaveInsuranceNum | string | Enter the Private Family Leave Insurance Plan Number. Size Range: ..14 |
FmlLeaveInsuranceWH | number | Enter the amount withheld as Family Leave Insurance workers contributions. Size Range: 0-999.99 |
PvtDisabilityPlanNum | string | Enter the Private Disability Plan Number. Size Range: ..14 |
DisabilityInsuranceWH | number | Enter the amount withheld as workers’ contributions for Disability Insurance. Size Range: 0-999.99 |
CombNJUnempInsWrkFrceDevProgHCSubWH | number | Enter the amount withheld as workers contributions for Combined NJ unemployment insurance, Workforce Development Program and health Care Subsidy. Size Range: 0-999.99 |
DeffCompAmt | number | Enter the total employee elective deferrals to a Code Section 401(k) plan, made during the year. Size Range: 0-9999999.99 |
IsRetirementPlan | Boolean | When TRUE, identifies that the employee was an active participant (for any part of the year) in a retirement plan. |
OR | object | Contains employee state specific data for Oregon. |
DateFirstEmployed | date | Enter the date first employed. |
DateOfSeparation | date | Enter the date of separation. |
TaxableWagesForStateTransitTax | number | Enter the State Taxable Wages for Statewide Transit Tax. Size Range: 0-999999999.99 |
StateTransitTaxWH | number | Enter the Statewide Transit Tax Withheld. Size Range: 0-999999999.99 |
MA | object | Contains employee state specific data for Massachusetts. |
EeContributionMAPFML | number | Enter the Employee contribution for Paid Family and Medical Leave. Size Range: 0-999999999.99 |
StateReconData | object | Collects State Recon fields specific for each state. Click here, for the description of each state specific Recon fields. |
Request JSON
- Sample 1
- Sample 2
- Sample 3
Create a Form W2 return for the specific Business and include Employee and income information.
{
"SubmissionManifest": {
"SubmissionId": null,
"TaxYear": "2021",
"IsFederalFiling": true,
"IsStateFiling": true,
"IsPostal": true,
"IsOnlineAccess": true,
"IsScheduleFiling": false,
"ScheduleFiling": null
},
"ReturnHeader": {
"Business": {
"BusinessId": null,
"PayerRef": "3386",
"BusinessNm": "Snowdaze LLC",
"TradeNm": "Snow123",
"IsEIN": true,
"EINorSSN": "52-6664385",
"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": false,
"IsForeign": false,
"USAddress": {
"Address1": "3576 AIRPORT WAY",
"Address2": "UNIT 9",
"City": "FAIRBANKS",
"State": "AK",
"ZipCd": "99709"
},
"ForeignAddress": null
}
},
"ReturnData": [
{
"RecordId": null,
"SequenceId": "01",
"Employee": {
"EmployeeId": null,
"SSN": "266875724",
"FirstNm": "Mark",
"MiddleNm": "Freek",
"LastNm": "Linda",
"Suffix": "Sr",
"Email": "mark@sample.com",
"Fax": "4567891234",
"Phone": "4259631478",
"IsForeign": false,
"USAddress": {
"Address1": "1751 Kinsey Rd",
"Address2": "Main St",
"City": "Dothan",
"State": "AL",
"ZipCd": "36303"
},
"ForeignAddress": null
},
"W2FormData": {
"B1Wages": 50000.65,
"B2FedTaxWH": 5263.32,
"B3SocSecWages": 137000,
"B4SocSecTaxWH": 46.15,
"B5MediWages": 137700,
"B6MediTaxWH": 78.21,
"B7SocSecTips": 700,
"B8AllocatedTips": 45,
"B10DependtCareBenefits": 78,
"B11Sec457Plan": 96,
"B11NonSec457Plan": 0,
"B12aCd": "EE",
"B12aAmt": 32,
"B12bCd": "B",
"B12bAmt": 21,
"B12cCd": "E",
"B12cAmt": 213,
"B12dCd": "H",
"B12dAmt": 210,
"B13IsStatEmp": true,
"B13IsRetPlan": true,
"B13Is3rdPartySickPay": true,
"B14Other": "Real Estate 4500",
"ControlNum": "35231",
"States": [
{
"B15StateCd": "DE",
"B15StateIdNum": "9-999999999-123",
"B16StateWages": 1000.65,
"B17StateTax": 100.32,
"LocalityData": [
{
"LocalWages": 300.23,
"LocalTax": 100.45,
"LocalityNm": "Pristine"
}
]
},
{
"B15StateCd": "SC",
"B15StateIdNum": "123456789",
"B16StateWages": 100.65,
"B17StateTax": 50.32,
"LocalityData": [
{
"LocalWages": 856.23,
"LocalTax": 632.45,
"LocalityNm": "Pristine"
}
]
}
]
}
}
]
}
Create a Form W2 return with multiple Employees/forms.
{
"SubmissionManifest": {
"SubmissionId": null,
"TaxYear": "2021",
"IsFederalFiling": true,
"IsStateFiling": true,
"IsPostal": true,
"IsOnlineAccess": true,
"IsScheduleFiling": false,
"ScheduleFiling": null
},
"ReturnHeader": {
"Business": {
"BusinessId": null,
"PayerRef": "52415",
"BusinessNm": "Snowdaze LLC",
"TradeNm": "Snow123",
"IsEIN": true,
"EINorSSN": "52-6647385",
"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": false,
"IsForeign": false,
"USAddress": {
"Address1": "3576 AIRPORT WAY",
"Address2": "UNIT 9",
"City": "FAIRBANKS",
"State": "AK",
"ZipCd": "99709"
},
"ForeignAddress": null
}
},
"ReturnData": [
{
"RecordId": null,
"SequenceId": "01",
"Employee": {
"EmployeeId": null,
"SSN": "246875724",
"FirstNm": "Mark",
"MiddleNm": "Freek",
"LastNm": "Linda",
"Suffix": "Sr",
"Email": "mark@sample.com",
"Fax": "4567891234",
"Phone": "4259631478",
"IsForeign": false,
"USAddress": {
"Address1": "1751 Kinsey Rd",
"Address2": "Main St",
"City": "Dothan",
"State": "AL",
"ZipCd": "36303"
},
"ForeignAddress": null
},
"W2FormData": {
"B1Wages": 50000.65,
"B2FedTaxWH": 5263.32,
"B3SocSecWages": 137000,
"B4SocSecTaxWH": 46.15,
"B5MediWages": 137700,
"B6MediTaxWH": 78.21,
"B7SocSecTips": 700,
"B8AllocatedTips": 45,
"B10DependtCareBenefits": 78,
"B11Sec457Plan": 96,
"B11NonSec457Plan": 0,
"B12aCd": "EE",
"B12aAmt": 32,
"B12bCd": "B",
"B12bAmt": 21,
"B12cCd": "E",
"B12cAmt": 213,
"B12dCd": "H",
"B12dAmt": 210,
"B13IsStatEmp": true,
"B13IsRetPlan": true,
"B13Is3rdPartySickPay": true,
"B14Other": "Real Estate 4500",
"ControlNum": "35231",
"States": [
{
"B15StateCd": "DE",
"B15StateIdNum": "9-999999999-123",
"B16StateWages": 1000.65,
"B17StateTax": 100.32,
"LocalityData": [
{
"LocalWages": 300.23,
"LocalTax": 100.45,
"LocalityNm": "Pristine"
}
]
},
{
"B15StateCd": "SC",
"B15StateIdNum": "123456789",
"B16StateWages": 100.65,
"B17StateTax": 50.32,
"LocalityData": [
{
"LocalWages": 856.23,
"LocalTax": 632.45,
"LocalityNm": "Pristine"
}
]
}
]
}
},
{
"RecordId": null,
"SequenceId": "02",
"Employee": {
"EmployeeId": null,
"SSN": "264736884",
"FirstNm": "Liam",
"MiddleNm": "Levi",
"LastNm": "William",
"Suffix": "Sr",
"Email": "mark+1@sample.com",
"Fax": "4567891234",
"Phone": "4259631478",
"IsForeign": false,
"USAddress": {
"Address1": "1751 Kinsey Rd",
"Address2": "Main St",
"City": "Dothan",
"State": "AL",
"ZipCd": "36303"
},
"ForeignAddress": null
},
"W2FormData": {
"B1Wages": 50000.65,
"B2FedTaxWH": 5263.32,
"B3SocSecWages": 137000,
"B4SocSecTaxWH": 46.15,
"B5MediWages": 137700,
"B6MediTaxWH": 78.21,
"B7SocSecTips": 700,
"B8AllocatedTips": 45,
"B10DependtCareBenefits": 78,
"B11Sec457Plan": 96,
"B11NonSec457Plan": 0,
"B12aCd": "EE",
"B12aAmt": 32,
"B12bCd": "B",
"B12bAmt": 21,
"B12cCd": "E",
"B12cAmt": 213,
"B12dCd": "H",
"B12dAmt": 210,
"B13IsStatEmp": true,
"B13IsRetPlan": true,
"B13Is3rdPartySickPay": true,
"B14Other": "Real Estate 4500",
"ControlNum": "35231",
"States": [
{
"B15StateCd": "DE",
"B15StateIdNum": "9-999999999-123",
"B16StateWages": 1000.65,
"B17StateTax": 100.32,
"LocalityData": [
{
"LocalWages": 300.23,
"LocalTax": 100.45,
"LocalityNm": "Pristine"
}
]
},
{
"B15StateCd": "SC",
"B15StateIdNum": "123456789",
"B16StateWages": 100.65,
"B17StateTax": 50.32,
"LocalityData": [
{
"LocalWages": 856.23,
"LocalTax": 632.45,
"LocalityNm": "Pristine"
}
]
}
]
}
}
]
}
Create a Form W2 return with BusinessId and EmployeeId.
{
"SubmissionManifest": {
"SubmissionId": null,
"TaxYear": "2021",
"IsFederalFiling": true,
"IsStateFiling": true,
"IsPostal": true,
"IsOnlineAccess": true,
"IsScheduleFiling": false,
"ScheduleFiling": null
},
"ReturnHeader": {
"Business": {
"BusinessId": "6e3195f2-4a56-4349-bb19-69d5f1bb5393"
}
},
"ReturnData": [
{
"RecordId": null,
"SequenceId": "01",
"Employee": {
"EmployeeId": "9f17aa4d-3b5c-4dbf-9f93-a5548e97869b"
},
"W2FormData": {
"B1Wages": 50000.65,
"B2FedTaxWH": 5263.32,
"B3SocSecWages": 137000,
"B4SocSecTaxWH": 46.15,
"B5MediWages": 137700,
"B6MediTaxWH": 78.21,
"B7SocSecTips": 700,
"B8AllocatedTips": 45,
"B10DependtCareBenefits": 78,
"B11Sec457Plan": 96,
"B11NonSec457Plan": 0,
"B12aCd": "EE",
"B12aAmt": 32,
"B12bCd": "B",
"B12bAmt": 21,
"B12cCd": "E",
"B12cAmt": 213,
"B12dCd": "H",
"B12dAmt": 210,
"B13IsStatEmp": true,
"B13IsRetPlan": true,
"B13Is3rdPartySickPay": true,
"B14Other": "Real Estate 4500",
"ControlNum": "35231",
"States": [
{
"B15StateCd": "DE",
"B15StateIdNum": "9-999999999-123",
"B16StateWages": 1000.65,
"B17StateTax": 100.32,
"LocalityData": [
{
"LocalWages": 300.23,
"LocalTax": 100.45,
"LocalityNm": "Pristine"
}
]
},
{
"B15StateCd": "SC",
"B15StateIdNum": "123456789",
"B16StateWages": 100.65,
"B17StateTax": 50.32,
"LocalityData": [
{
"LocalWages": 856.23,
"LocalTax": 632.45,
"LocalityNm": "Pristine"
}
]
}
]
}
}
]
}
Response Body
Field | Type | Description |
---|---|---|
StatusCode | number | Returns the HTTP status codes like 200,300 etc. |
StatusName | string | Name of the status code |
StatusMessage | string | Detailed status message |
SubmissionId | Guid | Unique identifier of a submission |
BusinessId | Guid | Unique identifier of a Business. |
PayerRef | string | Unique identifier of a Payer. |
FormW2Records | object | Pulls the Form W-2 records with Success and Error statuses |
SuccessRecords | object[] | It will show the detailed information about the success status of Form W2 Records |
SequenceId | string | An 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. |
RecordId | Guid | An unique identifier generated by TaxBandits when a W2 return is created. |
EmployeeId | Guid | An unique identifier generated by TaxBandits for a employee when a W2 return is created. You can use this id for your future reference to Update. |
FederalReturn | object | Returns the record status and StatusTs of federal return. |
Status | string | Returns the record status. |
StatusTs | string | Returns date and time of return created. |
Info | string | Returns information about the Federal Filing service. |
StateReturns | object[] | Returns collection of state returns information |
StateCd | string | Returns the state code of the state for which the return is filed. |
Status | string | Returns the record status of the state return. |
StatusTs | string | Date and time of the return created. |
Info | string | Returns the information about the state for which we are not supporting state filing. |
Errors | object[] | Shows error information of state returns of Form W2 |
Id | string | Returns the validation error Id. |
Name | string | Name of the validation error. |
Message | string | Description of the validation error. |
Postal | object | Returns the status and StatusTs of postal mailing service for Form W2. |
Status | string | Returns the status of postal order. |
StatusTs | string | Returns the date and time of the postal order created. |
Info | string | Returns the information about Postal mailing service. |
OnlineAccess | object | Returns the Email address for whom the online access to be given and Status of online access. |
Status | string | Returns the Status of the Online Access. |
string | Email address for whom the online access to be given. | |
Info | string | Information about the online access service. |
ScheduleFiling | object | Returns the date of the schedule filing. |
ScheduledOn | string | Date of the schedule filing to know when the return to be filed to the IRS. |
Info | string | Information about Schedule Filing service. |
ErrorRecords | object[] | It will show the detailed information about the error status of Form W2 Records. |
SequenceId | string | An 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. |
RecordId | Guid | Unique identifier of a record |
Errors | object[] | Shows detailed error information |
Id | string | Returns the validation error Id |
Name | string | Name of the validation error |
Message | string | Description of the validation error |
Errors | object[] | Shows detailed error information |
Id | string | Returns the validation error Id |
Name | string | Name of the validation error |
Message | string | Description of the validation error |
Response JSON
- 200
- 300
- 400
- 401
Success Response - This is a sample response for successful API requests.
{
"StatusCode": 200,
"StatusName": "Ok",
"StatusMessage": "Successful API call",
"SubmissionId": "bed9ab3e-3c61-4d81-bbd7-8e5053e14fe5",
"BusinessId": "12c14e0a-c811-4608-9772-cac727defbea",
"PayerRef": "3386",
"FormW2Records": {
"SuccessRecords": [
{
"SequenceId": "01",
"RecordId": "b67ceebc-acdf-40da-801c-8f7fefaac27b",
"EmployeeId": "9dbc1f63-1e67-4945-90f8-45e108f4c29b",
"FederalReturn": {
"Status": "CREATED",
"StatusTs": "2024-06-27 09:34:14 -04:00",
"Info": null,
"Errors": null
},
"StateReturns": [
{
"StateCd": "DE",
"Status": "CREATED",
"StatusTs": "2024-06-27 09:34:14 -04:00",
"Info": null,
"Errors": null
},
{
"StateCd": "SC",
"Status": "CREATED",
"StatusTs": "2024-06-27 09:34:14 -04:00",
"Info": "You should take care of filing Form WH-1606, Fourth Quarter/Annual Withholding Tax Reconciliation Report, with the state of South Carolina. The due date to file Form WH-1606 is January 31,2024. https://dor.sc.gov/forms-site/Forms/WH1606.pdf",
"Errors": null
}
],
"Postal": {
"Status": "CREATED",
"StatusTs": "2024-06-27 09:34:14 -04:00",
"Info": null
},
"OnlineAccess": {
"Status": "CREATED",
"Email": "mark+5263@sample.com",
"Info": null
},
"ScheduleFiling": null
}
],
"ErrorRecords": null
},
"Errors": null
}
Multi-status Response - You'll get the below response when multiple statuses are included.
{
"StatusCode": 300,
"StatusName": "MultiStatus",
"StatusMessage": "Multiple statuses are available for the request",
"SubmissionId": "5dcec755-e228-4060-857b-e2fb893e3fbc",
"BusinessId": "12610bd4-c1e6-4af3-be35-73a4608c56d5",
"PayerRef": "522215",
"FormW2Records": {
"SuccessRecords": [
{
"SequenceId": "01",
"RecordId": "ef09e90c-c686-4cc1-b4a1-f739a09ede14",
"EmployeeId": "1cefb351-1d51-41a9-b5b9-64515ec3adfa",
"FederalReturn": {
"Status": "CREATED",
"StatusTs": "2024-06-29 02:47:41 -04:00",
"Info": null,
"Errors": null
},
"StateReturns": [
{
"StateCd": "DE",
"Status": "CREATED",
"StatusTs": "2024-06-29 02:47:41 -04:00",
"Info": null,
"Errors": null
},
{
"StateCd": "SC",
"Status": "CREATED",
"StatusTs": "2024-06-29 02:47:41 -04:00",
"Info": "You should take care of filing Form WH-1606, Fourth Quarter/Annual Withholding Tax Reconciliation Report, with the state of South Carolina. The due date to file Form WH-1606 is January 31,2024. https://dor.sc.gov/forms-site/Forms/WH1606.pdf",
"Errors": null
}
],
"Postal": {
"Status": "CREATED",
"StatusTs": "2024-06-29 02:47:41 -04:00",
"Info": null
},
"OnlineAccess": {
"Status": "CREATED",
"Email": "mark@sample.com",
"Info": null
},
"ScheduleFiling": null
}
],
"ErrorRecords": [
{
"SequenceId": "02",
"RecordId": null,
"Errors": [
{
"Id": "F04-100186",
"Name": "ReturnData.Employee.SSN",
"Message": "SSN should be 9 digits"
},
{
"Id": "F00-100236",
"Name": "Recipient.TIN",
"Message": "Enter a valid TIN"
}
]
}
]
},
"Errors": [
{
"Id": "F00-100155",
"Name": "Error Records",
"Message": "Some of the records are errored. Please read the Error Records for more details."
}
]
}
Bad Request Response - You'll get the below response when your API requests contain any validation errors.
{
"StatusCode": 400,
"StatusName": "BadRequest",
"StatusMessage": "Validation error has occurred",
"SubmissionId": "00000000-0000-0000-0000-000000000000",
"BusinessId": "12c14e0a-c811-4608-9772-cac727defbea",
"PayerRef": "3386",
"FormW2Records": {
"SuccessRecords": null,
"ErrorRecords": [
{
"SequenceId": "01",
"RecordId": null,
"Errors": [
{
"Id": "F04-100094",
"Name": "ReturnData.Employee",
"Message": "Return already exist for the SSN (XXX-XX-8245)"
},
{
"Id": "F04-100190",
"Name": "ReturnData.Employee.FirstNm",
"Message": "FirstName is required"
}
]
}
]
},
"Errors": null
}
Unauthorized Response - You'll get the below response when your API requests don't contain valid authentication credentials.
{
"StatusCode": 401,
"StatusName": "Unauthorized",
"StatusMessage": "Invalid authorization credentials",
"Errors": [
{
"Id": "AUTH-100018",
"Name": "Authorization",
"Message": "JWT EXPIRED"
}
]
}