Get
Get
Use this endpoint to retrieve a 1099-R submission and its records. Provide the SubmissionId to retrieve the whole submission, optionally narrowing to a specific RecordId.
The response includes the full payer, recipient, and form data as originally submitted — useful for audit trails and displaying return details in your application.
GET form1099r/get Request Body
| Field | Type | Description |
|---|---|---|
| SubmissionId | Guid | An unique identifier generated by TaxBandits when a 1099-R return is created. Mention the Form 1099-R return's Submission ID that you want to get. |
| RecordIds | Guid[] | An unique identifier generated by TaxBandits when a 1099-R return is created. Mention the Form 1099-R return's Record ID that you want to get. |
Response Body
| Field | Type | Description |
|---|---|---|
| Form1099Records | object[] | Contains information about Form 1099-R returns. |
| 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 valuesAllowed values: "2025", "2026" |
| IsFederal | Boolean | Federal Filing will be enabled when the value is True. Form 1099-R will be sent directly to the IRS. |
| IsState | Boolean | State Filing 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" |
| IsScheduleFiling | Boolean | When true, schedule filing services will be provided 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 | First name of the individual. |
| MiddleNm | string | Middle name of the individual. |
| LastNm | string | Last name of the individual. |
| Suffix | string | The suffix of the individual's name. |
| BusinessNm | string | Legal name of the business. Required when TINType is EIN. |
| NameCtrl | string | Name control of the business as registered with the IRS. |
| DBADetails | object[] | DBA (Doing Business As) information. Optional at creation — additional DBAs can be added later via AddDBA. |
| DBANm | string | Name of the DBA. |
| DBARef | string | Your unique identifier for this DBA. |
| 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. |
| Address2 | string | Suite or apartment number. |
| City | string | DBA's city. |
| ProvinceOrStateNm | string | DBA's province or state name. |
| Zipcd | string | DBA's ZIP code. |
| Country | string | DBA's 2-character country code. |
| string | Email address of the Business | |
| Address | object | Primary address of the business |
| Address1 | string | Street address or PO Box of the business. |
| Address2 | string | Suite or apartment number of the business. |
| City | string | City of the business. |
| ProvinceOrStateNm | string | Province or state name of the business. |
| ZipCd | string | ZIP code of the business. |
| Country | string | 2-character country code of the business. |
| ContactDetails | object[] | Details of the person the IRS can contact regarding this business. |
| FirstNm | string | First name of the contact person. |
| MiddleNm | string | Middle name of the contact person. |
| LastNm | string | Last name of the contact person. |
| Suffix | string | The suffix of the contact person. |
| Phone | string | Phone number of the contact person |
| PhoneExtn | string | Phone extension number. |
| string | Email address of the contact person. | |
| Fax | string | Fax number of the contact person. |
| 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. |
| RecordId | Guid | Unique Identifier of the Record. Mention the Form 1099-R return's Record ID that you want to update. If you do not provide the Record ID, then a new record will be added to the submission. |
| 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. |
| PostalType | string | Postal service type. |
| IsForced | Boolean | When TRUE, TaxBandits does not verify for duplicates and will create a new return for the recipient, even if it comprises the same amount as in previously filed returns. For more information on duplicate handling for Form 1099s, please click here. |
| Recipient | object | Object to identify the 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. |
| TINDetails | object | Recipient TIN information. |
| Format | string | Specifies how the TIN is passed. |
| TINType | string | Specify the TIN type of the recipient.Allowed values"EIN", "SSN", "ATIN", "ITIN", "NA" |
| TIN | string | The TIN value, formatted according to the Format field selected. |
| IndividualNm | Object | Required when TINType is SSN, ITIN, or ATIN. Provide individual name fields instead of BusinessNm. |
| FirstNm | String | The first name of the individual. |
| MiddleNm | String | The middle name of the individual. |
| LastNm | String | The last name of the individual. |
| Suffix | String | The suffix of the individual's name. |
| BusinessNm | string | Legal name of the recipient business. Required when TINType is EIN. |
| NameCtrl | string | Name control of the business as registered with the IRS. |
| DBADetails | Object | Optional DBA (Doing Business As) information. Optional at creation — additional DBAs can be added later via AddDBA. |
| DBAId | GUID | TaxBandits-generated DBA identifier. Returned in the response. |
| DBANm | String | Name of the DBA. |
| DBARef | String | Your unique identifier for this DBA. |
| Address | Object | Address information of DBA |
| Address1 | String | Street address or PO Box. |
| Address2 | String | Suite or apartment number. |
| City | String | DBA's city. |
| ProvinceOrState | String | DBA's province or state name. |
| ZipCd | String | DBA's ZIP code. |
| Country | String | DBA's 2-character country code. |
| DOB | String | 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. Max 46 characters |
| Address2 | String | Suite or apartment number of the recipient. |
| City | String | City of the recipient. |
| ProvinceOrState | String | Province or state name of the recipient. |
| ZipCd | String | ZIP code of the recipient. |
| Country | String | 2-character country code of the recipient. |
| String | Email address of the recipient. | |
| Fax | String | Fax number of the recipient. |
| Phone | String | Phone number of the recipient. |
| 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 |
Payload

Go Lang
Node.js
Python
.NET C#

Ruby
Java

cURL
| Sample | Description | Action |
|---|---|---|
| Sample 1 | Query Params - Use the SubmissionId alone to get the full submission, or include RecordId to get a specific record. |
Sample 1
form1099r/get?submissionid=519a84f4-5e56-496a-82f3-18f51fdf3d75&RecordIds=519a84f4-5e56-496a-82f3-18f51fdf3d75,519a84f4-5e56-496a-82f3-18f51fdf3d75
| Response | Description | Action |
|---|---|---|
| 200 | Success Response - This is a sample response for a successful get request. |
Response: 200
{
"Form1099Records": [
{
"SubmissionManifest": {
"SubmissionId": "e50c27b8-631c-45f0-be19-f786fc69ba60",
"TaxYear": "2026",
"IsFederal": true,
"IsState": true,
"IsDistribution": true,
"DistributionDetails": {
"DistributionType": "POSTAL_AND_ONLINE",
"PostalType": "USPS_FIRST_CLASS"
},
"IsScheduleFiling": true,
"ScheduleFiling": {
"EfileDate": "01/25/2026"
}
},
"ReturnHeader": {
"Business": {
"PayerRef": "Snow123",
"BusinessId": null,
"IsDefaultBusiness": true,
"TINDetails": {
"Format": "PLAIN_TIN",
"TINType": "EIN",
"TIN": "45-9875461"
},
"IndividualNm": {
"FirstNm": "James",
"MiddleNm": "A",
"LastNm": "Anderson",
"Suffix": "Jr"
},
"BusinessNm": "Snowdaze LLC",
"NameCtrl": "SNOW",
"DBADetails": {
"DBANm": "Iceberg Icecreams",
"DBARef": "DBA1001",
"DBAId": null,
"IsDefaultDBA": true,
"Address": {
"Address1": "123 Main St",
"Address2": "Suite 1001",
"City": "Rock Hill",
"ProvinceOrState": "SC",
"ZipCd": "29730",
"Country": "US"
}
},
"Email": "james@sample.com",
"Address": {
"Address1": "123 Main St",
"Address2": "Suite 1001",
"City": "Rock Hill",
"ProvinceOrState": "SC",
"ZipCd": "29730",
"Country": "US"
},
"ContactDetails": {
"FirstNm": "James",
"MiddleNm": "A",
"LastNm": "Anderson",
"Suffix": "Jr",
"Phone": "8035551234",
"PhoneExtn": "101",
"Email": "contact@snowdaze.com",
"Fax": "8035555678"
}
}
},
"ReturnData": [
{
"SequenceId": "1",
"RecordId": "cfd6fe66-ac9f-49f7-b8a3-2d064abeeb9b",
"IsFederal": true,
"IsState": true,
"IsDistribution": true,
"DistributionDetails": {
"DistributionType": "SMART_MAIL",
"PostalType": "USPS_FIRST_CLASS"
},
"IsForced": false,
"Recipient": {
"PayeeRef": "DAI001",
"TINDetails": {
"Format": "PLAIN_TIN",
"TINType": "EIN",
"TIN": "45-9875461"
},
"IndividualNm": {
"FirstNm": "James",
"MiddleNm": "A",
"LastNm": "Anderson",
"Suffix": "Jr",
"DOB": null
},
"BusinessNm": "Snowdaze LLC",
"NameCtrl": "SNOW",
"DBADetails": {
"DBANm": "Iceberg Icecreams",
"DBARef": "DBA1001",
"Address": {
"Address1": "123 Main St",
"Address2": "Suite 1001",
"City": "Rock Hill",
"ProvinceOrState": "SC",
"ZipCd": "29730",
"Country": "US"
}
},
"Address": {
"Address1": "123 Main St",
"Address2": "Suite 1001",
"City": "Rock Hill",
"ProvinceOrState": "SC",
"ZipCd": "29730",
"Country": "US"
},
"Email": "shawn@sample.com",
"Fax": "6634567890",
"Phone": "9634567890"
},
"RFormData": {
"GrossDistribution": "2563",
"TaxableAmt": 0,
"IsTaxableAmtNotDetermined": true,
"IsTotalDistribution": false,
"CapitalGain": 880,
"FedTaxWH": 90,
"EmpContribution": 0,
"NUA": 0,
"DistCodes": "1",
"IsSIRASEPSIMPLE": false,
"IsTrumpAccount": false,
"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"
}
]
}
}
],
"StateReconData": null
}
],
"Errors": null
}
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
url := "<APIURL>/v2.0.0/form1099r/get?submissionid=519a84f4-5e56-496a-82f3-18f51fdf3d75&RecordIds=519a84f4-5e56-496a-82f3-18f51fdf3d75%2C519a84f4-5e56-496a-82f3-18f51fdf3d75"
method := "GET"
client := &http.Client{}
req, err := http.NewRequest(method, url, nil)
if err != nil {
fmt.Println("Error creating request:", err)
return
}
req.Header.Add("Content-Type", "application/json")
req.Header.Add("Authorization", "<ACCESS_TOKEN>")
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))
}
const axios = require('axios');
let data = '';
let config = {
method: 'get',
maxBodyLength: Infinity,
url: '<APIURL>/v2.0.0/form1099r/get?submissionid=519a84f4-5e56-496a-82f3-18f51fdf3d75&RecordIds=519a84f4-5e56-496a-82f3-18f51fdf3d75,519a84f4-5e56-496a-82f3-18f51fdf3d75',
headers: {
'Content-Type': 'application/json',
'Authorization': '<ACCESS_TOKEN>'
},
data : data
};
axios.request(config)
.then((response) => {
console.log(JSON.stringify(response.data));
})
.catch((error) => {
console.log(error);
});
import http.client
import json
conn = http.client.HTTPSConnection("<APIURL>")
payload = ''
headers = {
'Content-Type': 'application/json',
'Authorization': '<ACCESS_TOKEN>'
}
conn.request("GET", "/v2.0.0/form1099r/get?submissionid=519a84f4-5e56-496a-82f3-18f51fdf3d75&RecordIds=519a84f4-5e56-496a-82f3-18f51fdf3d75,519a84f4-5e56-496a-82f3-18f51fdf3d75", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "<APIURL>/v2.0.0/form1099r/get?submissionid=519a84f4-5e56-496a-82f3-18f51fdf3d75&RecordIds=519a84f4-5e56-496a-82f3-18f51fdf3d75,519a84f4-5e56-496a-82f3-18f51fdf3d75");
request.Headers.Add("Authorization", "<ACCESS_TOKEN>");
var content = new StringContent("", 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/get?submissionid=519a84f4-5e56-496a-82f3-18f51fdf3d75&RecordIds=519a84f4-5e56-496a-82f3-18f51fdf3d75,519a84f4-5e56-496a-82f3-18f51fdf3d75")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["Authorization"] = "<ACCESS_TOKEN>"
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, "");
Request request = new Request.Builder()
.url("<APIURL>/v2.0.0/form1099r/get?submissionid=519a84f4-5e56-496a-82f3-18f51fdf3d75&RecordIds=519a84f4-5e56-496a-82f3-18f51fdf3d75,519a84f4-5e56-496a-82f3-18f51fdf3d75")
.method("GET", body)
.addHeader("Content-Type", "application/json")
.addHeader("Authorization", "<ACCESS_TOKEN>")
.build();
Response response = client.newCall(request).execute();
curl --location '<APIURL>/v2.0.0/form1099r/get?submissionid=519a84f4-5e56-496a-82f3-18f51fdf3d75&RecordIds=519a84f4-5e56-496a-82f3-18f51fdf3d75%2C519a84f4-5e56-496a-82f3-18f51fdf3d75' --header 'Content-Type: application/json' --header 'Authorization: <ACCESS_TOKEN>' --data ''