Create
Create
Use this endpoint to create an Iowa Withholding Report for an employer (payer) to report the total Iowa income tax withheld from employee wages for a specified calendar quarter and remit the corresponding withholding tax due to the Iowa Department of Revenue.
The Iowa Withholding Report must be filed every quarter, even if no tax is withheld or no wages were paid.
POST StateFilings/IAWH/Create Request Body
| Field | Type | Description |
|---|---|---|
| StateWHRecords | Object | Object to identify the records. |
| SequenceId | String | A unique identifier for this record. Size Range: ..50 |
| ReturnHeader | Object | Contains business information. |
| TaxYear | String | The tax year for which the Form IA44095 is to be filed. Allowed values2025,2026 |
| Qtr | String | The quarter for which the Form IA44095 is to be filed. Allowed values"Q1", "Q2", "Q3", "Q4" |
| Business | object | Object to identify the Business Details. |
| BusinessId | Guid | Optional Use the unique Business ID (Generated by TaxBandits) that you received in the response of the Business CREATE Endpoint. If you 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 Your unique identifier for the payer. Can replace BusinessId in future requests. Size Range: 50 |
| IsDefaultBusiness | Boolean | When set to TRUE, this business will be set as the default across requests that do not specify a business. |
| TINDetails | object | TIN information for the business. |
| Format | string | Specifies how the TIN is passed.Allowed values"PLAIN_TIN" — Pass TIN directly |
| TINType | string | Specify the TIN type of the business.Allowed values"EIN" |
| TIN | string | The TIN value according to the Format selected. |
| BusinessNm | string | Legal name of the business. Required when TINType is EIN. Size Range: 75 |
| NameCtrl | string | Name control of the business as registered with the IRS. Size Range: 4 |
| DBADetails | object | Optional DBA (Doing Business As) information. |
| DBANm | string | Name of the DBA. Size Range: 75 |
| DBARef | string | Unique identifier for the DBA. Size Range: 1-50 |
| DBAId | Guid | TaxBandits-generated DBA identifier. |
| Address | object | Address information of the DBA. |
| Address1 | string | Street address or PO Box. Size Range: 46 |
| Address2 | string | Optional Suite or apartment number. Size Range: 46 |
| City | string | DBA's city. Size Range: 50 |
| ProvinceOrState | string | DBA's province or state name. When the country code is US: 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" Allowed values"AB", "BC", "MB", "NB", "NL", "NT", "NS", "NU", "ON", "PE", "QC", "SK", "YT" |
| Zipcd | string | DBA's ZIP code. Size Range: 5-16 |
| Country | string | DBA's 2-character country code.Allowed values"US","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" |
| Address | object | Primary address of the business. |
| Address1 | string | Street address or PO Box of the business. Size Range: 46 |
| Address2 | string | Optional Suite or apartment number of the business. Size Range: 46 |
| City | string | City of the business. Size Range: 50 |
| ProvinceOrState | string | Province or state name of the business. When the country code is US: 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" Allowed values"AB", "BC", "MB", "NB", "NL", "NT", "NS", "NU", "ON", "PE", "QC", "SK", "YT" |
| ZipCd | string | ZIP code of the business. Size Range: 5-16 |
| Country | string | 2-character country code of the business. Allowed values"US","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" |
| ContactDetails | object | Details of the person the IRS can contact regarding the given business. |
| FirstNm | string | First name of the contact person. Size Range: 20 |
| MiddleNm | string | Optional Middle name of the contact person. Size Range: 20 |
| LastNm | string | Last name of the contact person. Size Range: 20 |
| Suffix | string | Optional The suffix of the contact person.Allowed values"Jr", "Sr", "I", "II", "III", "IV", "V", "VI", "VII" |
| Phone | string | Optional Phone number of the contact person. Size Range: 10 digits |
| PhoneExtn | string | Optional Phone extension number. Size Range: 5 |
| string | Optional Email address of the contact person. Size Range: ..100 | |
| Fax | string | Optional Fax number of the contact person. Size Range: 10 digits |
| BusinessType | String | Legal structure of the business. Allowed values"ESTE", "PART", "CORP", "EORG", "SPRO", "SLGOV" |
| SigningAuthority | Object | Details of the person authorized to sign the return. Mandatory for 94x forms. |
| FirstNm | String | First name of the signatory. Size Range: 20 |
| MiddleNm | String | Optional Middle name of the signatory. Size Range: 20 |
| LastNm | String | Last name of the signatory. Size Range: 20 |
| Suffix | String | Optional The suffix of the signatory. Allowed values"Jr", "Sr", "I", "II", "III", "IV", "V", "VI", "VII" |
| Phone | String | Optional Phone number of the signatory Size Range: 10 |
| PhoneExtn | String | Optional Phone extension number of the signatory. Size Range: 5 |
| BusinessMemberType | String | Optional Title or role of the signatory. 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", "REPORTINGAGENT" |
| ReturnData | Object | Contains the return information. |
| IA44095 | Object | Identifies the Form Iowa data. |
| WHIdNumber | String | Iowa withholding file number. Sample Format: XXXXXXXXX Size Range: 9 |
| IsChangeOfAddress | Boolean | Optional When true, it indicates there is a change of the address. Note: The Business Address associated with the Business ID will be used as the updated address. |
| IsNoWageReported | Boolean | Optional When true, indicates that no wage is reported in this quarter. |
| DepositScheduleType | String | Deposit schedule type of the IA44095. Allowed values"MONTHLY", "SEMI_MONTHLY", "QUARTERLY" |
| TotalTaxWithheld | Number | Optional Total tax withheld from all sources for the filing period. Size Range: 0-999999999999999999.99 |
| DepositsOrOverpayments | Number | Optional Monthly deposits or overpayments. Size Range: 0-999999999999999999.99 |
| NewJobsCredits | Object | Optional Object that contains New Jobs Credit details. |
| CertificateNumber | String | Optional Certificate number of new job credit. Size Range: 12 |
| Amount | Number | Optional Total new job credit amount. Size Range: 0-999999999999999999.99 |
| SupplementalJobsCredit | Object | Optional Object that contains Supplemental job credit details. |
| CertificateNumber | String | Optional Certificate number for Supplemental job credit. Size Range: 12 |
| Amount | Number | Optional Total Supplemental job credit amount. Size Range: 0-999999999999999999.99 |
| AcceleratedCareerEducationCredit | Object | Optional Object that contains accelerated career education credit details. |
| CertificateNumber | String | Optional Certificate number of accelerated career education credit. |
| Amount | Number | Optional Total accelerated career education credit amount. Size Range: 0-999999999999999999.99 |
| TargetedJobsCredit | Object | Optional Object that contains Targeted Jobs Credit details. |
| CertificateNumber | String | Optional Certificate number of Targeted Jobs Credit. |
| Amount | Number | Optional Total Targeted Jobs Credit amount. Size Range: 0-999999999999999999.99 |
| TotalCreditAmount | Number | Optional Total Credit amount. Size Range: 0-999999999999999999.99 |
| MonthlyLiability | Object | Optional Object that contains tax liable details if the tax deposit schedule given is "MONTHLY". |
| Month1TaxLiability | Number | Optional Tax total liability amount for month 1 of the quarter. Size Range: 0-999999999999999999.99 |
| Month2TaxLiability | Number | Optional Tax total liability amount for month 2 of the quarter. Size Range: 0-999999999999999999.99 |
| Month3TaxLiability | Number | Optional Tax total liability amount for month 3 of the quarter. Size Range: 0-999999999999999999.99 |
| BalanceDue | Number | Optional Balance due for the quarter. Size Range: 0-999999999999999999.99 |
| Penalty | Number | Optional Penalties for the quarter. Size Range: 0-999999999999999999.99 |
| Interest | Number | Optional Total interest amount for the quarter. Size Range: 0-999999999999999999.99 |
| TotalDue | Number | Optional Total amount due for the quarter. Size Range: 0-999999999999999999.99 |
| SemiMonthlyDeposit | Object | Optional Object that contains tax deposit details if the tax deposit schedule given is "SEMI_MONTHLY". |
| TaxLiability1 | Number | Optional The tax liability amount for the first liability period. Size Range: 0-999999999999999999.99 |
| TaxLiability2 | Number | Optional The tax liability amount for the second liability period. Size Range: 0-999999999999999999.99 |
| TaxLiability3 | Number | Optional The tax liability amount for the third liability period. Size Range: 0-999999999999999999.99 |
| TaxLiability4 | Number | Optional The tax liability amount for the fourth liability period. Size Range: 0-999999999999999999.99 |
| TaxLiability5 | Number | Optional The tax liability amount for the fifth liability period. Size Range: 0-999999999999999999.99 |
| TaxLiability6 | Number | Optional The tax liability amount for the sixth liability period. Size Range: 0-999999999999999999.99 |
| TaxLiability7 | Number | Optional The tax liability amount for the seventh liability period. Size Range: 0-999999999999999999.99 |
| TotalTaxLiability | Number | Optional The total tax liability amount for the quarter. Size Range: 0-999999999999999999.99 |
| StatePayment | Object | Optional Object that contains information about the payment details. |
| AccountType | String | Optional Bank account type. Allowed values"CHECKING", "SAVING" |
| BankName | String | Optional Bank account name of payment. Size Range: 1-30 |
| BankRoutingTransitNumber | String | Optional Bank Routing Number of payment. Size Range: 9 |
| BankAccountNumber | String | Optional Bank Account Number for payment. Size Range: 1-17 |
| PaymentAmount | Number | Optional Amount to be paid. Size Range: 0-9999999999.99 |
| PaymentRequestDate | String | Optional Date when the payment has to be made. Enter the date in the format: MM/DD/YYYY or MM-DD-YYYY. Example: 01/25/2026 |
Response Body
| Field | Type | Description |
|---|---|---|
| SubmissionId | Guid | Unique identifier for a submission. |
| SuccessRecords | object[] | Provides detailed information about the success status of Form IA44095 records. |
| SequenceId | string | A 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. |
| BusinessId | Guid | Unique identifier for the business (payer) generated by TaxBandits. |
| PayerRef | string | Unique identifier for the business (payer) provided by you. |
| RecordId | Guid | A unique identifier generated by TaxBandits when a Form IA44095 return is created. |
| FormType | string | Type of form. |
| Status | string | Returns the record status. |
| StatusTs | string | Returns the date and time when the return was created. |
| Info | string | Provides additional information about the return. |
| Errors | object[] | Displays error information related to the state returns of Form IA44095. |
| Id | string | Returns the validation error ID. |
| Name | string | Name of the validation error. |
| ErrorRecords | object[] | Provides detailed information about the error status of Form IA44095 records. |
| SequenceId | string | A 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 for the record. |
| Errors | object[] | Displays detailed error information. |
| Id | string | Returns the validation error ID. |
| Name | string | Name of the validation error. |
| Message | string | Description of the validation error. |
Request JSON
- Sample 1
{
"StateWHRecords": [
{
"SequenceId": "001",
"ReturnHeader": {
"Qtr": "Q1",
"TaxYear": "2026",
"Business": {
"PayerRef": "Snow123",
"BusinessId": null,
"IsDefaultBusiness": true,
"TINDetails": {
"Format": "PLAIN_TIN",
"TINType": "EIN",
"TIN": "45-9875461"
},
"IndividualNm": {
"FirstNm": "James",
"MiddleNm": "A",
"LastNm": "Anderson",
"Suffix": "Jr"
},
"BusinessNm": "Snowdaze LLC",
"NameCtrl": "SNOW",
"DBADetails": {
"DBANm": "Iceberg Icecreams",
"DBARef": "DBA1001",
"DBAId": null,
"IsDefaultDBA": true,
"Address": {
"Address1": "123 Main St",
"Address2": "Suite 1001",
"City": "Rock Hill",
"ProvinceOrState": "SC",
"ZipCd": "29730",
"Country": "US"
}
},
"Email": "james@sample.com",
"Address": {
"Address1": "123 Main St",
"Address2": "Suite 1001",
"City": "Rock Hill",
"ProvinceOrState": "SC",
"ZipCd": "29730",
"Country": "US"
},
"ContactDetails": {
"FirstNm": "James",
"MiddleNm": "A",
"LastNm": "Anderson",
"Suffix": "Jr",
"Phone": "8035551234",
"PhoneExtn": "101",
"Email": "contact@snowdaze.com",
"Fax": "8035555678"
}
}
},
"ReturnData": {
"IA44095": {
"WHIdNumber": "999999999999",
"IsChangeOfAddress": false,
"IsNoWageReported": false,
"DepositScheduleType": "MONTHLY",
"TotalTaxWithheld": "0.00",
"DepositsOrOverpayments": "0.00",
"NewJobsCredit": {
"CertificateNumber": null,
"Amount": "0.00"
},
"SupplementalJobsCredit": {
"CertificateNumber": null,
"Amount": "0.00"
},
"AcceleratedCareerEducationCredit": {
"CertificateNumber": null,
"Amount": "0.00"
},
"TargetedJobsCredit": {
"CertificateNumber": null,
"Amount": "0.00"
},
"TotalCreditAmount": "0.00",
"MonthlyDeposit": {
"Month1TaxLiability": "0.00",
"Month2TaxLiability": "0.00",
"Month3TaxLiability": "0.00"
},
"BalanceDue": "0.00",
"Penalty": "0.00",
"Interest": "0.00",
"TotalDue": "0.00",
"SemiMonthlyDeposit": {
"TaxLiability1": "0.00",
"TaxLiability2": "0.00",
"TaxLiability3": "0.00",
"TaxLiability4": "0.00",
"TaxLiability5": "0.00",
"TaxLiability6": "0.00",
"TaxLiability7": "0.00"
},
"TotalTaxLiability": "0.00"
},
"StatePayment": {
"BankName": "XYZ",
"PaymentAmount": "100",
"BankRoutingTransitNumber": "217555555",
"BankAccountNumber": "0000000001",
"AccountType": "Checking",
"PaymentRequestDate": "MM/DD/YYYY"
},
"TaxPreparerDetails": {
"PreparerName": "John",
"PTIN": "P43243498",
"FirmName": "ABC.LLC",
"FirmEIN": "12-3387158",
"FirmPhone": "1234567890",
"IsSelfEmployed": true,
"Address": {
"Address1": "1751 Kinsey Rd",
"Address2": "Main St",
"City": "Dothan",
"State": "AL",
"ZipCd": "36303",
"Country": null
}
}
}
}
]
}
Response JSON
- 200
Success Response - This is a sample response for successful API requests.
{
"SubmissionId": "01a01f04-5db4-7559-8aa7-b0d84d1be0c0",
"SuccessRecords": [
{
"SequenceId": "001",
"BusinessId": "6c173fe1-141c-4737-a621-8fa511cb6a26",
"PayerRef": null,
"RecordId": "01a01f04-5ece-7658-9c42-81d1df5bfbdb",
"FormType": "IA44095",
"Status": "CREATED",
"StatusTs": "2026-08-20 07:52:55 -04:00",
"Info": null,
"Errors": null
}
],
"ErrorRecords": null,
"Errors": null
}