# Embed W-9 and W-8 forms in your application

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

Guide: 1099 & W-9

# Embed W-9 and W-8 forms in your application

Use the Avalara 1099 & W-9 embedded document collection component to collect W-9 and W-8 forms directly in your application.

Use the Avalara 1099 & W-9 embedded document collection component to collect W-9, W-8BEN, and W-8BEN-E forms on a webpage you control. Use your own reference ID, such as a vendor ID.

In a production implementation, your server creates a `form_request` object and passes it to client-side JavaScript to launch the embedded form experience.

This guide demonstrates the workflow using the API documentation to create a `form_request` and a sample HTML page to pass that object to the embedded component.

Note

This guide is intended for use in a sandbox environment. For production use, use the production [API documentation](https://www.track1099.com/api_info/docs) and `w9-example.html`.

## Prerequisites

This guide takes less than 15 minutes to complete once you have the following:

-   An Avalara 1099 & W-9 account

    If you don’t have a subscription, contact [Avalara sales](https://www.avalara.com/us/en/products/1099/request-a-demo.html).

-   An authorization token to access the APIs

    Follow the [Authenticate using Client ID and Client Secret](/1099-and-w-9/fzg3425520933647/ "Authenticate with the Avalara 1099 & W-9 API using a client ID and client secret when your organization uses other Avalara products.") section to generate the token.

-   Ability to modify the source code of a local HTML file

Note

We recommend testing in a sandbox environment. Forms submitted in production count toward your subscription usage.

## Production requirements

To implement this workflow in a production environment, your application server must support the following capabilities:

-   Generate or retrieve a reference ID that uniquely identifies the current user, such as a vendor ID.
-   Make HTTPS JSON API requests to the Avalara 1099 & W-9 API.
-   Dynamically incorporate API responses into generated HTML or return them to client-side JavaScript.

Notice

A production implementation requires server-side code to create a `form_request` object and pass it to client-side JavaScript.

This guide demonstrates the process using the API documentation to create a `form_request` and a static HTML page to supply it to the embedded component.