Extend your software with TaxBandits IRS E-file API Integration

Skip to main content
Version: 1.6.1

ValidateForm

Validates the Forms in the request against IRS Business rules and field specification without creating the returns in TaxBandits.

POST Form1099R/ValidateForm

Request Body

FieldTypeDescription
SubmissionManifestobjectSubmissionManifest provides the brief information about a particular submission on the whole. It contains information like Submission ID, Tax Year, IsPostal, IsFederalFiling, IsStateFiling, IsOnlineAccess, IsScheduleFiling & ScheduleFiling service details.
    SubmissionIdGuidUnique identifier created by TaxBandits for each submission. Not required when you are creating a return.
    TaxYearstringTax year of Form 1099 R to be filed..
Allowed values: "2021"
    IsFederalFilingBooleanFederal Filing for the return will be enabled when the value is True. Form 1099-R will be sent directly to the IRS.
    IsStateFilingBooleanState 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.
    IsPostalBooleanPostal Order will be created when the value is set as True. Once the return is Transmitted, Form 1099-R Recipient copies will be postal mailed to the recipient's address via USPS.
Note: Postal Orders for Foreign Address will not be created.
    IsOnlineAccessBooleanOnline Access will be enabled when the value is set as True. Once the return is Transmitted, an email with the link to the secure TaxBandits portal will be sent to the Recipient. The recipient can provide consent and download Form 1099-R Recipient copies from the portal.
    IsScheduleFilingBooleanWhen true, schedule filing services will be provided for Form 1099 R returns under this submission.
    ScheduleFilingobjectContains preferred date to submit the returns to the IRS. Required only when "IsScheduleFiling" is True .
        EfileDatestringDate of Schedule Filing. Enter the date in the format: MM/DD/YYYY or MM-DD-YYYY Example: 10/20/2021 or 10-20-2021
ReturnHeaderobjectContains information about the Business details.
    BusinessobjectObject to identify the Business Details.
        BusinessIdGuidOptional Use the unique Business Id (Generated by TaxBandits) you received in response to the Business CREATE Endpoint. By giving the Business Id, you do not have to provide all the business information again. If you do not have a Business Id, ignore the field.
        BusinessNmstringName of the business
Size Range: ..80
        PayerRefstringOptional An unique identifier for each payer completing their information. This identifier can be used in future references of the payer in the API.
Size Range: ..50
        TradeNmstringOptional Name under which the business operates
Size Range: ..80
        IsEINBooleanWhen true, identify that the business TIN is an EIN.
        EINorSSNstringWhen IsEIN is true, use Employer Identification Number (EIN). When IsEIN is false, use Social Security Number (SSN)
Size Range: 9
        EmailstringOptional Email address of the Business
Size Range: ..40
        ContactNmstringOptional Name of the person who can be contacted by the IRS.
Size Range: ..27
        PhonestringOptionalPhone number of the business
Size Range: 10
        PhoneExtnstringOptional Extension of the business phone number
Size Range: ..5
        FaxstringOptional Fax number of the Business
Size Range: 10
        BusinessTypestringOptional Type of business. Optional for W-2/1099 and mandatory for 94X series
Size Range: 4
Allowed values: "ESTE", "PART", "CORP", "EORG", "SPRO"
        SigningAuthorityobjectOptional Details of the person who is authorized to sign the return
            NamestringOptional Name of the signing authority
Size Range: ..35
            PhonestringOptional Phone number of the signing authority
Size Range: 10
            BusinessMemberTypestringOptional Business title of the signing authority
Size Range: 5..29
Allowed values: "CORPORATESECRETARY", "SECRETARYTREASURER", "PARTNER", "GENERALPARTNER", "LIMITEDPARTNER", "LLCMEMBER", "MANAGINGMEMBER", "MANAGER", "TAXMATTERPARTNER", "PRESIDENT", "VICEPRESIDENT", "CORPORATETREASURER", "TREASURER", "ASSISTANTTREASURER", "CHIEFACCOUNTINGOFFICER", "CHIEFEXECUTIVEOFFICER", "CHIEFFINANCIALOFFICER", "TAXOFFICER", "CHIEFOPERATINGOFFICER", "CORPORATEOFFICER", "EXECUTIVEDIRECTOR", "DIRECTOR", "CHAIRMAN", "EXECUTIVEADMINISTRATOR", "RECEIVER", "PASTOR", "ASSISTANTTORELIGIOUSLEADER", "REVEREND", "PRIEST", "MINISTER", "RABBI", "LEADEROFRELIGIOUSORGANIZATION", "SECRETARY", "DIRECTOROFTAXATION", "DIRECTOROFPERSONNEL", "ADMINISTRATOR", "EXECUTOR", "TRUSTEE", "FIDUCIARY", "OWNER", "SOLEPROPRIETOR", "MEMBER", "SOLEMEMBER"
        KindOfEmployerstringOptional Identifies the kind of employer. Mandatory for W-2 and optional for 1099-R and 94X series
Allowed values: "FEDERALGOVT", "STATEORLOCAL501C", "NONGOVT501C", "STATEORLOCALNON501C", "NONEAPPLY"
        KindOfPayerstringOptional Identifies the kind of payer. This field is mandatory in W-2 and optional in 1099-R and 94X series
Allowed values: "REGULAR941", "REGULAR944", "AGRICULTURAL943", "HOUSEHOLD", "MILITARY", "MEDICAREQUALGOVEM", "RAILROADFORMCT1"
        IsBusinessTerminatedBooleanWhen true, identifies the business as terminated.
        IsForeignBooleanWhen true, identifies the business address with a foreign address.
        USAddressobjectIf IsForeign is false, pass US address of the business
            Address1stringEmployer/Payer's US address (street or post office box of that locality)
Size Range: ..35
            Address2stringOptional Employer/Payer's suite or apartment
Size Range: ..35
            CitystringEmployer/Payer's city
Size Range: ..27
            StatestringEmployer/Payer's state code. Refer Static values.
Size Range: 2
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"
            ZipCdstringEmployer/Payer's zip code
Size Range: 5,9
        ForeignAddressobjectIf IsForeign is true, pass foreign address of the business
            Address1stringEmployer/Payer's foreign address (street address or post office box of that locality)
Size Range: ..35
            Address2stringOptional Employer/Payer's suite or apartment
Size Range: ..35
            CitystringEmployer/Payer's city
Size Range: ..27
            ProvinceOrStateNmstringEmployer/Payer's province or state name
Size Range: ..30
            CountrystringEmployer/Payer's country
Size Range: 2
Allowed values: "US", "CA", "MX", "AF", "AX", "XI", "AL", "AG", "AQ", "AN", "AO", "AV", "AY", "AC", "AR", "AM", "AA", "XA", "AT", "AS", "AU", "AJ", "XZ", "BF", "BA", "FQ", "BG", "BB", "BS", "BO", "BE", "BH", "BN", "BD", "BT", "BL", "BK", "BC", "BV", "BR", "IO", "VI", "BX", "BU", "UV", "BM", "BY", "CB", "CM", "XY", "CV", "CJ", "CT", "CD", "XC", "CI", "CH", "KT", "IP", "CK", "CO", "CN", "CF", "CG", "CW", "CR", "VP", "CS", "IV", "HR", "CU", "CY", "EZ", "DA", "DX", "DJ", "DO", "DR", "TT", "EC", "EG", "ES", "UK", "EK", "ER", "EN", "ET", "EU", "FK", "FO", "FM", "FJ", "FI", "FR", "FG", "FP", "FS", "GB", "GA", "GZ", "GG", "GM", "GH", "GI", "GO", "GR", "GL", "GJ", "GP", "GQ", "GT", "GK", "GV", "PU", "GY", "HA", "HM", "HO", "HK", "HQ", "HU", "IC", "IN", "ID", "IR", "IZ", "EI", "IS", "IT", "JM", "JN", "JA", "DQ", "JE", "JQ", "JO", "JU", "KZ", "KE", "KQ", "KR", "KN", "KS", "KU", "KG", "LA", "LG", "LE", "LT", "LI", "LY", "LS", "LH", "LU", "MC", "MK", "MA", "MI", "MY", "MV", "ML", "MT", "IM", "RM", "MB", "MR", "MP", "MF", "MQ", "MD", "MN", "MG", "MJ", "MH", "MO", "MZ", "XM", "WA", "NR", "BQ", "NP", "NL", "NT", "NC", "NZ", "NU", "NG", "NI", "NE", "NF", "XN", "CQ", "NO", "MU", "OC", "PK", "LQ", "PS", "PM", "PP", "PF", "PA", "PE", "RP", "PC", "PL", "PO", "RQ", "QA", "RE", "RO", "RS", "RW", "WS", "SM", "TP", "SA", "XS", "SG", "RI", "SE", "SL", "SN", "XR", "LO", "SI", "BP", "SO", "SF", "SX", "SP", "PG", "CE", "SH", "SC", "ST", "SB", "VC", "SU", "NS", "SV", "WZ", "SW", "SZ", "SY", "TW", "TI", "TZ", "TH", "TO", "TL", "TN", "TD", "XT", "TE", "TS", "TU", "TX", "TK", "TV", "UG", "UP", "AE", "UY", "UZ", "NH", "VT", "VE", "VM", "VQ", "WQ", "XW", "WF", "WE", "WI", "YM", "YI", "ZA", "ZI"
            PostalCdstringEmployer/Payer's postal code
Size Range: 9
ReturnDataobject[]Contains information about the recipient details and Form 1099 R details.
    SequenceIdstringA 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
    RecordIdGuidUnique identifier of a record. Not required when you are creating a return.
    RecipientobjectObject to identify the recipient details.
        RecipientIdGuidTaxBandits generates a unique ID for each recipient after the return is created and returned in the Response. You can use this id for your future reference to update.
        TINTypestringSpecify the TIN type of the recipient.
Allowed values: "SSN", "EIN", "ITIN", "ATIN", "NA"
        TINstringEnter the nine-digit taxpayer identification number of the Recipient (SSN, ITIN, ATIN, or EIN).
Size Range: 9
        FirstPayeeNmstringEnter the name of the recipient (preferably last name first for an Individual). If more space is required for the name, use the Second Payee Name Field.
Size Range: 40
        SecondPayeeNmstringOptional If there are multiple recipients (for example, partners, joint owners, or spouses), use this field for those names not associated with the TIN or if not enough space was provided in the First Payee Name, continue the name in this field.
Size Range: 40
        IsForeignBooleanWhen true, it identifies the recipient's address with a foreign address.
        USAddressobjectIf IsForeign is false, pass US address of the recipient
            Address1stringRecipient's US address (street address or post office box of that locality)
Size Range: ..35
            Address2stringOptional Recipient's suite or apartment
Size Range: ..35
            CitystringRecipient's city
Size Range: ..27
            StatestringRecipient's state code. Refer Static values.
Size Range: 2
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"
            ZipCdstringRecipient's zip code
Size Range: 5,9
        ForeignAddressobjectIf IsForeign is true, pass foreign address of the recipient
            Address1stringRecipient's foreign address (street address or post office box of that locality)
Size Range: ..35
            Address2stringOptional Recipient's suite or apartment
Size Range: ..35
            CitystringRecipient's city.
Size Range: ..27
            ProvinceOrStateNmstringRecipient's Province or State Name.
Size Range: ..30
            CountrystringRecipient's country code. Refer Static values.
Size Range: 2
Allowed values: "US", "CA", "MX", "AF", "AX", "XI", "AL", "AG", "AQ", "AN", "AO", "AV", "AY", "AC", "AR", "AM", "AA", "XA", "AT", "AS", "AU", "AJ", "XZ", "BF", "BA", "FQ", "BG", "BB", "BS", "BO", "BE", "BH", "BN", "BD", "BT", "BL", "BK", "BC", "BV", "BR", "IO", "VI", "BX", "BU", "UV", "BM", "BY", "CB", "CM", "XY", "CV", "CJ", "CT", "CD", "XC", "CI", "CH", "KT", "IP", "CK", "CO", "CN", "CF", "CG", "CW", "CR", "VP", "CS", "IV", "HR", "CU", "CY", "EZ", "DA", "DX", "DJ", "DO", "DR", "TT", "EC", "EG", "ES", "UK", "EK", "ER", "EN", "ET", "EU", "FK", "FO", "FM", "FJ", "FI", "FR", "FG", "FP", "FS", "GB", "GA", "GZ", "GG", "GM", "GH", "GI", "GO", "GR", "GL", "GJ", "GP", "GQ", "GT", "GK", "GV", "PU", "GY", "HA", "HM", "HO", "HK", "HQ", "HU", "IC", "IN", "ID", "IR", "IZ", "EI", "IS", "IT", "JM", "JN", "JA", "DQ", "JE", "JQ", "JO", "JU", "KZ", "KE", "KQ", "KR", "KN", "KS", "KU", "KG", "LA", "LG", "LE", "LT", "LI", "LY", "LS", "LH", "LU", "MC", "MK", "MA", "MI", "MY", "MV", "ML", "MT", "IM", "RM", "MB", "MR", "MP", "MF", "MQ", "MD", "MN", "MG", "MJ", "MH", "MO", "MZ", "XM", "WA", "NR", "BQ", "NP", "NL", "NT", "NC", "NZ", "NU", "NG", "NI", "NE", "NF", "XN", "CQ", "NO", "MU", "OC", "PK", "LQ", "PS", "PM", "PP", "PF", "PA", "PE", "RP", "PC", "PL", "PO", "RQ", "QA", "RE", "RO", "RS", "RW", "WS", "SM", "TP", "SA", "XS", "SG", "RI", "SE", "SL", "SN", "XR", "LO", "SI", "BP", "SO", "SF", "SX", "SP", "PG", "CE", "SH", "SC", "ST", "SB", "VC", "SU", "NS", "SV", "WZ", "SW", "SZ", "SY", "TW", "TI", "TZ", "TH", "TO", "TL", "TN", "TD", "XT", "TE", "TS", "TU", "TX", "TK", "TV", "UG", "UP", "AE", "UY", "UZ", "NH", "VT", "VE", "VM", "VQ", "WQ", "XW", "WF", "WE", "WI", "YM", "YI", "ZA", "ZI"
            PostalCdstringRecipient's Postal Code
Size Range: 9
        EmailstringOptional Recipient's email address.
Size Range: 0..40
        FaxstringOptional Recipient's Fax number.
Size Range: 10
        PhonestringOptional Recipient's Phone Number.
Size Range: 15
    RFormDataobjectObject to create 1099-R.
        B1GrossDistributionnumberGross Distribution - Get at least one distribution code.
Size Range: 0-9999999999.99
        B2aTaxableAmtnumberTaxable Amount - Gets the Taxable Amount
Size Range: 0-9999999999.99
        B2bIsTaxableAmtNotDeterminedBooleanWhen True, the taxable amount of the payment entered for Gross distribution cannot be computed.
        B2bISTotalDistributionBooleanWhen True, the payment shown in gross Distribution Amount is a total distribution that closes out the account.
        B3CapitalGainnumberCapital Gain - Get the amount from a charitable gift annuity that is taxable as a capital gain.
Size Range: 0-9999999999.99
        B4FedTaxWHnumberFederal Tax Withheld - Get any federal income tax withheld.
Size Range: 0-9999999999.99
        B5EmpContributionnumberGet the employee's contributions, designated Roth contributions, or insurance premiums that the employee may recover tax free this year.
Size Range: 0-9999999999.99
        B6NUAnumberGet 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
        B7DistCodesstringGet 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"
        B7IsSIRASEPSIMPLEBooleanWhen True, it is a traditional IRA, SEP, or SIMPLE distribution or Roth conversion.
        B8OthernumberGet the current actuarial value of an annuity contract that is part of a lump-sum distribution.
Size Range: 0-9999999999.99
        B8OtherPercentagenumberGet the percentage of the total annuity contract.
        B9aTotDistPercentagenumberTotal 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
        B9bTotEmpContributionnumberTotal employee contributions - Get the total employee Distribution. Do not include any amounts recovered tax free in prior years.
Size Range: 0-9999999999.99
        B10AmtToIRR5YearsnumberGet 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
        B11DesigRoth1stYearnumberGet 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
        B12IsFATCAFilingBooleanWhen true, there is a FATCA Filing Requirement.
        B13DateOfPaymentnumberGet the date of payment for reportable death benefits under section 6050Y.It should be in "YYYYMMDD" format.
Size Range: 8
        AccountNumstringAccount number of Payer having multiple accounts for a recipient for whom more than one Form 1099-R is filed.
Size Range: 4..20
        Statesobject[]Contains list of state returns information.
            StateCdstringState Code.
Size Range: 2
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"
            StateIdNumstringIdentification Number of State.
Size Range: ..20
            StateWHnumberIncome tax amount withheld for State.
Size Range: 0-9999999999.99
            StateDistributionnumberTotal state distribution amount.
Size Range: 0-9999999999.99
            LocalDistributionnumberLocal Distribution.
Size Range: 0-9999999999.99
            LocalTaxnumberLocal income tax withheld.
Size Range: 0-9999999999.99
            LocalityNmstringName of the Locality.
Size Range: 20

Response Body

FieldTypeDescription
StatusCodenumberReturns the HTTP status codes like 200,300 etc.
StatusNamestringName of the status code
StatusMessagestringDetailed status message
Errorsobject[]Shows detailed error information
    IdstringReturns the validation error code
    NamestringName of the validation error
    MessagestringDescription of the validation error

Request JSON

{"SubmissionManifest": {  "TaxYear": "2021",  "IsFederalFiling": true,  "IsStateFiling": true,  "IsPostal": true,  "IsOnlineAccess": true,  "IsScheduleFiling": true,  "ScheduleFiling": {    "EfileDate": "11/27/2021"  } }, "ReturnHeader": {  "Business": {    "BusinessId": null,    "PayerRef":"4965",    "BusinessNm": "Brian LLC",    "TradeNm": "Brian Corporate Services",    "IsEIN": false,    "EINorSSN": "043313330",    "Email": "brianscott@gmail.com",    "ContactNm": "Brian O Relly",    "Phone": "1234567890",    "PhoneExtn": "12345",    "Fax": null,    "BusinessType": "ESTE",    "SigningAuthority": {      "Name": null,      "Phone": null,      "BusinessMemberType": "ADMINISTRATOR"    },    "KindOfEmployer": "FEDERALGOVT",    "KindOfPayer": "REGULAR941",    "IsBusinessTerminated": true,    "IsForeign": false,    "USAddress": {      "Address1": "15 Park Avenue",      "Address2": "Louis St",      "City": "Seattle",      "State": "WA",      "ZipCd": "98944"    },    "ForeignAddress":  {        "Address1":  "15 Park Avenue",        "Address2": "Louis St",        "City": "Seattle",        "ProvinceOrStateNm": null,        "Country": null,        "PostalCd": null      }  } }, "ReturnData": [  {    "RecordId": null,    "SequenceId": "001",    "Recipient": {      "RecipientId":null,      "TINType": "ssn",      "TIN": "391114511",      "FirstPayeeNm": "Mark",      "SecondPayeeNm": "Davis",      "IsForeign": false,      "USAddress": {        "Address1": "1751 Kinsey Rd",        "Address2": "Main St",        "City": "Dothan",        "State": "AL",        "ZipCd": "36303"      },      "ForeignAddress": {        "Address1":  "15 Park Avenue",        "Address2": "Louis St",        "City": "Seattle",        "ProvinceOrStateNm": null,        "Country": null,        "PostalCd": null      },      "Email": "john@gmail.com",      "Fax": "1234567890",      "Phone": "1234567890"    },   "RFormData": {      "B1GrossDistribution": 7000,      "B2aTaxableAmt": 0,      "B2bIsTaxableAmtNotDetermined": true,      "B2bIsTotalDistribution": false,      "B3CapitalGain": 880,      "B4FedTaxWH": 990,      "B5EmpContribution": 0,      "B6NUA": 0,      "B7DistCodes": "1",      "B7IsSIRASEPSIMPLE": false,      "B8Other": 80,      "B8OtherPercentage": 99,      "B9aTotDistPercentage": 99,      "B9bTotEmpContribution": 0,      "B10AmtToIRR5Years":0,      "B11DesigRoth1stYear": 1901,      "B12IsFATCAFiling": false,      "B13DateOfPayment": "12/3/2020",      "AccountNum": "7895",      "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 JSON

{ "StatusCode": 200, "StatusName": "Ok", "StatusMessage": "Successful API call", "Errors": null}