API Components
Understanding the structure of TaxBandits API requests is essential to building a clean, reliable integration. This page covers the key components that make up the request body across form types, and the unique identifiers used throughout the API.
1099 Forms
Most form creation and update requests in the TaxBandits API share a common top-level structure.
| Component | Description |
|---|---|
SubmissionManifest | Defines the tax year and scheduling options for the submission |
ReturnHeader | Contains the business (payer or employer) details for the submission. |
ReturnData | An array of recipient, filing services, and form-level records. Up to 250 records per request. |
This page describes the API request structure for v2.0. If you are on v1.7.3, the structure may differ slightly. Refer to the v1.7.3 API Reference for the corresponding details.
SubmissionManifest
The SubmissionManifest object applies to the entire submission. It defines what tax year is being filed and which services are opted into.
| Field | Description |
|---|---|
TaxYear | The tax year for which forms are being filed. |
IsFederalFiling | Set to TRUE to schedule transmission to a future date |
IsStateFiling or StateFiling | The date to transmit to the IRS. Required when IsScheduleFiling is TRUE. Format: MM/DD/YYYY |
In v2.0, Filing services are configured at the ReturnManifest level within each record in ReturnData, not at the submission level. This allows different distribution preferences per recipient within the same submission.
ReturnHeader
The ReturnHeader object contains the business (payer or employer) details that apply to all records in the submission. The Business object within ReturnHeader is shared across 1099, W-2, 94X, and ACA forms.
You can either provide full business details when a business is being created or referenced using BusinessId or PayerRef.
Key fields
| Field | Description |
|---|---|
BusinessId | Unique identifier generated by TaxBandits when a business is created. Use this to reference an existing business without repeating its details. |
PayerRef | Your own identifier for the business. Can be used in place of BusinessId. |
TINDetails | TIN information for the business. Includes Format (PLAIN_TIN, ENCRYPTED_TIN, or TOKENIZED_TIN) and TINType, and TIN. |
BusinessNm | Legal name of the business. Required when TINType is EIN. |
IndividualNm | Required when TINType is SSN. Provide FirstNm and LastNm instead of BusinessNm. |
DBADetails | Optional. DBA (Doing Business As) information. Each DBA has its own DBAId. |
Address | Primary address of the business. |
ContactDetails | IRS contact person details for the business. |
ReturnData
ReturnData is an array that holds individual return records. Each record contains filing options, recipient details, and form data. Up to 250 records can be submitted in a single request.
ReturnManifest
Defines the filing services for a specific record. Settings here override or supplement the submission-level configuration.
| Field | Description |
|---|---|
IsFederal | Set to TRUE to e-file the return with the IRS |
IsState | Set to TRUE to file with the state agency. State filing will not be created for states that do not require it. |
IsDistribution | Set to TRUE to enable recipient copy distribution |
DistributionDetails.DistributionType | Distribution method.Allowed values
|
DistributionDetails.PostalType | Postal service type.Allowed value
|
IsForced | When TRUE, TaxBandits skips duplicate validation and creates a new return regardless of matching prior records |
Recipient
Contains the recipient's identity and contact details. You can reference an existing recipient using RecipientId or PayeeRef, or provide full recipient details inline.
| Field | Description |
|---|---|
RecipientId | Unique identifier generated by TaxBandits for the recipient. Use to reference an existing recipient. |
PayeeRef | Your own identifier for the recipient. Can be used in place of RecipientId. |
TINDetails | TIN information for the recipient. Includes Format, TINType, and TIN. |
RecipientNm | Legal name of the recipient business. Required when TINType is EIN. |
FirstNm | Required when TINType is SSN, ITIN, or ATIN. |
DBADetails | Optional DBA details for the recipient. |
Address | Primary address of the recipient. |
Email | Required when DistributionType includes ONLINE_ACCESS. |
Form Data
Form data fields are specific to each form type and are nested within the return record. For 1099-NEC, this object is NECFormData. For W-2, it is W2FormData, and so on.
Form data includes:
- Federal income fields reported to the IRS
Statesarray for state-level income and withholding dataStateReconDatafor state-specific reconciliation fields where required
W-2 Forms
W-2 forms follow the same top-level structure as 1099 forms with the following differences:
ReturnDatauses employee details rather than recipient details. The employee identifier isEmployeeId.- Federal data is reported to the SSA, not the IRS.
- Form-specific fields such as
KindOfEmployerandKindOfPayermust be set on theBusinessobject. StateReconDataapplies where required by state agencies.
94X Forms
94X forms (941, 940, 943, 944, 945) use a slightly different top-level wrapper called Form94XRecords, which contains ReturnHeader and ReturnData.
Key requirements specific to 94X:
SigningAuthoritymust be set on theBusinessobject before any 94X form can be filed.BusinessTypemust also be set on theBusinessobject.- Schedule R (for 941 and 940 aggregate filers) is submitted as part of the parent form's return data.
ACA Forms
ACA forms (1094-C, 1095-C) follow the same SubmissionManifest, ReturnHeader, ReturnData structure. ACA-specific fields such as ACASpecific on the Business object apply only to these form types.
Unique Identifiers
TaxBandits generates unique identifiers for every entity and record created through the API. These identifiers should be stored in your system for use in subsequent requests.
| Identifier | Scope | Description |
|---|---|---|
BusinessId | Business | Generated when a business is created. Primary reference for all form filings and entity operations. |
PayerRef | Business | Your own identifier for the business. Accepted in place of BusinessId across all endpoints. |
RecipientId | Recipient | Generated when a recipient record is created. Use to reference the recipient without repeating their details. |
PayeeRef | Recipient | Your own identifier for the recipient. Accepted in place of RecipientId. |
SubmissionId | Submission | Generated when a form submission is created. Required for Update, Get, and Transmit operations. |
RecordId | Return Record | Generated for each individual return within a submission. Use to update or reference a specific record. |
DBAId | DBA | Generated when a DBA is added to a business or recipient. |
DBARef | DBA | Your own identifier for the DBA. |
State Filing
When IsState is TRUE in ReturnManifest, the States array inside the form data object must be populated with state-specific fields:
| Field | Description |
|---|---|
StateCd | Two-letter state code |
StateWH | State income tax withheld |
StateIdNum | Payer's state identification number |
StateIncome | State income amount |
StateReconData | State-specific reconciliation data where required |
State filing will not be created for states that do not require it, even if IsState is set to TRUE.