Create
Create
Use this endpoint to create one or more Form 1099-R returns in a single submission. You can create up to 250 returns for a payer in a single request. When the request is successful, you’ll receive a SubmissionId, which uniquely identifies that submission.
TaxBandits lets you configure filing and distribution services at two levels:
- Submission level (SubmissionManifest)- Applies default settings for every return in the submission.
- Return level (ReturnManifest, inside each ReturnData entry) - Lets you override those defaults for a specific recipient's return.
Filing services
- Federal Filing - Set
IsFederalto TRUE to e-file the return with the IRS. - State Filing - Set
IsStateto TRUE to file with the relevant state agency. State filing will not be created for states that do not require it. - State-only filing - Set
IsStateto TRUE andIsFederalto FALSE. Use this when the federal return has already been filed outside of TaxBandits.
Distribution services
Enable recipient copy distribution by setting IsDistribution to TRUE and configuring DistributionDetails:
- Postal Mailing - Set
DistributionTypeto POSTAL_ONLY andPostalTypeto USPS_FIRST_CLASS. TaxBandits prints and mails the recipient copy via USPS First Class on your behalf. - Online Access - Set
DistributionTypeto ONLINE_ACCESS. The recipient'sEmailis required. They will be notified via email and can view and download their copy through a secure online portal.
If you want to enable both Postal Mailing and Online Access, set DistributionType to POSTAL_AND_ONLINE.
POST form1099r/create Request Body
| Field | Type | Description |
|---|---|---|
| SubmissionManifest | object[] | SubmissionManifest provides brief information about a particular submission on the whole. It contains information like - Submission ID - Tax Year - IsScheduleFiling & ScheduleFiling service details |
| TaxYear | string | Tax year of Form 1099-R to be filed.Allowed values"2025", "2026" |
| IsFederal | Boolean | Federal Filing will be enabled when the value is True. Form 1099-NEC will be sent directly to the IRS. |
| IsState | Boolean | State Filing will be enabled when the value is True. Form 1099-NEC will be directly filed with the respective recipient states. Note: State Filing will not be created for the states that do not require State filing. |
| IsDistribution | Boolean | When TRUE, recipient distribution is enabled (postal mail / online access/email). |
| DistributionDetails | object[] | Distribution configuration. Required when IsDistribution is TRUE. |
| DistributionType | string | Recipient copy distribution type.Allowed values"POSTAL_ONLY", "ONLINE_ACCESS", "POSTAL_AND_ONLINE" |
| PostalType | string | Postal service type.Allowed values"USPS_FIRST_CLASS" |
| IsScheduleFiling | Boolean | When true, schedule filing services will be enabled for Form 1099-R returns under this submission. |
| ScheduleFiling | object[] | Contains the preferred date to submit the returns to the IRS. Note: Required only when IsScheduleFiling is True. |
| EfileDate | string | Date of Schedule Filing. Enter the date in the format: MM/DD/YYYY or MM-DD-YYYY Example: 01/25/2026 or 01-25-2026 |
| ReturnHeader | object | Contains information about the Business details. |
| Business | object | Object to identify the Business Details. |
| BusinessId | Guid | 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", "SSN" |
| TIN | string | The TIN value according to the Format selected. |
| IndividualNm | object | Required when TINType is SSN. Provide individual name fields instead of BusinessNm. |
| FirstNm | string | The first name of the individual. Size Range: 20 |
| MiddleNm | string | Optional Middle name of the individual. Size Range: 20 |
| LastNm | string | The last name of the individual. Size Range: 20 |
| Suffix | string | Optional Suffix of the individual's name.Allowed values"Jr", "Sr", "I", "II", "III", "IV", "V", "VI", "VII" |
| 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: 3-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. Returned in the response. |
| IsDefaultDBA | Boolean | When TRUE, marks this DBA as the default. |
| Address | object[] | Address information of 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 |
| ProvinceOrStateNm | String | DBA's province or state name.Allowed valuesWhen the country code is US: |
| ZipCd | string | DBA's ZIP code. Size Range: 5-16 |
| Country | String | DBA's 2-character country code.Allowed values"US", "AF", "AX", "AL", "DZ", "AS", "AD", "AO", "AI", "AQ", "AG", "AR", "AM", "AW", "AT", "AU", "AZ", "BS", "BH", "BD", "BB", "BY", "BE", "BZ", "BJ", "BM", "BT", "BO", "BQ", "BA", "BW", "BV", "BR", "IO", "BN", "BG", "BF", "BI", "KH", "CM", "CA", "CV", "KY", "CF", "TD", "CL", "CN", "CX", "CC", "CO", "KM", "CG", "CD", "CK", "CR", "CI", "HR", "CU", "CW", "CY", "CZ", "DK", "DJ", "DO", "DM", "EC", "EG", "SV", "GQ", "ER", "EE", "ET", "FK", "FO", "FJ", "FI", "FR", "GF", "PF", "TF", "GA", "GM", "GH", "GI", "GR", "GL", "GD", "GP", "GU", "GT", "GG", "GN", "GW", "GY", "HT", "HM", "VA", "HN", "HK", "HU", "IS", "IN", "ID", "IR", "IQ", "IE", "IM", "IL", "IT", "JM", "JP", "JE", "JO", "KZ", "KE", "KI", "KP", "KR", "KW", "KG", "LA", "LV", "LB", "LS", "LR", "LY", "LI", "LT", "LU", "MO", "MK", "MG", "MW", "MY", "MV", "ML", "MT", "MH", "MQ", "MR", "MU", "YT", "MX", "FM", "MD", "MC", "MN", "ME", "MS", "MA", "MZ", "MM", "NA", "NR", "NP", "NL", "NC", "NZ", "NI", "NE", "NG", "NU", "NF", "MP", "NO", "OM", "PK", "PS", "PA", "PG", "PY", "PE", "PH", "PN", "PL", "PT", "PR", "QA", "RO", "RS", "RU", "RW", "BL", "SH", "KN", "LC", "MF", "PM", "VC", "WS", "SM", "ST", "SA", "SN", "RS", "SC", "SL", "SG", "SX", "SK", "SI", "SB", "SO", "ZA", "SS", "ES", "LK", "SD", "SR", "SJ", "SE", "CH", "SY", "TW", "TJ", "TZ", "TH", "TO", "TL", "TN", "TD", "TS", "TU", "TK", "TF", "TV", "UG", "UP", "AE", "UK", "UY", "UZ", "NH", "VE", "VM", "VQ", "WQ", "WF", "WI", "YM", "ZA", "ZI" |
| Address | object | Business address details. |
| 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", "DZ", "AS", "AD", "AO", "AI", "AQ", "AG", "AR", "AM", "AW", "AT", "AU", "AZ", "BS", "BH", "BD", "BB", "BY", "BE", "BZ", "BJ", "BM", "BT", "BO", "BQ", "BA", "BW", "BV", "BR", "IO", "BN", "BG", "BF", "BI", "KH", "CM", "CA", "CV", "KY", "CF", "TD", "CL", "CN", "CX", "CC", "CO", "KM", "CG", "CD", "CK", "CR", "CI", "HR", "CU", "CW", "CY", "CZ", "DK", "DJ", "DO", "DM", "EC", "EG", "SV", "GQ", "ER", "EE", "ET", "FK", "FO", "FJ", "FI", "FR", "GF", "PF", "TF", "GA", "GM", "GH", "GI", "GR", "GL", "GD", "GP", "GU", "GT", "GG", "GN", "GW", "GY", "HT", "HM", "VA", "HN", "HK", "HU", "IS", "IN", "ID", "IR", "IQ", "IE", "IM", "IL", "IT", "JM", "JP", "JE", "JO", "KZ", "KE", "KI", "KP", "KR", "KW", "KG", "LA", "LV", "LB", "LS", "LR", "LY", "LI", "LT", "LU", "MO", "MK", "MG", "MW", "MY", "MV", "ML", "MT", "MH", "MQ", "MR", "MU", "YT", "MX", "FM", "MD", "MC", "MN", "ME", "MS", "MA", "MZ", "MM", "NA", "NR", "NP", "NL", "NC", "NZ", "NI", "NE", "NG", "NU", "NF", "MP", "NO", "OM", "PK", "PS", "PA", "PG", "PY", "PE", "PH", "PN", "PL", "PT", "PR", "QA", "RO", "RS", "RU", "RW", "BL", "SH", "KN", "LC", "MF", "PM", "VC", "WS", "SM", "ST", "SA", "SN", "RS", "SC", "SL", "SG", "SX", "SK", "SI", "SB", "SO", "ZA", "SS", "ES", "LK", "SD", "SR", "SJ", "SE", "CH", "SY", "TW", "TJ", "TZ", "TH", "TO", "TL", "TN", "TD", "TS", "TU", "TK", "TF", "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 | Phone number of the contact person. Size Range: 10 digits |
| PhoneExtn | string | Optional Phone extension number. Size Range: 5 |
| Fax | string | Optional Fax number of the contact person. Size Range: 10 |
| ReturnData | object[] | Contains information about the recipient details and Form 1099-R details. |
| 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. Size Range: 50 |
| ReturnManifest | object[] | Filing options for this record. |
| IsFederal | Boolean | Federal Filing for the return will be enabled when the value is True. Form 1099-R will be sent directly to the IRS. |
| IsState | Boolean | State Filing for the return will be enabled when the value is True. Form 1099-R will be directly filed with the respective recipient states. Note: State Filing will not be created for the states that do not require State filing. |
| IsDistribution | Boolean | When TRUE, recipient distribution is enabled (postal mail / online access / email). |
| DistributionDetails | object[] | Distribution configuration. Required when IsDistribution is TRUE. |
| DistributionType | string | Recipient copy distribution type.Allowed values"POSTAL_ONLY", "ONLINE_ACCESS", "POSTAL_AND_ONLINE" |
| PostalType | string | Postal service type.Allowed values"USPS_FIRST_CLASS" |
| IsForced | Boolean | When TRUE, TaxBandits does not verify for duplicates and will create a new return for the recipient, even it comprises the same amounts as in previously filed returns. For more information on duplicate handling for Form 1099s, please click here. Note: If there are multiple returns filed for the recipient with the same account number, TaxBandits will append 3 random numbers at the end of the account number. |
| Recipient | object | Object to identify recipient details. |
| RecipientId | Guid | A unique ID generated by TaxBandits after the return is created and will be returned in the Response. You can use this ID for your future reference to update. |
| PayeeRef | string | Optional Your unique identifier for the recipient. Can replace RecipientId in future requests.Size Range: 50 |
| TINDetails | object | Recipient TIN information. |
| Format | string | Specifies how the TIN is passed.Allowed values
|
| TINType | string | TIN type of the recipient.Allowed values"EIN", "SSN", "ATIN", "ITIN", "NA" |
| TIN | string | The TIN value according to the Format selected. |
| IndividualNm | object | Required when TINType is SSN. Provide individual name fields instead of BusinessNm. |
| FirstNm | string | The first name of the individual. Size Range: 20 |
| MiddleNm | string | Optional The middle name of the individual. Size Range: 20 |
| LastNm | string | Last name of the individual. Size Range: 20 |
| Suffix | string | Optional The suffix of the individual’s name.Allowed values"Jr", "Sr", "I", "II", "III", "IV", "V", "VI", "VII" |
| BusinessNm | string | Legal name of the recipient business. Required when TINType is EIN. Size Range: 75 |
| NameCtrl | string | Name control of the business as registered with the IRS. Size Range: 3-4 |
| DBADetails | Object | Optional DBA (Doing Business As) information. |
| DBAId | GUID | TaxBandits-generated DBA identifier. Returned in the response. |
| DBANm | String | Name of the DBA. Size Range: 75 |
| DBARef | String | Your unique identifier for this DBA. 1-50 characters |
| Address | object[] | Address information of DBA |
| Address1 | String | Street address or PO Box. Max 46 characters |
| Address2 | String | Optional Suite or apartment number. Max 46 characters |
| City | String | DBA’s city. Max 50 characters |
| 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", "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. 5 - 16 characters |
| Country | String | DBA’s 2-character country code.Allowed values"US", "AF", "AX", "AL", "DZ", "AS", "AD", "AO", "AI", "AQ", "AG", "AR", "AM", "AW", "AT", "AU", "AZ", "BS", "BH", "BD", "BB", "BY", "BE", "BZ", "BJ", "BM", "BT", "BO", "BQ", "BA", "BW", "BV", "BR", "IO", "BN", "BG", "BF", "BI", "KH", "CM", "CA", "CV", "KY", "CF", "TD", "CL", "CN", "CX", "CC", "CO", "KM", "CG", "CD", "CK", "CR", "CI", "HR", "CU", "CW", "CY", "CZ", "DK", "DJ", "DO", "DM", "EC", "EG", "SV", "GQ", "ER", "EE", "ET", "FK", "FO", "FJ", "FI", "FR", "GF", "PF", "TF", "GA", "GM", "GH", "GI", "GR", "GL", "GD", "GP", "GU", "GT", "GG", "GN", "GW", "GY", "HT", "HM", "VA", "HN", "HK", "HU", "IS", "IN", "ID", "IR", "IQ", "IE", "IM", "IL", "IT", "JM", "JP", "JE", "JO", "KZ", "KE", "KI", "KP", "KR", "KW", "KG", "LA", "LV", "LB", "LS", "LR", "LY", "LI", "LT", "LU", "MO", "MK", "MG", "MW", "MY", "MV", "ML", "MT", "MH", "MQ", "MR", "MU", "YT", "MX", "FM", "MD", "MC", "MN", "ME", "MS", "MA", "MZ", "MM", "NA", "NR", "NP", "NL", "NC", "NZ", "NI", "NE", "NG", "NU", "NF", "MP", "NO", "OM", "PK", "PS", "PA", "PG", "PY", "PE", "PH", "PN", "PL", "PT", "PR", "QA", "RO", "RS", "RU", "RW", "BL", "SH", "KN", "LC", "MF", "PM", "VC", "WS", "SM", "ST", "SA", "SN", "RS", "SC", "SL", "SG", "SX", "SK", "SI", "SB", "SO", "ZA", "SS", "ES", "LK", "SD", "SR", "SJ", "SE", "CH", "SY", "TW", "TJ", "TZ", "TH", "TO", "TL", "TN", "TD", "TS", "TU", "TK", "TF", "TV", "UG", "UP", "AE", "UK", "UY", "UZ", "NH", "VE", "VM", "VQ", "WQ", "WF", "WI", "YM", "ZA", "ZI" |
| DOB | String | Optional Date of Birth of the recipient. Format: MM/DD/YYYY |
| Address | Object | Primary address of the recipient. |
| Address1 | String | Street address or PO Box of the recipient. Size Range: 46 |
| Address2 | String | Optional Suite or apartment number of the recipient. Size Range: 46 |
| City | String | City of the recipient. Size Range: 50 |
| ProvinceOrState | String | Province or state name of the recipient. 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", "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 recipient. Size Range: 5 - 16 |
| Country | String | 2-character country code of the recipient.Allowed values"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", "US", "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", "MP", "MU", "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" |
| string | Email address of the recipient. Size Range: 100 Note: Required if the DistributionType is ONLINE_ACCESS is set to true | |
| Fax | string | Optional Fax number of the recipient. Size Range: 10 |
| Phone | string | Optional Phone number of the recipient. Size Range: 10 |
| RFormData | object | Recipient's Form 1099-R information. |
| GrossDistribution | number | Gross Distribution - Get at least one distribution code. Size Range: 0-9999999999.99 |
| TaxableAmt | number | Taxable Amount - Gets the Taxable Amount Size Range: 0-9999999999.99 |
| IsTaxableAmtNotDetermined | Boolean | When True, the taxable amount of the payment entered for Gross distribution cannot be computed. |
| IsTotalDistribution | Boolean | When True, the payment shown in gross Distribution Amount is a total distribution that closes out the account. |
| CapitalGain | number | Capital Gain - Get the amount from a charitable gift annuity that is taxable as a capital gain. Size Range: 0-9999999999.99 |
| FedTaxWH | number | Federal Tax Withheld - Get any federal income tax withheld. Size Range: 0-9999999999.99 Note : This value should be less than the 40% sum of boxes 1, 2a, 3, 5, 6, 8, 9b and 10. |
| EmpContribution | number | Get the employee's contributions, designated Roth contributions, or insurance premiums that the employee may recover tax free this year. Size Range: 0-9999999999.99 |
| NUA | number | Get all the NUA in employer securities if this is a lump-sum distribution. If this is not a lump-sum distribution, get only the NUA in employer securities attributable to employee contributions. Size Range: 0-9999999999.99 |
| DistCodes | string | Get the appropriate code. More than one code may apply. Size Range: 2 Allowed values"1", " 18", "1B", " 1D", "1K", "1L", "1M", "1P", "2", "28", "2B", "2D", "2K", "2L", "2M", "2P", "3", "3D", "4", "48", "4A", "4B", "4D", "4G", "4H", "4K", "4L", "4M", "4P", "5", "6", "6W", "7", "7A", "7B", "7D", "7K", "7L", "7M", "8", " 81", "82", "84", "8B", "8J", "8K", "9", "A4", "A7", "B", "B1", "B2", "B4", "B7", "B8", "BG", "BL", "BM", "BP", "BU", "C", "CD", "D1", "D2", "D3", "D4", "D7", "DC", "E", "F", "G", "G4", "GB", "GK", "H", "H4", "J", "J8", "JP", "K1", "K2", "K4", "K7", "K8", "KG", "L", "L1", "L2", "L4", "L7", "LB", "M", "M1", "M2", "M4", "M7", "MB", "N", "P", "P1", "P2", "P4", "PB", "PJ", "Q", "R", "S", "T", "U", "UB", "W", "W6", "Y4","Y7", "YK", "Y" |
| IsIRASEPSIMPLE | Boolean | When True, it is a traditional IRA, SEP, or SIMPLE distribution or Roth conversion. |
| IsTrumpAccount | Boolean | Trump Account Indicator - When True, indicates that the distribution is associated with a Trump Account. |
| ExcessContrib | number | Get the amount of excess contributions or excess deferrals distributed to the recipient. Size Range: 0-9999999999.99 |
| Other | number | Get the current actuarial value of an annuity contract that is part of a lump-sum distribution. Size Range: 0-9999999999.99 |
| OtherPercentage | number | Get the percentage of the total annuity contract. |
| TotDistPercentage | number | Total Distribution Percentage - Get the percentage when reporting a total distribution to more than one person, such as when a participant is deceased, and an issuer distributes to two or more beneficiaries. If the percentage is 100, leave this field blank. Size Range: 2 |
| TotEmpContribution | number | Total employee contributions - Get the total employee distribution. Do not include any amounts recovered tax free in prior years. Size Range: 0-9999999999.99 |
| AmtToIRR5Years | number | Get the amount of the distribution allocable to an IRR made within the 5 year, beginning with the first day of the year in which the rollover was made. Size Range: 0-9999999999.99 |
| DesigRoth1stYear | number | Get the first year of the 5 tax-year periods. This is the year in which the recipient first established the designated Roth account.It should be in "YYYY" Format. Size Range: 4 |
| IsFATCAFiling | Boolean | When true, there is a FATCA Filing Requirement. |
| DateOfPayment | string | Get the date of payment for reportable death benefits under section 6050Y.It should be in "MM/DD/YYYY" format. Size Range: 8 |
| AccountNum | string | Account number of Payer having multiple accounts for a recipient for whom more than one Form 1099-R is filed. Size Range: 4..20 Note: If the account number on the return you file is the same as any previously filed return, TaxBandits will append 3 random numbers at the end of the account number. |
| States | object[] | Contains list of state returns information. |
| StateCd | string | State Code. Size Range: 2 |
| StateIdNum | string | Identification Number of State. Size Range: ..20 |
| StateWH | number | Income tax amount withheld for State. Size Range: 0-9999999999.99 |
| StateDistribution | number | Total state distribution amount. Size Range: 0-9999999999.99 |
| LocalDistribution | number | Local Distribution. Size Range: 0-9999999999.99 |
| LocalTax | number | Local income tax withheld. Size Range: 0-9999999999.99 |
| LocalityNm | string | Name of the Locality. Size Range: 20 |
Response Body
| Field | Type | Description |
|---|---|---|
| BusinessId | Guid | Unique identifier generated by TaxBandits. Store this for use in all subsequent requests. |
| PayerRef | string | Your unique identifier for the payer, as provided in the request. |
| DBARef | string | Your unique identifier for the DBA. |
| DBAId | Guid | Unique identifier generated for the DBA. |
| ScheduleFiling | object | Returns the date of the schedule filing. |
| EFileDate | string | Date of the schedule filing to know when the return to be filed to the IRS. |
| Form1099Type | string | Denotes the type of 1099 form. |
| Form1099Records | Guid | Contains Form 1099-R records with success and error statuses. |
| SuccessRecords | object[] | It will show the detailed information about the success status of Form 1099-R Records. |
| SequenceId | string | A unique reference ID for the submission that can be used to identify a particular record. |
| RecordId | Guid | An unique identifier generated by TaxBandits when a 1099-R return is created. |
| RecipientId | Guid | A unique reference ID for the submission that can be used to identify a particular record. |
| PayeeRef | string | Your unique identifier for the recipient, as provided in the request. |
| AccountNum | string | Account number of Payer having multiple accounts for a recipient for whom more than one Form 1099-R is filed. |
| Federal | object | Returns the record status and StatusTs of the federal return. |
| Status | string | Status of the operation. |
| StatusTs | string | Date and time of the return created. |
| Info | string | Returns information about the Federal Filing service. |
| State | object[] | Returns a collection of state return information. |
| StateCd | string | Returns the state code of the state for which the return is filed. |
| Status | string | Returns the record status of the state return. |
| StatusCd | string | Date and time of the postal creation. |
| StatusTs | string | Date and time of the return created. |
| Info | string | Returns the information about the return processed for the state. |
| Distribution | object[] | Returns information about the distribution. |
| DistributionType | string | Returns the distribution method used. |
| Postal | object[] | Returns information about postal mailing. |
| PostalType | string | Returns the postal service used. |
| Status | string | Returns the Postal status. |
| StatusCd | string | Detailed status code. |
| StatusTs | string | Date and time of the postal created. |
| Info | string | Returns the information about the postal order. |
| OnlineAccess | object | Returns the Email address for whom the online access to be given and Status of online access. |
| Status | string | Returns status of online access for Form 1099-R return. |
| string | Email address for whom the online access to be given. | |
| Info | string | Information about the online access service. |
| object[] | It will show the detailed information about the error status of Form 1099-R Records. | |
| SequenceId | string | A unique reference ID for the submission that can be used to identify a particular DBA. The Sequence ID will be returned in the Response for your reference. |
| RecordId | Guid | Unique identifier of a record. |
| Errors | object[] | Validation error details. |
| Id | string | Validation error code. |
| Name | string | Name of the validation rule that failed. |
| Message | string | Clear description of what went wrong and how to fix it. |
| Errors | object[] | Top-level request errors if the entire request cannot be processed. |
| Id | string | Validation error code. |
| Name | string | Name of the validation rule that failed. |
| Message | string | Clear description of what went wrong and how to fix it. |
Payload

Go Lang
Python
.NET C#

Ruby
Java

cURL
| Sample | Description | Action |
|---|---|---|
| Sample 1 | Business – EIN, Recipient – SSN (Individual) | |
| Sample 2 | Business – SSN (Individual), Recipient – EIN | |
| Sample 3 | 1099R Using the Tokenized TIN | |
| Sample 4 | Multiple 1099 R’s in the Single Payload | |
| Sample 5 | 1099 R Using the BusinessId and RecipientId | |
| Sample 6 | Filing Another 1099 R with same Data with IsForced Set as True | |
| Sample 7 | Sample with State Only Filing |
Sample 1
{
"SubmissionManifest": {
"TaxYear": "2026",
"IsFederal": true,
"IsState": true,
"IsDistribution": true,
"DistributionDetails": {
"DistributionType": "POSTAL_AND_ONLINE",
"PostalType": "USPS_FIRST_CLASS"
},
"IsScheduleFiling": false,
"ScheduleFiling": null
},
"ReturnHeader": {
"Business": {
"BusinessId": null,
"TINDetails": {
"Format": "PLAIN_TIN",
"TINType": "EIN",
"TIN": "72-5564874"
},
"IndividualNm": null,
"BusinessNm": "Horizon LLC",
"NameCtrl": "HORI",
"DBADetails": null,
"Address": {
"Address1": "2500 Horizon Parkway",
"Address2": "Suite 200",
"City": "Plano",
"ProvinceOrState": "TX",
"ZipCd": "75024",
"Country": "US"
},
"ContactDetails": {
"FirstNm": "Michael",
"MiddleNm": "A",
"LastNm": "Carter",
"Suffix": "Jr",
"Phone": "9725550100",
"PhoneExtn": "205",
"Email": "horizonllc@sample.com",
"Fax": "9725550199"
}
}
},
"ReturnData": [
{
"SequenceId": "1",
"ReturnManifest": {
"IsFederal": true,
"IsState": true,
"IsDistribution": true,
"DistributionDetails": {
"DistributionType": "POSTAL_AND_ONLINE",
"PostalType": "USPS_FIRST_CLASS"
},
"IsForced": false
},
"Recipient": {
"TINDetails": {
"Format": "PLAIN_TIN",
"TINType": "SSN",
"TIN": "321-44-5782"
},
"BusinessNm": null,
"NameCtrl": "THOM",
"IndividualNm": {
"FirstNm": "David",
"MiddleNm": "R",
"LastNm": "Thompson",
"Suffix": null
},
"DBADetails": null,
"Address": {
"Address1": "789 Market Street",
"Address2": "Suite 1200",
"City": "San Francisco",
"ProvinceOrState": "CA",
"ZipCd": "94103",
"Country": "US"
},
"Email": "david.thompson@sample.com",
"Fax": "2145550199",
"Phone": "2145550100"
},
"RFormData": {
"GrossDistribution": 2563,
"TaxableAmt": 0,
"IsTaxableAmtNotDetermined": true,
"IsTotalDistribution": false,
"CapitalGain": 880.8,
"FedTaxWH": 90,
"EmpContribution": 3450,
"NUA": 4,
"DistCodes": "5",
"IsSIRASEPSIMPLE": true,
"IsTrumpAccount": true,
"ExcessContrib": 880,
"Other": 80,
"OtherPercentage": 99,
"TotDistPercentage": 99,
"TotEmpContribution": 6780,
"AmtToIRR5Years": 897,
"DesigRoth1stYear": 1901,
"IsFATCAFiling": false,
"DateOfPayment": "12/3/2020",
"AccountNum": "9252",
"States": [
{
"StateCd": "CA",
"StateWH": 15.56,
"StateDistribution": 100,
"StateIdNum": "999999992",
"LocalDistribution": 300.23,
"LocalTax": 100.45,
"LocalityNm": "Pristine"
}
]
}
}
]
}
| Response | Description | Action |
|---|---|---|
| 200 | Success Response - You'll get the below response when the request is processed successfully. | |
| 207 | Multi-status Response - You'll get the below response when multiple statuses are included. | |
| 400 | Bad Request Response - You'll get the below response when your API requests contain any validation errors | |
| 401 | Unauthorized Response - You'll get the below response when your API requests don't contain valid authentication credentials. |
Response: 200
{
"StatusCode": 200,
"SubmissionId": "f9f1c63f-0573-46ec-bab6-dafa14200c85",
"ScheduleFiling": null,
"BusinessId": "0780f899-e363-4aa1-8f25-6ddda48e0959",
"PayerRef": null,
"DBARef": null,
"DBAId": null,
"Form1099Type": "R",
"Form1099Records": {
"SuccessRecords": [
{
"SequenceId": "1",
"RecordId": "d29b9c2a-536c-4a07-b7ae-320d15d33748",
"RecipientId": "7d10e645-0f7e-4400-9a37-2a29fd87046a",
"PayeeRef": null,
"DBARef": null,
"DBAId": null,
"AccountNum": "9252",
"Federal": {
"Status": "CREATED",
"StatusCd": "FED_001",
"StatusTs": "2026-07-27 09:38:10 -04:00",
"Info": null,
"Errors": null
},
"State": [
{
"StateCd": "CA",
"Status": "CREATED",
"StatusCd": "STATE_001",
"StatusTs": "2026-07-27 09:38:10 -04:00",
"Info": "State filing will be submitted via CF/SF",
"Errors": null
}
],
"Distribution": {
"DistributionType": "POSTAL_AND_ONLINE",
"Postal": {
"PostalType": "USPS_FIRST_CLASS",
"Status": "CREATED",
"StatusCd": "POSTAL_001",
"StatusTs": "2026-07-27 09:38:10 -04:00",
"Info": "Postal order created"
},
"OnlineAccess": {
"Status": "CREATED",
"StatusCd": "ONLINE_001",
"Email": "david.thompson@sample.com",
"Info": null
}
}
}
],
"ErrorRecords": null
},
"Errors": null
}
package main
import (
"fmt"
"io"
"net/http"
"strings"
)
func main() {
url := "<APIURL>/v2.0.0/Form1099r/create"
method := "POST"
payload := strings.NewReader(`{
"SubmissionManifest": {
"TaxYear": "2026",
"IsFederal": true,
"IsState": true,
"IsDistribution": true,
"DistributionDetails": {
"DistributionType": "POSTAL_AND_ONLINE",
"PostalType": "USPS_FIRST_CLASS"
},
"IsScheduleFiling": false,
"ScheduleFiling": null
},
"ReturnHeader": {
"Business": {
"BusinessId": null,
"TINDetails": {
"Format": "PLAIN_TIN",
"TINType": "EIN",
"TIN": "72-5564875"
},
"IndividualNm": null,
"BusinessNm": "Horizon LLC",
"NameCtrl": "HORI",
"DBADetails": null,
"Address": {
"Address1": "2500 Horizon Parkway",
"Address2": "Suite 200",
"City": "Plano",
"ProvinceOrState": "TX",
"ZipCd": "75024",
"Country": "US"
},
"ContactDetails": {
"FirstNm": "Michael",
"MiddleNm": "A",
"LastNm": "Carter",
"Suffix": "Jr",
"Phone": "9725550100",
"PhoneExtn": "205",
"Email": "horizonllc@sample.com",
"Fax": "9725550199"
}
}
},
"ReturnData": [
{
"SequenceId": "1",
"ReturnManifest": {
"IsFederal": true,
"IsState": true,
"IsDistribution": true,
"DistributionDetails": {
"DistributionType": "POSTAL_AND_ONLINE",
"PostalType": "USPS_FIRST_CLASS"
},
"IsForced": false
},
"Recipient": {
"TINDetails": {
"Format": "PLAIN_TIN",
"TINType": "SSN",
"TIN": "321-44-5789"
},
"BusinessNm": null,
"NameCtrl": "THOM",
"IndividualNm": {
"FirstNm": "David",
"MiddleNm": "R",
"LastNm": "Thompson",
"Suffix": null
},
"DBADetails": null,
"Address": {
"Address1": "780 Market Street",
"Address2": "Suite 1200",
"City": "San Francisco",
"ProvinceOrState": "CA",
"ZipCd": "94103",
"Country": "US"
},
"Email": "david.thompson@sample.com",
"Fax": "2145550199",
"Phone": "2145550100"
},
"RFormData": {
"GrossDistribution": "2563",
"TaxableAmt": 0,
"IsTaxableAmtNotDetermined": true,
"IsTotalDistribution": false,
"CapitalGain": 880,
"FedTaxWH": 90,
"EmpContribution": 0,
"NUA": 0,
"DistCodes": "1",
"IsSIRASEPSIMPLE": false,
"IsTrumpAccount": true,
"ExcessContrib": 880,
"Other": 80,
"OtherPercentage": 99,
"TotDistPercentage": 99,
"TotEmpContribution": 0,
"AmtToIRR5Years": 0,
"DesigRoth1stYear": 1901,
"IsFATCAFiling": false,
"DateOfPayment": "12/3/2020",
"AccountNum": "9252",
"States": [
{
"StateCd": "PA",
"StateWH": 15.56,
"StateDistribution": 100,
"StateIdNum": "99999999",
"LocalDistribution": 300.23,
"LocalTax": 100.45,
"LocalityNm": "Pristine"
},
{
"StateCd": "AZ",
"StateWH": 17.45,
"StateDistribution": 100,
"StateIdNum": "99-9999999",
"LocalDistribution": 300.23,
"LocalTax": 100.45,
"LocalityNm": "Pristine"
}
]
}
}
]
}`)
client := &http.Client{}
req, err := http.NewRequest(method, url, payload)
if err != nil {
fmt.Println("Error creating request:", err)
return
}
req.Header.Add("Authorization", "<ACCESS_TOKEN>")
req.Header.Add("Content-Type", "application/json")
res, err := client.Do(req)
if err != nil {
fmt.Println("Error sending request:", err)
return
}
defer res.Body.Close()
body, err := io.ReadAll(res.Body)
if err != nil {
fmt.Println("Error reading response:", err)
return
}
fmt.Println(string(body))
}
import http.client
import json
conn = http.client.HTTPSConnection("<APIURL>")
payload = json.dumps({
"SubmissionManifest": {
"TaxYear": "2026",
"IsFederal": True,
"IsState": True,
"IsDistribution": True,
"DistributionDetails": {
"DistributionType": "POSTAL_AND_ONLINE",
"PostalType": "USPS_FIRST_CLASS"
},
"IsScheduleFiling": False,
"ScheduleFiling": None
},
"ReturnHeader": {
"Business": {
"BusinessId": None,
"TINDetails": {
"Format": "PLAIN_TIN",
"TINType": "EIN",
"TIN": "72-5564875"
},
"IndividualNm": None,
"BusinessNm": "Horizon LLC",
"NameCtrl": "HORI",
"DBADetails": None,
"Address": {
"Address1": "2500 Horizon Parkway",
"Address2": "Suite 200",
"City": "Plano",
"ProvinceOrState": "TX",
"ZipCd": "75024",
"Country": "US"
},
"ContactDetails": {
"FirstNm": "Michael",
"MiddleNm": "A",
"LastNm": "Carter",
"Suffix": "Jr",
"Phone": "9725550100",
"PhoneExtn": "205",
"Email": "horizonllc@sample.com",
"Fax": "9725550199"
}
}
},
"ReturnData": [
{
"SequenceId": "1",
"ReturnManifest": {
"IsFederal": True,
"IsState": True,
"IsDistribution": True,
"DistributionDetails": {
"DistributionType": "POSTAL_AND_ONLINE",
"PostalType": "USPS_FIRST_CLASS"
},
"IsForced": False
},
"Recipient": {
"TINDetails": {
"Format": "PLAIN_TIN",
"TINType": "SSN",
"TIN": "321-44-5789"
},
"BusinessNm": None,
"NameCtrl": "THOM",
"IndividualNm": {
"FirstNm": "David",
"MiddleNm": "R",
"LastNm": "Thompson",
"Suffix": None
},
"DBADetails": None,
"Address": {
"Address1": "780 Market Street",
"Address2": "Suite 1200",
"City": " San Francisco",
"ProvinceOrState": "CA",
"ZipCd": "94103",
"Country": "US"
},
"Email": "david.thompson@sample.com",
"Fax": "2145550199",
"Phone": "2145550100"
},
"RFormData": {
"GrossDistribution": "2563",
"TaxableAmt": 0,
"IsTaxableAmtNotDetermined": True,
"IsTotalDistribution": False,
"CapitalGain": 880,
"FedTaxWH": 90,
"EmpContribution": 0,
"NUA": 0,
"DistCodes": "1",
"IsSIRASEPSIMPLE": False,
"IsTrumpAccount": True,
"ExcessContrib": 880,
"Other": 80,
"OtherPercentage": 99,
"TotDistPercentage": 99,
"TotEmpContribution": 0,
"AmtToIRR5Years": 0,
"DesigRoth1stYear": 1901,
"IsFATCAFiling": False,
"DateOfPayment": "12/3/2020",
"AccountNum": "9252",
"States": [
{
"StateCd": "PA",
"StateWH": 15.56,
"StateDistribution": 100,
"StateIdNum": "99999999",
"LocalDistribution": 300.23,
"LocalTax": 100.45,
"LocalityNm": "Pristine"
},
{
"StateCd": "AZ",
"StateWH": 17.45,
"StateDistribution": 100,
"StateIdNum": "99-9999999",
"LocalDistribution": 300.23,
"LocalTax": 100.45,
"LocalityNm": "Pristine"
}
]
}
}
]
})
headers = {
'Authorization': '<ACCESS_TOKEN>',
'Content-Type': 'application/json'
}
conn.request("POST", "/v2.0.0/Form1099r/create", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "<APIURL>/v2.0.0/Form1099r/create");
request.Headers.Add("Authorization", "<ACCESS_TOKEN>");
var content = new StringContent("{
"SubmissionManifest": {
"TaxYear": "2026",
"IsFederal": true,
"IsState": true,
"IsDistribution": true,
"DistributionDetails": {
"DistributionType": "POSTAL_AND_ONLINE",
"PostalType": "USPS_FIRST_CLASS"
},
"IsScheduleFiling": false,
"ScheduleFiling": null
},
"ReturnHeader": {
"Business": {
"BusinessId": null,
"TINDetails": {
"Format": "PLAIN_TIN",
"TINType": "EIN",
"TIN": "72-5564875"
},
"IndividualNm": null,
"BusinessNm": "Horizon LLC",
"NameCtrl": "HORI",
"DBADetails": null,
"Address": {
"Address1": "2500 Horizon Parkway",
"Address2": "Suite 200",
"City": "Plano",
"ProvinceOrState": "TX",
"ZipCd": "75024",
"Country": "US"
},
"ContactDetails": {
"FirstNm": "Michael",
"MiddleNm": "A",
"LastNm": "Carter",
"Suffix": "Jr",
"Phone": "9725550100",
"PhoneExtn": "205",
"Email": "horizonllc@sample.com",
"Fax": "9725550199"
}
}
},
"ReturnData": [
{
"SequenceId": "1",
"ReturnManifest": {
"IsFederal": true,
"IsState": true,
"IsDistribution": true,
"DistributionDetails": {
"DistributionType": "POSTAL_AND_ONLINE",
"PostalType": "USPS_FIRST_CLASS"
},
"IsForced": false
},
"Recipient": {
"TINDetails": {
"Format": "PLAIN_TIN",
"TINType": "SSN",
"TIN": "321-44-5789"
},
"BusinessNm": null,
"NameCtrl": "THOM",
"IndividualNm": {
"FirstNm": "David",
"MiddleNm": "R",
"LastNm": "Thompson",
"Suffix": null
},
"DBADetails": null,
"Address": {
"Address1": "780 Market Street",
"Address2": "Suite 1200",
"City": " San Francisco",
"ProvinceOrState": "CA",
"ZipCd": "94103",
"Country": "US"
},
"Email": "david.thompson@sample.com",
"Fax": "2145550199",
"Phone": "2145550100"
},
"RFormData": {
"GrossDistribution": "2563",
"TaxableAmt": 0,
"IsTaxableAmtNotDetermined": true,
"IsTotalDistribution": false,
"CapitalGain": 880,
"FedTaxWH": 90,
"EmpContribution": 0,
"NUA": 0,
"DistCodes": "1",
"IsSIRASEPSIMPLE": false,
"IsTrumpAccount": true,
"ExcessContrib": 880,
"Other": 80,
"OtherPercentage": 99,
"TotDistPercentage": 99,
"TotEmpContribution": 0,
"AmtToIRR5Years": 0,
"DesigRoth1stYear": 1901,
"IsFATCAFiling": false,
"DateOfPayment": "12/3/2020",
"AccountNum": "9252",
"States": [
{
"StateCd": "PA",
"StateWH": 15.56,
"StateDistribution": 100,
"StateIdNum": "99999999",
"LocalDistribution": 300.23,
"LocalTax": 100.45,
"LocalityNm": "Pristine"
},
{
"StateCd": "AZ",
"StateWH": 17.45,
"StateDistribution": 100,
"StateIdNum": "99-9999999",
"LocalDistribution": 300.23,
"LocalTax": 100.45,
"LocalityNm": "Pristine"
}
]
}
}
]
}", null, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
require "uri"
require "json"
require "net/http"
url = URI("<APIURL>/v2.0.0/Form1099r/create")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Post.new(url)
request["Authorization"] = "<ACCESS_TOKEN>"
request["Content-Type"] = "application/json"
request.body = JSON.dump({
"SubmissionManifest": {
"TaxYear": "2026",
"IsFederal": true,
"IsState": true,
"IsDistribution": true,
"DistributionDetails": {
"DistributionType": "POSTAL_AND_ONLINE",
"PostalType": "USPS_FIRST_CLASS"
},
"IsScheduleFiling": false,
"ScheduleFiling": "nil"
},
"ReturnHeader": {
"Business": {
"BusinessId": "nil",
"TINDetails": {
"Format": "PLAIN_TIN",
"TINType": "EIN",
"TIN": "72-5564875"
},
"IndividualNm": "nil",
"BusinessNm": "Horizon LLC",
"NameCtrl": "HORI",
"DBADetails": "nil",
"Address": {
"Address1": "2500 Horizon Parkway",
"Address2": "Suite 200",
"City": "Plano",
"ProvinceOrState": "TX",
"ZipCd": "75024",
"Country": "US"
},
"ContactDetails": {
"FirstNm": "Michael",
"MiddleNm": "A",
"LastNm": "Carter",
"Suffix": "Jr",
"Phone": "9725550100",
"PhoneExtn": "205",
"Email": "horizonllc@sample.com",
"Fax": "9725550199"
}
}
},
"ReturnData": [
{
"SequenceId": "1",
"ReturnManifest": {
"IsFederal": true,
"IsState": true,
"IsDistribution": true,
"DistributionDetails": {
"DistributionType": "POSTAL_AND_ONLINE",
"PostalType": "USPS_FIRST_CLASS"
},
"IsForced": false
},
"Recipient": {
"TINDetails": {
"Format": "PLAIN_TIN",
"TINType": "SSN",
"TIN": "321-44-5789"
},
"BusinessNm": "nil",
"NameCtrl": "THOM",
"IndividualNm": {
"FirstNm": "David",
"MiddleNm": "R",
"LastNm": "Thompson",
"Suffix": "nil"
},
"DBADetails": "nil",
"Address": {
"Address1": "780 Market Street",
"Address2": "Suite 1200",
"City": " San Francisco",
"ProvinceOrState": "CA",
"ZipCd": "94103",
"Country": "US"
},
"Email": "david.thompson@sample.com",
"Fax": "2145550199",
"Phone": "2145550100"
},
"RFormData": {
"GrossDistribution": "2563",
"TaxableAmt": 0,
"IsTaxableAmtNotDetermined": true,
"IsTotalDistribution": false,
"CapitalGain": 880,
"FedTaxWH": 90,
"EmpContribution": 0,
"NUA": 0,
"DistCodes": "1",
"IsSIRASEPSIMPLE": false,
"IsTrumpAccount": true,
"ExcessContrib": 880,
"Other": 80,
"OtherPercentage": 99,
"TotDistPercentage": 99,
"TotEmpContribution": 0,
"AmtToIRR5Years": 0,
"DesigRoth1stYear": 1901,
"IsFATCAFiling": false,
"DateOfPayment": "12/3/2020",
"AccountNum": "9252",
"States": [
{
"StateCd": "PA",
"StateWH": 15.56,
"StateDistribution": 100,
"StateIdNum": "99999999",
"LocalDistribution": 300.23,
"LocalTax": 100.45,
"LocalityNm": "Pristine"
},
{
"StateCd": "AZ",
"StateWH": 17.45,
"StateDistribution": 100,
"StateIdNum": "99-9999999",
"LocalDistribution": 300.23,
"LocalTax": 100.45,
"LocalityNm": "Pristine"
}
]
}
}
]
})
response = http.request(request)
puts response.read_body
OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{
"SubmissionManifest": {
"TaxYear": "2026",
"IsFederal": true,
"IsState": true,
"IsDistribution": true,
"DistributionDetails": {
"DistributionType": "POSTAL_AND_ONLINE",
"PostalType": "USPS_FIRST_CLASS"
},
"IsScheduleFiling": false,
"ScheduleFiling": null
},
"ReturnHeader": {
"Business": {
"BusinessId": null,
"TINDetails": {
"Format": "PLAIN_TIN",
"TINType": "EIN",
"TIN": "72-5564875"
},
"IndividualNm": null,
"BusinessNm": "Horizon LLC",
"NameCtrl": "HORI",
"DBADetails": null,
"Address": {
"Address1": "2500 Horizon Parkway",
"Address2": "Suite 200",
"City": "Plano",
"ProvinceOrState": "TX",
"ZipCd": "75024",
"Country": "US"
},
"ContactDetails": {
"FirstNm": "Michael",
"MiddleNm": "A",
"LastNm": "Carter",
"Suffix": "Jr",
"Phone": "9725550100",
"PhoneExtn": "205",
"Email": "horizonllc@sample.com",
"Fax": "9725550199"
}
}
},
"ReturnData": [
{
"SequenceId": "1",
"ReturnManifest": {
"IsFederal": true,
"IsState": true,
"IsDistribution": true,
"DistributionDetails": {
"DistributionType": "POSTAL_AND_ONLINE",
"PostalType": "USPS_FIRST_CLASS"
},
"IsForced": false
},
"Recipient": {
"TINDetails": {
"Format": "PLAIN_TIN",
"TINType": "SSN",
"TIN": "321-44-5789"
},
"BusinessNm": null,
"NameCtrl": "THOM",
"IndividualNm": {
"FirstNm": "David",
"MiddleNm": "R",
"LastNm": "Thompson",
"Suffix": null
},
"DBADetails": null,
"Address": {
"Address1": "780 Market Street",
"Address2": "Suite 1200",
"City": " San Francisco",
"ProvinceOrState": "CA",
"ZipCd": "94103",
"Country": "US"
},
"Email": "david.thompson@sample.com",
"Fax": "2145550199",
"Phone": "2145550100"
},
"RFormData": {
"GrossDistribution": "2563",
"TaxableAmt": 0,
"IsTaxableAmtNotDetermined": true,
"IsTotalDistribution": false,
"CapitalGain": 880,
"FedTaxWH": 90,
"EmpContribution": 0,
"NUA": 0,
"DistCodes": "1",
"IsSIRASEPSIMPLE": false,
"IsTrumpAccount": true,
"ExcessContrib": 880,
"Other": 80,
"OtherPercentage": 99,
"TotDistPercentage": 99,
"TotEmpContribution": 0,
"AmtToIRR5Years": 0,
"DesigRoth1stYear": 1901,
"IsFATCAFiling": false,
"DateOfPayment": "12/3/2020",
"AccountNum": "9252",
"States": [
{
"StateCd": "PA",
"StateWH": 15.56,
"StateDistribution": 100,
"StateIdNum": "99999999",
"LocalDistribution": 300.23,
"LocalTax": 100.45,
"LocalityNm": "Pristine"
},
{
"StateCd": "AZ",
"StateWH": 17.45,
"StateDistribution": 100,
"StateIdNum": "99-9999999",
"LocalDistribution": 300.23,
"LocalTax": 100.45,
"LocalityNm": "Pristine"
}
]
}
}
]
}");
Request request = new Request.Builder()
.url("<APIURL>/v2.0.0/Form1099r/create")
.method("POST", body)
.addHeader("Authorization", "<ACCESS_TOKEN>")
.addHeader("Content-Type", "application/json")
.build();
Response response = client.newCall(request).execute();
curl --location '<APIURL>/v2.0.0/Form1099r/create' --header 'Authorization: <ACCESS_TOKEN>' --header 'Content-Type: application/json' --data-raw '{
"SubmissionManifest": {
"TaxYear": "2026",
"IsFederal": true,
"IsState": true,
"IsDistribution": true,
"DistributionDetails": {
"DistributionType": "POSTAL_AND_ONLINE",
"PostalType": "USPS_FIRST_CLASS"
},
"IsScheduleFiling": false,
"ScheduleFiling": null
},
"ReturnHeader": {
"Business": {
"BusinessId": null,
"TINDetails": {
"Format": "PLAIN_TIN",
"TINType": "EIN",
"TIN": "72-5564875"
},
"IndividualNm": null,
"BusinessNm": "Horizon LLC",
"NameCtrl": "HORI",
"DBADetails": null,
"Address": {
"Address1": "2500 Horizon Parkway",
"Address2": "Suite 200",
"City": "Plano",
"ProvinceOrState": "TX",
"ZipCd": "75024",
"Country": "US"
},
"ContactDetails": {
"FirstNm": "Michael",
"MiddleNm": "A",
"LastNm": "Carter",
"Suffix": "Jr",
"Phone": "9725550100",
"PhoneExtn": "205",
"Email": "horizonllc@sample.com",
"Fax": "9725550199"
}
}
},
"ReturnData": [
{
"SequenceId": "1",
"ReturnManifest": {
"IsFederal": true,
"IsState": true,
"IsDistribution": true,
"DistributionDetails": {
"DistributionType": "POSTAL_AND_ONLINE",
"PostalType": "USPS_FIRST_CLASS"
},
"IsForced": false
},
"Recipient": {
"TINDetails": {
"Format": "PLAIN_TIN",
"TINType": "SSN",
"TIN": "321-44-5789"
},
"BusinessNm": null,
"NameCtrl": "THOM",
"IndividualNm": {
"FirstNm": "David",
"MiddleNm": "R",
"LastNm": "Thompson",
"Suffix": null
},
"DBADetails": null,
"Address": {
"Address1": "780 Market Street",
"Address2": "Suite 1200",
"City": " San Francisco",
"ProvinceOrState": "CA",
"ZipCd": "94103",
"Country": "US"
},
"Email": "david.thompson@sample.com",
"Fax": "2145550199",
"Phone": "2145550100"
},
"RFormData": {
"GrossDistribution": "2563",
"TaxableAmt": 0,
"IsTaxableAmtNotDetermined": true,
"IsTotalDistribution": false,
"CapitalGain": 880,
"FedTaxWH": 90,
"EmpContribution": 0,
"NUA": 0,
"DistCodes": "1",
"IsSIRASEPSIMPLE": false,
"IsTrumpAccount": true,
"ExcessContrib": 880,
"Other": 80,
"OtherPercentage": 99,
"TotDistPercentage": 99,
"TotEmpContribution": 0,
"AmtToIRR5Years": 0,
"DesigRoth1stYear": 1901,
"IsFATCAFiling": false,
"DateOfPayment": "12/3/2020",
"AccountNum": "9252",
"States": [
{
"StateCd": "PA",
"StateWH": 15.56,
"StateDistribution": 100,
"StateIdNum": "99999999",
"LocalDistribution": 300.23,
"LocalTax": 100.45,
"LocalityNm": "Pristine"
},
{
"StateCd": "AZ",
"StateWH": 17.45,
"StateDistribution": 100,
"StateIdNum": "99-9999999",
"LocalDistribution": 300.23,
"LocalTax": 100.45,
"LocalityNm": "Pristine"
}
]
}
}
]
}'