Extend your software with TaxBandits IRS E-file API Integration

Skip to main content
Version: 1.6.1

RequestPDFURLs

This method can be used to retrieve PDFs for single or multiple recipients. The PDF URL will be returned in the response only if it is already generated by us. You can use the SubmissionId or RecordIds to request the pdf URLs.

Note: The PDF URL will be returned in response only after the return is transmitted in the API. This method will not work for Inprogress returns.

How does it work?

  1. The first step is to call the Auth method to get the access token. This access token must be supplied in the request header as the 'Bearer' token. Refer to OAuth 2.0 Authentication for more information on JWT authentication and how to integrate with the subsequent requests.

  2. The second step is to call the Create call for the particular Form endpoint and then call the Transmit call. Once the return is in Transmitted status, you can call this method to get the PDF.

  3. Next, call the [POST] FormW2C/RequestPDFURLs endpoint. You will need to supply the following parameters:

    • Access Token in the header as Bearer Token (Generated using TaxBandits OAuth Authentication API)

    • Form reference (SubmissionId or RecordIds) - You can either request all the PDFs for a submission or specify RecordIs (Across submissions) of the forms you need the PDF.

    • TINMaskType - Mention whether you want the TIN (SSN) to be masked in the PDF. Only the last digits of the SSN will be visible and the rest of the digits will be crossed (xxx-xx-1234). The values for this node are,

      • Masked
      • Unmasked
      • Both (Both Masked and Unmasked copies will be returned in the URL)
POST FormW2C/RequestPdfURLs

Request Body

FieldTypeDescription
SubmissionIdGuidOptional Unique identifier of an API submission. Use this node to request the PDFs under a particular submission. If you are going to request the PDFs using the RecordIds, you can leave the SubmissionId blank or null.
RecordIdsobject[]Specify the list of RecordIds under this Array
    RecordIdGuidUnique identifier of the return.
CustomizationobjectIncludes PDF customizations
    TINMaskTypestringOptional Mention whether you want the TIN to be masked in the PDF. If masked, only the last digits of the SSN will be visible and the rest of the digits will be crossed (xxx-xx-1234).
Allowed values: "MASKED", "UNMASKED", "BOTH"

Response Body

FieldTypeDescription
SubmissionIdGuidUnique identifier of a submission.
FormW2CRecordsobjectContains PDF URLs of the forms requested in the API request.
    SuccessRecordsobject[]Shows the successful records for the given submission request.
        RecordIdGuidUnique identifier of the return.
        StatusstringStatus of the PDF in TaxBandits.
  • Success - The PDF is generated and you can download it.
        FilesobjectContains multiple copies of a particular return.
            Copy1objectCopy 1: For State, City, or Local Tax Department
                UnmaskedstringLink to download the Unmasked copy
                MaskedstringLink to download the Masked copy
            Copy2objectCopy 2: To Be Filed With Employee's State, City, or Local Income Tax Return
                UnmaskedstringLink to download the Unmasked copy
                MaskedstringLink to download the Masked copy
            CopyBobjectCopy B: To Be Filed With Employee's FEDERAL Tax Return.
                UnmaskedstringLink to download the Unmasked copy
                MaskedstringLink to download the Masked copy
            CopyCobjectCopy C: For EMPLOYEE'S RECORDS
                UnmaskedstringLink to download the Unmasked copy
                MaskedstringLink to download the Masked copy
            CopyDobjectCopy D: For Employer
                UnmaskedstringLink to download the Unmasked copy
                MaskedstringLink to download the Masked copy
    ErrorRecordsobject[]Contains records that are errored
        RecordIdGuidUnique identification of the record.
        StatusstringStatus of the error record.
  • PDF_Not_Generated - PDF is yet to be generated. You will have to wait and send a new API request to get the PDF.
  • Not Transmitted - The return is not transmitted yet.
  • Invalid RecordId - Given record id is invalid
        MessagestringDescription of each statuses
Errorsobject[]Lists the errors in the API call
    IdstringReturns the error Id.
    NamestringName of the validation error
    MessagestringGives the detailed status message.

Request JSON 1

{  "SubmissionId": "03f83fe9-05ca-41f0-86c3-00d073528712",  "RecordIds": [    {      "RecordId": "2388983e-0215-4c99-8033-951dee1ccfef"    }  ],  "Customization": {    "TINMaskType": "Masked"  }}

Response JSON 1

{   "SubmissionId": "03f83fe9-05ca-41f0-86c3-00d073528712",   "FormW2CRecords": {       "SuccessRecords": [           {               "RecordId": "2388983e-0215-4c99-8033-951dee1ccfef",               "Status": "Success",               "Files": {                   "Copy1": {                       "Unmasked": null,                       "Masked": "https://expressirsforms.s3.us-east-1.amazonaws.com/pdfs/769e7c15-b887-4d64-a50f-444ab16f50d0/d59cd157-4a07-4832-9390-2704a65de1b8/w2c/7d42c237-01ae-442f-b669-69ac174f50ab/m/copy1_1up_5989647027.pdf"                   },                   "Copy2": {                       "Unmasked": null,                       "Masked": "https://expressirsforms.s3.us-east-1.amazonaws.com/pdfs/769e7c15-b887-4d64-a50f-444ab16f50d0/d59cd157-4a07-4832-9390-2704a65de1b8/w2c/7d42c237-01ae-442f-b669-69ac174f50ab/m/copy2_1up_9886910187.pdf"                   },                   "CopyB": {                       "Unmasked": null,                       "Masked": "https://expressirsforms.s3.us-east-1.amazonaws.com/pdfs/769e7c15-b887-4d64-a50f-444ab16f50d0/d59cd157-4a07-4832-9390-2704a65de1b8/w2c/7d42c237-01ae-442f-b669-69ac174f50ab/m/copyb_1up_8292618360.pdf"                   },                   "CopyC": {                       "Unmasked": null,                       "Masked": "https://expressirsforms.s3.us-east-1.amazonaws.com/pdfs/769e7c15-b887-4d64-a50f-444ab16f50d0/d59cd157-4a07-4832-9390-2704a65de1b8/w2c/7d42c237-01ae-442f-b669-69ac174f50ab/m/copyc_1up_2897463954.pdf"                   },                   "CopyD": {                       "Unmasked": null,                       "Masked": "https://expressirsforms.s3.us-east-1.amazonaws.com/pdfs/769e7c15-b887-4d64-a50f-444ab16f50d0/d59cd157-4a07-4832-9390-2704a65de1b8/w2c/7d42c237-01ae-442f-b669-69ac174f50ab/m/copyd_1up_4876050156.pdf"                   }               }           }       ],       "ErrorRecords": null   },   "Errors": null}

Request JSON 2

{ "SubmissionId": "a863c015-91f1-4128-84fc-bb38922b80f9", "RecordIds": [   {     "RecordId": "c4446e74-ee11-43e4-b9db-a7e870714267"   },   {     "RecordId": "f11413f7-3fe3-4d55-9e87-66b687bc404e"   } ], "Customization": {   "TINMaskType": "Masked" }}

Response JSON 2

{   "SubmissionId": null,   "FormW2CRecords": {       "SuccessRecords": null,       "ErrorRecords": [           {               "RecordId": "c4446e74-ee11-43e4-b9db-a7e870714267",               "Status": "PDF_Not_Generated",               "Message": "Your PDF request is prioritized in the queue.Please try again after sometime"           },           {               "RecordId": "f11413f7-3fe3-4d55-9e87-66b687bc404e",               "Status": "Not Transmitted",               "Message": "Given RecordId is not transmitted"           }       ]   },   "Errors": null}

Request JSON 3

{   "RecordIds": [   {     "RecordId": "c4446e74-ee11-43e4-b9db-a7e870714267"   },   {     "RecordId": "f11413f7-3fe3-4d55-9e87-66b687bc404e"   } ]
}

Response JSON 3

{   "SubmissionId": null,   "FormW2CRecords": {       "SuccessRecords": null,       "ErrorRecords": [           {               "RecordId": "c4446e74-ee11-43e4-b9db-a7e870714267",               "Status": "PDF_Not_Generated",               "Message": "Your PDF request is prioritized in the queue.Please try again after sometime"           },           {               "RecordId": "f11413f7-3fe3-4d55-9e87-66b687bc404e",               "Status": "Not Transmitted",               "Message": "Given RecordId is not transmitted"           }       ]   },   "Errors": null}