Skip to content
Create account
or
Sign in
The Stripe Docs logo
/
Ask AI
Create account
Sign in
Get started
Payments
Finance automation
Platforms and marketplaces
Money management
Developer tools
Get started
Payments
Finance automation
Get started
Payments
Finance automation
Platforms and marketplaces
Money management
Overview
Get started with Connect
Integration fundamentals
Example integrations
Onboard accounts
Configure account Dashboards
Accept payments
Pay out to accounts
Manage your Connect platform
Tax forms for your Connect platform
    Overview
    Get started with tax reporting
    1099 Tax Support and Communication Guide
    Tax form settings
    Calculation methods
    Identity information on tax forms
    File tax forms
    File tax forms with states
    Identify forms with missing information
    Update and create tax forms
    Deliver tax forms
    Deliver tax forms with the Express Dashboard
    Correct tax forms
    Split tax forms
    Tax year changeover
    Platform tax reporting (non-US)
Work with connected account types
HomePlatforms and marketplacesTax forms for your Connect platform

Update and create 1099 tax forms

Update and create 1099 tax forms for connected accounts.

Copy page

Getting your 1099 Forms

If you work for a platform that pays you through Stripe and want to learn about your 1099 forms and how to get them, see 1099 tax forms on the Stripe Support site.

Stripe automatically generates tax forms for all connected accounts that have transactions in a given tax year. Tax forms are available on the Tax reporting page in the Dashboard. If you need to update or correct a 1099 form, you can do so in one of the following ways:

  • Use the Tax form editor-Use the editor in the Dashboard to change the values used in a new 1099 form.
  • Export the form as a comma separated value (CSV) file-Export a tax form to a CSV file, modify the values in the CSV file, then import the updated CSV file to generate a new 1099 form with the updated values.

You can also create new tax forms by importing CSV files. If your connected account doesn’t already have a tax form, performing Update or Delta imports automatically creates the form.

Click Create to create a standalone tax form that isn’t associated with a connected account. You must include all columns except for form_id and stripe_account_id. E-delivery isn’t available for standalone forms (only postal mailing is allowed for delivery). If you’re creating a standalone form of a non-default form type, you must include the CSV headers of that form type. If you need assistance getting the correct CSV headers, reach out to support@stripe.com.

You can export tax forms to verify data at scale against your internal systems or to prepare for a subsequent import. Whatever your rationale, you can export tax forms by clicking the Export button, then Export CSV. Choose the type of tax form to export, which also defines the CSV file that you download. This choice overrides any tax form type filter, if set. If you have multiple types of 1099 forms (for example, 1099-K for some recipients and 1099-NEC for others), you must export them separately.

You can also choose whether or not to export the tax identification number (TIN). If you don’t include the TIN, the TIN column shows a masked value (for example, *********). If you include the TIN, the value appears masked to the last 4 digits (for example, *****1234).

The export considers any filters that you apply. You can see any applied filters by hovering over the information icon in the lower left corner of the export dialog.

After you initiate an export you can monitor it on the Exports & imports tab. An export expires 7 days after initiation.

Export tax forms to CSV file format

Import tax forms

Stripe provides values for payee data and form totals whenever possible. However, you can supply your own totals, for example if you provided reimbursements or otherwise altered the totals. You can also import data to correct a filed tax form.

Note

The maximum allowed file size is 75 MB.

When it comes to altering form totals specifically, you have 2 options:

  • Overwrite the existing values with your own totals (CSV Import -> Update)
  • Add to the existing values with your deltas (CSV Import -> Delta).

Overwriting existing values with Update

Importing tax forms allows you to override most of the values supplied on the initial tax form by Stripe. When you import tax forms, Stripe uses the imported values and files the tax forms in accordance with the information you provide. If you make updates in the Dashboard after importing from CSV, the updates aren’t recorded in the filed tax forms. If you need to return to the Stripe-supplied values, contact Stripe support.

To import tax forms:

  1. Click Import.
  2. Choose the type of tax form to import.
  3. Specify whether or not you’ve already filed it.

You’re not required to supply a payee’s TIN on import. If you provide a 9-digit number for the TIN, it overrides the Stripe-supplied value. Stripe ignores any other value and retains the Stripe-supplied value.

Leading Zeros

Tools like Google Spreadsheet and Excel usually delete any leading zeros in a CSV. For example, ‘000001234’ becomes ‘1234’ when exported as a CSV and opened in excel. If you export a form as a CSV that has leading zeros in the TIN, importing that same CSV form will fail if the zeros have been deleted. If this happens, add the leading zeros back in the TINs that had them originally and try again.

After you initiate an import you can monitor it on the Exports & imports tab.

Import tax forms page with Update selected.

Adding to existing values with Delta

Importing tax forms using Delta allows you to add to (or subtract from) the values on the initial tax form totals by Stripe. This lets platforms report just the totals of transactions that happened outside of Stripe. Without this functionality you would have to download the existing values from Stripe, then sum the values from Stripe with the external values, and then import the final values. Instead, just provide the delta amounts and Stripe does the rest. This is particularly useful if you have multiple payout mechanisms or reimbursements on Stripe connected accounts for activity that happened outside of Stripe.

To import a form using Delta, click Import, then choose the type of tax form to import. Select Delta, and then choose the file that contains the delta totals data.

Import tax forms page with Update selected.

Frequently asked questions about Deltas

This section provides answer to common questions about using Deltas for 1099 tax forms in Connect.

Can there be negative values as deltas (e.g. reimbursements made which needs to reduce the total on 1099)?

Yes.

If I send multiple delta amounts, do they get overwritten or are they additive?

They get overwritten, so if on stripe_account_id S1 there was a delta added for 10 USD, and then another delta was added for 20 USD, the final delta amount applied is 20 USD and not 30 USD.

If my calculation method changes or the total changes after I have applied a delta, does the delta still persist?

Yes. To learn more about calculation methods, see Choose a calculation method.

Will I be able to filter to just the forms that had deltas applied?

Yes

Can I undo the delta values that I just imported?

Yes, you can use Revert to revert to the Stripe-calculated totals in the form. This restores the value in the form to the value calculated by Stripe after you import CSV files with different values using Update or Delta, or changes you made using the Dashboard.

If I update a value for a stripe_account_id using a Delta, can I also overwrite the amount with a CSV update and/or the tax form editor?

Yes, Deltas are applied on top of the stripe calculated total / platform’s overwritten totals. The changes made on the Stripe dashboard UI (Tax form editor) overwrite any other changes. The examples in the following table demonstrate how Stripe determines the final values for a connected account after Deltas and Updates.

ScenarioFinal valueValue after Revert
Stripe calculated (100 USD)100 USD100 USD
Stripe calculated (100 USD) -> CSV Import (update) (150 USD)150 USD100 USD
Stripe calculated (100 USD) -> Tax form editor Edit (200 USD)200 USD100 USD
Stripe calculated (100 USD) -> CSV Import (Delta) (+25 USD)125 USD100 USD
Stripe calculated (100 USD) -> CSV Import (Update) (150 USD)-> Tax form editor Edit (200 USD)200 USD100 USD
Stripe calculated (100 USD) -> CSV Import (Update) (150 USD)-> CSV Import (Delta) (+25 USD)175 USD100 USD
Stripe calculated (100 USD) -> Tax form editor Edit (200 USD) -> CSV Import (Delta) (+25 USD)225 USD100 USD
Stripe calculated (100 USD) -> CSV Import (Delta) (+25 USD) -> Tax form editor Edit (200 USD)200 USD100 USD
Stripe calculated (100 USD) -> CSV Import (Delta) (+25 USD) -> Tax form editor Edit (200 USD) -> CSV Import (update) (150 USD)175 USD100 USD

Improvements to CSV imports

CSV imports no longer require supplying all columns when updating values for your 1099 tax forms. Include only the columns in the CSV for the data that you want to change, along with either form_id or stripe_account_id values, which uniquely identify forms in Stripe. When you import a CSV for a correction, you must include a form_id field value. Columns that don’t exist in the CSV import schema default to the values that are on the corresponding tax form. We might perform validation on fields even if you don’t include them in the import. If we find validation errors, the import fails and the changes aren’t applied.

Override the tax form status

Stripe calculates a status for each tax form based on the type of form, year-to-date amount, and information completeness. You can override a tax form’s status by setting a value for the filing_requirement field on import. This field can have one of the following values:

  • NOT_REQUIRED – Don’t file the form, even if it meets the threshold and is complete.
  • REQUIRED – File the form, even if it doesn’t meet the threshold or is incomplete. Conceptually this is the combination of FILE_EVEN_IF_INCOMPLETE and FILE_EVEN_IF_BELOW_THRESHOLD.
  • FILE_EVEN_IF_INCOMPLETE – File the form if it’s above the threshold, even if it isn’t complete.
  • FILE_EVEN_IF_BELOW_THRESHOLD – File the form if it’s complete, even if it’s below the threshold.
  • DEFAULT – Use federal and state thresholds to decide whether a form should be filed. This is what the initial filing requirement value is for all forms, which can be overridden to one of the other values by platform admins.

Override the delivery method

Stripe uses your platform’s tax settings to determine whether to use postal delivery for your forms by DEFAULT. You can override a tax form’s delivery method for an account by setting a value for the postal_delivery field on import. This field can have one of the following values:

TRUE - Postal deliver the form when filed, even if the platform’s tax settings don’t require it or the account holder provided consent to paperless delivery.

FALSE - Do not postal deliver the form when filed, even if the platform’s tax settings require it or the account holder chose to decline paperless delivery.

DEFAULT - Use the platform’s tax settings to determine whether to postal deliver the form when filed.

Change the type of 1099 form

You can change the type of 1099 form for an account by setting a value for the form_type field on import. This field can have one of the following values:

k - To swap to a 1099-K form

misc - To swap to a 1099-MISC form

nec - To swap to a 1099-NEC form

1099 CSV schema

The schemas for 1099-NEC, 1099-K, and 1099-MISC are similar overall. Most fields in the CSV file map directly to a box on the tax form and are named accordingly. To get the column names for your CSV import, the best approach is to do a CSV export, change the values, delete the columns you aren’t changing, and import that CSV file.

Note

Refer to the IRS website for instructions on 1099 tax forms (for example, 1099-NEC instructions).

The following table describes the schema when you use Update or Correct to update values in a 1099 form.

FieldDescription
form_idThe ID of the tax form. You can’t change this value.
email_addressThe payee’s email address. You can’t change this value. To change a connected account’s email address, visit Connect communication settings or the 1099 tax forms dashboard.
statusThe federal filing status of the tax form. You can’t change this value. To force a tax form into a different status, use filing_requirements.
postal_deliveryWhether to mail the form. You can use this field to override your postal delivery default in tax form settings.
delivery_statusThe postal delivery status of the tax form. You can’t change this value.
stripe_account_idThe payee’s Stripe account ID. You can’t change this value.
filing_requirementUse this field to override a tax form status.
payee_name_line_1The payee’s name.
payee_name_line_2Overflow for the payee’s name, sometimes used for a doing business as (DBA) name.
payee_tinThe payee’s TIN. On export this is masked by default. Masked values are ignored on import.
payee_tin_typeThe type (business or individual) of a payee’s TIN. This field may be necessary for some state filings.
payee_address_line 1The first line of the payee’s address.
payee_address_line 2The second line of the payee’s address.
payee_cityThe payee’s city.
payee_regionThe payee’s state or region.
payee_postal_codeThe payee’s postal code.
payee_countryThe payee’s country.
payee_account_numberThe account number on the tax form. This field defaults to the stripe_account_id, but you can override the value on import.
january_amountThe total amount paid in January. Other months follow the same format.
nonemployee_compensationThe total compensation paid to the non-employee.
federal_income_tax_withheldThe total amount withheld from federal income taxes, if any.
state_tax_withheldThe total amount withheld from state income taxes, if any.
other_state_tax_withheldThe total amount withheld from the other state income taxes, if any.
state_filer_idThe payer’s ID for filing in the state.
other_state_filer_idThe payer’s ID for filing in the other state.
state_incomeThe payee’s state income.
other_state_incomeThe payee’s other state income.
fatca_filingWhether to check the Foreign Account Tax Compliance Act (FATCA) filing requirement.
second_tin_noticeUse this field to specify whether the payer has received a TIN notice for the payee twice in 3 calendar years.
paperless_delivery_consentUse this field to specify whether you have collected paperless delivery consent. Possible values are NOT_PROVIDED, PROVIDED, and REVOKED. NOT_PROVIDED means you have not collected consent. PROVIDED means you have collected consent. REVOKED means that the connected account does not want e-delivery and has explicitly declined to give consent. When importing, leaving the field empty defaults to NOT_PROVIDED.

The following table describes the schema for CSV export when you update the values in a tax form by adding a Delta to the value calculated by Stripe. Many of the fields are the same as the schema when you use Update or Correct. For fields that are different when using a Delta, the field names includes _delta at the end.

FieldDescription
form_idThe ID of the tax form. You can’t change this value and either form_id or stripe_account_id are the required values for the import with Delta.
stripe_account_idThe payee’s Stripe account ID. You can’t change this value.
nonemployee_compensation_deltaThe delta to add on the compensation paid to the non-employee total already in Stripe.
federal_income_tax_withheld_deltaThe delta to add on the total amount withheld from federal income taxes total already in Stripe.
state_tax_withheld_deltaThe delta to add on the amount withheld from state income taxes total already in Stripe.
state_income_deltaThe delta to add on the payee’s state income total already in Stripe.
january_amount_deltaThe delta to add on the january totals already in Stripe.
february_amount_deltaThe delta to add on the february totals already in Stripe.
royalties_deltaThe delta to add on the royalties total already in Stripe.
rents_deltaThe delta to add on the rents total already in Stripe.

User self-serve updates for connected accounts

If you signed up for stripe hosted e-delivery, you can have your users update their tax information themselves before their tax form is filed. If users update their information after filing, the tax form page shows an option to correct the filed 1099 form with the updated information. For more information, see Quick correct: Payee details.

Users can edit their Legal name, Taxpayer Identification Number (TIN), and address. Note that some information can’t be edited after a user’s legal entity is verified, including date of birth, and business type. To edit the information user must contact Stripe Support.

Was this page helpful?
YesNo
Need help? Contact Support.
Join our early access program.
Check out our changelog.
Questions? Contact Sales.
LLM? Read llms.txt.
Powered by Markdoc