# Create a 1099 form

Source: https://developer.avalara.com/products/avalara-1099-and-w9/integration-guides/1099-and-w-9/wbg4588837478933/

Guide: 1099 & W-9

# Create a 1099 form

Learn how to use the API endpoint to file individual 1099 forms for recipients.

**Endpoint**: `POST /1099/forms`

**Use case**:

Use this endpoint to file an individual 1099 form for a recipient. It supports a wide range of 1099-related forms such as:

-   `1099-NEC` - Nonemployee compensation
-   `1099-MISC` - Miscellaneous income
-   `1099-DIV`, `1099-K`, `1099-R`, `1042-S`, and others

This operation works well for real-time use cases or user interfaces where you enter forms one at a time. For bulk operations, use the `bulk-upsert` endpoint instead.

## 1 endpoint, multiple form types

Regardless of the form type, the API endpoint remains the same (`POST /1099/forms`). The structure of the payload changes. It has to align with the selected `type`.

-   `1099-NEC` requires fields like `nonemployeeCompensation`
-   `1099-MISC` uses fields such as `rents`, `royalties`, and `otherIncome`
-   Other types (for example, `1099-DIV`, `1099-K`) have their own field requirements

Supply a valid `issuerId` and all the required form-specific fields.

## Understand form-level action flags

Learn about the fields in the payload that configure automated services Avalara performs for forms.

The following fields in the payload allow you to configure which automated services Avalara performs on your behalf once you create the form:

-   `"federalEFile": yyyy-mm-dd`

    On this date, the system will automatically e-file the form with the IRS. This schedules the form for electronic transmission according to IRS deadlines.

-   `"stateEFile": yyyy-mm-dd`

    On this date, the system will also electronically file the form with the appropriate state tax authority, if applicable for the recipient's state.

    Note

    Not all states participate in combined federal/state e-filing. Avalara handles state routing logic internally based on this flag and the recipient's address.

-   `recipientEdelivery: yyyy-mm-dd`

    On this date the system will automatically e-deliver the form to the recipient, if you have provided the recipient e-mail.

-   `"postalMail": true`

    If `true`, Avalara will print and mail a paper copy of the form to the recipient’s mailing address via postal service.

-   `"tinMatch": true`

    If `true`, Avalara will perform a TIN Matching service with the IRS. This verifies that the recipient's name and TIN combination is valid to reduce the chances of IRS rejections or penalties.

    Note

    Recommended for all new recipients to ensure data integrity.

-   `"addressVerification": true`

    If `true`, Avalara will validate the recipient’s address. This helps reduce delivery failures and improves e-filing success rates.

    Note

    Address verification is especially helpful for physical mailings and state e-filing, where jurisdictional accuracy matters.

## Important restrictions on scheduling

Understand the restrictions and guidelines for scheduling forms, including IRS filing freeze period and date dependencies.

The following restrictions apply when scheduling forms for filing and delivery:

-   If any of the `federalEFile`, `stateEFile`, or `recipientEDelivery` dates are set between the current date and the beginning of the IRS filing freeze period for the next filing season, then the system will schedule the form to the respective date.
-   If any of the dates are in the past, then the system will schedule the form to the next available date.
-   If any dates fall within the IRS filing freeze period, the form will be scheduled to the next available date after the freeze period ends.
-   You can update a scheduled date but can’t revert a form back to unscheduled status. To unschedule, you must delete and recreate the form.
-   To create a form without scheduling it for submission to the IRS, state entity, or recipient, set the corresponding property to null: `federalEfile`, `stateEfile`, or `recipientEDelivery`.
-   The `stateEFile` date must be on or after the `federalEFile` date.

### IRS filing freeze period note

Each year, the IRS closes its e-File system for maintenance during an IRS filing freeze period (late November through mid-January) before the new filing season begins. During this time, you can’t electronically submit 1099 forms to the IRS. If you attempt to schedule an efile date during the IRS filing freeze period, Avalara will automatically adjust the submission to the next available date after the system reopens.

### Status tracking note

Each action flag (`federalEFile`, `stateEFile`, `recipientEDelivery`, `postalMail`, `tinMatch`, `addressVerification`) has a corresponding status that the API response returns whenever you create or update a form. You can also retrieve these statuses at any time using the GET method on the endpoints:

-   `GET /1099/forms` (to retrieve multiple forms)
-   `GET /1099/forms/{id}` (to retrieve a specific form)

For detailed information on these statuses, see the section [Retrieve the status of a 1099 form](/1099-and-w-9/ctb1706221641611/ "Learn how to retrieve the current status of a specific 1099 form, including filing, mailing, and validation details.").