All
Tax-Reportings
>
All
openapi: 3.0.3
info:
title: Tax Reporting APIs - all
version: v1
description: |
Tax Reporting APIs.
contact:
name: Platform Services - Tax Reporting
url: https://www.jackhenry.com/
email: DC-Operations@jackhenry.com
servers:
- url: https://{API_ENDPOINT}
variables:
API_ENDPOINT:
default: digital.garden-fi.com
security:
- bearerAuth: []
tags:
- name: all
description: All endpoints
paths:
/a/api/tax-reporting/v1/{InstitutionUniversalId}/forms/1099-int:
post:
summary: Insert a new 1099-INT form
parameters:
- name: InstitutionUniversalId
in: path
description: A unique identifier to establish the identity of an Institution/Environment/Brand combination
required: true
schema:
type: string
operationId: InsertForm1099Int
tags:
- 1099-INT
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
taxYear:
type: integer
description: The tax year for which the Form 1099-INT is being submitted.
minimum: 2025
maximum: 2100
example: 2025
recipientId:
type: string
description: Unique identifier for the recipient of the Form 1099-INT data. This is an optional field that can be used to associate the form data with a specific recipient in the system.
example: 123e4567-e89b-12d3-a456-426614174000
formData:
type: object
properties:
issuerOfficeCode:
type: string
description: The office code of the issuer.
nullable: true
maxLength: 4
example: ABCD
cfsfElectionStates:
type: array
nullable: true
maxLength: 62
description: List of state codes.
items:
type: string
maxLength: 2
example:
- CA
- NY
isVoid:
type: boolean
nullable: false
description: Indicates whether the form is void.
example: false
isCorrected:
type: boolean
nullable: false
description: Indicates whether the form is a corrected version of a previously submitted form.
example: false
issuerDetail:
nullable: false
description: Information about the issuer.
type: object
properties:
TIN:
type: string
nullable: false
description: Taxpayer Identification Number.
example: '123456789'
TINType:
type: string
description: Type of Taxpayer Identification Number.
nullable: true
enum:
- Individual
- Business
- Unknown
address:
nullable: false
description: Address details of the issuer.
type: object
properties:
addressLine1:
type: string
nullable: false
description: First line of the address.
maxLength: 35
example: 123 Main St
addressLine2:
type: string
nullable: true
description: Second line of the address.
maxLength: 35
example: Apt 4B
city:
type: string
nullable: false
description: City Name.
maxLength: 40
example: New York
stateOrProvince:
type: string
nullable: false
description: State abbreviation code for US or state/province name for foreign countries.
maxLength: 40
example: NY
postalCode:
type: string
nullable: false
description: US Zipcode or foreign country postal code.
example: '10001'
countryCode:
type: string
nullable: false
description: Country code.
maxLength: 2
example: US
required:
- addressLine1
- city
- stateOrProvince
- postalCode
- countryCode
phoneNumber:
description: Phone number of the issuer.
nullable: true
type: string
minLength: 10
maxLength: 30
example: '2240010002'
personalNameInfo:
type: object
nullable: true
example: null
description: Personal name information.
properties:
firstName:
type: string
nullable: false
description: First name of the individual.
maxLength: 20
example: John
middleName:
type: string
nullable: true
description: Middle name of the individual.
maxLength: 20
example: Michael
lastName:
type: string
nullable: false
description: Last name of the individual.
maxLength: 20
example: Doe
suffixName:
type: string
nullable: true
description: Suffix name of the individual.
maxLength: 20
example: Jr
nameControlText:
type: string
nullable: true
description: Control text for the individual's name.
maxLength: 4
example: DOE
required:
- firstName
- lastName
businessNameInfo:
type: object
nullable: true
description: Business name information.
properties:
businessNameLine1:
type: string
nullable: false
description: First line of the business name.
maxLength: 75
example: Acme Corp
businessNameLine2:
type: string
nullable: true
description: Second line of the business name.
maxLength: 75
example: Investment Division
nameControlText:
type: string
nullable: true
description: Control text for the business name.
maxLength: 4
example: ACME
required:
- businessNameLine1
required:
- TIN
- address
recipientDetail:
nullable: false
description: Information about the recipient.
type: object
properties:
TIN:
type: string
nullable: true
description: Taxpayer Identification Number.
example: '123456789'
TINType:
type: string
nullable: true
description: Type of Taxpayer Identification Number.
enum:
- Individual
- Business
- Unknown
additionalRecipientText:
type: string
nullable: true
description: Additional text for the recipient.
address:
type: object
properties:
addressLine1:
type: string
nullable: false
description: First line of the address.
maxLength: 35
example: 123 Main St
addressLine2:
type: string
nullable: true
description: Second line of the address.
maxLength: 35
example: Apt 4B
city:
type: string
nullable: false
description: City Name.
maxLength: 40
example: New York
stateOrProvince:
type: string
nullable: false
description: State abbreviation code for US or state/province name for foreign countries.
maxLength: 40
example: NY
postalCode:
type: string
nullable: false
description: US Zipcode or foreign country postal code.
example: '10001'
countryCode:
type: string
nullable: false
description: Country code.
maxLength: 2
example: US
required:
- addressLine1
- city
- stateOrProvince
- postalCode
- countryCode
businessNameInfo:
example: null
type: object
description: Business name information.
properties:
businessNameLine1:
type: string
nullable: false
description: First line of the business name.
maxLength: 75
example: Acme Corp
businessNameLine2:
type: string
nullable: true
description: Second line of the business name.
maxLength: 75
example: Investment Division
nameControlText:
type: string
nullable: true
description: Control text for the business name.
maxLength: 4
example: ACME
required:
- businessNameLine1
personalNameInfo:
description: Personal name information of the recipient, required if BusinessNameInfo is not provided.
type: object
properties:
firstName:
type: string
nullable: false
description: First name of the individual.
maxLength: 20
example: John
middleName:
type: string
nullable: true
description: Middle name of the individual.
maxLength: 20
example: Michael
lastName:
type: string
nullable: false
description: Last name of the individual.
maxLength: 20
example: Doe
suffixName:
type: string
nullable: true
description: Suffix name of the individual.
maxLength: 20
example: Jr
nameControlText:
type: string
nullable: true
description: Control text for the individual's name.
maxLength: 4
example: DOE
required:
- firstName
- lastName
required:
- address
recipientAccountNumber:
type: string
nullable: true
description: Recipient's account number.
maxLength: 30
example: '123456789'
isFATCAFilingRequirement:
type: boolean
nullable: false
description: Indicates whether the form is subject to FATCA reporting requirements.
example: true
payerRoutingTransitNumber:
type: string
nullable: true
description: Payer's routing transit number.
maxLength: 9
minLength: 9
example: '123456789'
interestIncomeAmount:
type: string
nullable: true
description: Interest income amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 1000000000000000
example: '123.75'
earlyWithdrawalPenaltyAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Early withdrawal penalty amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '0.01'
usSavingsBondsAndTreasuryObligInterestAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: U.S. Savings Bonds and Treasury Obligations interest amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '1.00'
federalIncomeTaxWithheldAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Federal income tax withheld amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '4.45'
investmentExpenseAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Investment expense amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '2.01'
foreignTaxesPaidAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Foreign taxes paid amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '3.00'
foreignCountryOrUSPossessionCode:
type: string
nullable: true
description: Foreign country or U.S. possession code.
example: CA
taxExemptInterestAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Tax-exempt interest amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '5.25'
specifiedPrivateActivityBondInterestAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Specified private activity bond interest amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '6.30'
marketDiscountAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Market discount amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '7.40'
bondPremiumAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Bond premium amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '8.50'
treasuryObligBondPremiumAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Treasury obligation bond premium amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '9.60'
taxExemptBondPremiumAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Tax-exempt bond premium amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '10.70'
taxExemptTaxCreditBondCUSIPNumber:
type: string
description: CUSIP number for tax-exempt tax credit bonds.
nullable: true
maxLength: 9
example: '123456789'
stateTaxDetails:
type: array
nullable: true
items:
type: object
description: Details about the state tax.
properties:
stateAbbreviationCode:
type: string
nullable: false
description: State abbreviation code.
maxLength: 2
example: NY
stateIdNumber:
type: string
nullable: false
description: State ID number.
maxLength: 25
example: A123456789
stateTaxWithheldAmount:
type: string
nullable: false
description: Total state tax withheld amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '102.02'
stateIncomeAmount:
type: string
nullable: false
description: Total state income amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '99.15'
stateDistributionAmount:
type: string
nullable: false
description: Total state distribution amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '45.48'
specialDataEntriesText:
type: string
nullable: true
description: Special data entries text.
required:
- stateAbbreviationCode
localTaxDetails:
type: array
nullable: true
items:
type: object
description: Details about the local tax.
properties:
stateAbbreviationCode:
type: string
nullable: false
description: State abbreviation code.
maxLength: 2
example: NY
localTaxWithheldAmount:
type: string
nullable: true
description: Total local tax withheld amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '102.02'
localIncomeAmount:
type: string
nullable: true
description: Total local income amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '99.15'
localityName:
type: string
nullable: true
description: Name of the locality.
maxLength: 100
example: New York City
localAbbreviationCode:
type: string
nullable: true
description: Locality abbreviation code.
maxLength: 10
example: NYC
localDistributionAmount:
type: string
nullable: true
description: Total local distribution amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '45.48'
specialDataEntriesText:
type: string
nullable: true
description: Special data entries text.
required:
- stateAbbreviationCode
required:
- issuerDetail
- recipientDetail
required:
- taxYear
- formData
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: Unique identifier for the created Form 1099-INT data.
example: 987e6543-e21b-34d3-b654-426614174999
example:
id: 1e2e84ad-58a9-487c-a7ab-ecc23c911a45
'400':
description: Bad Request
content:
application/problem+json:
schema:
type: object
required:
- type
- title
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
title:
description: A user readable string title of the error type.
type: string
details:
description: An array of strings which provide additional details for the error message.
type: array
items:
type: string
data:
description: An array of strings which provide additional data for the error message.
type: array
items:
type: object
properties:
description:
type: string
element:
type: string
elementValue:
type: string
examples:
invalidRequest:
summary: Invalid request
value:
type: Bad Request
title: Incoming request failed validation
details:
- taxYear must be greater than 2025.
- issuerDetail.TIN must be exactly 9 digits (0-9), with no separators
- issuerDetail.Address.countryCode is not a valid value.
data: null
'401':
description: Although the HTTP standard specifies "unauthorized", semantically this response means "unauthenticated". That is, the client must authenticate itself to get the requested response.
'403':
description: The client does not have access rights to the content; that is, it is unauthorized, so the server is refusing to give the requested resource. Unlike 401, the clients identity is known to the server.
'500':
description: An unexpected internal server error occurred while processing the request.
content:
application/problem+json:
schema:
type: object
required:
- type
- title
- details
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
nullable: false
example: jackhenry/operation-failed
title:
description: A end-user readable string title of the error type.
nullable: false
type: string
details:
description: An array of end-user readable strings which provide additional details for the error message.
type: array
nullable: false
items:
type: string
data:
type: object
description: |
Additional data that could be useful to a developer or for handing the error programmatically. The schema for the data in this object is intentionally left undefined.
nullable: true
examples:
internalServerError:
summary: Internal server error
value:
type: general/internal-server-error
title: Internal server error
details:
- Unexpected internal server error
/a/api/tax-reporting/v1/{InstitutionUniversalId}/forms/1099-int/{id}:
get:
summary: Get an existing 1099-INT form
parameters:
- name: InstitutionUniversalId
in: path
description: A unique identifier to establish the identity of an Institution/Environment/Brand combination
required: true
schema:
type: string
- in: path
name: id
required: true
schema:
type: string
format: uuid
description: A unique identifier to establish the identity of the form.
operationId: GetForm1099Int
tags:
- 1099-INT
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: Unique identifier for the Form 1099-INT data.
example: 987e6543-e21b-34d3-b654-426614174999
recipientId:
type: string
description: Unique identifier for the recipient of the Form 1099-INT data.
example: 123e4567-e89b-12d3-a456-426614174000
taxYear:
type: integer
description: The tax year for which the Form 1099-INT is being submitted.
example: 2025
formData:
type: object
properties:
issuerOfficeCode:
type: string
description: The office code of the issuer.
nullable: true
maxLength: 4
example: ABCD
cfsfElectionStates:
type: array
nullable: true
maxLength: 62
description: List of state codes.
items:
type: string
maxLength: 2
example:
- CA
- NY
isVoid:
type: boolean
nullable: false
description: Indicates whether the form is void.
example: false
isCorrected:
type: boolean
nullable: false
description: Indicates whether the form is a corrected version of a previously submitted form.
example: false
issuerDetail:
nullable: false
description: Information about the issuer.
type: object
properties:
TIN:
type: string
nullable: false
description: Taxpayer Identification Number.
example: '123456789'
TINType:
type: string
description: Type of Taxpayer Identification Number.
nullable: true
enum:
- Individual
- Business
- Unknown
address:
nullable: false
description: Address details of the issuer.
type: object
properties:
addressLine1:
type: string
nullable: false
description: First line of the address.
maxLength: 35
example: 123 Main St
addressLine2:
type: string
nullable: true
description: Second line of the address.
maxLength: 35
example: Apt 4B
city:
type: string
nullable: false
description: City Name.
maxLength: 40
example: New York
stateOrProvince:
type: string
nullable: false
description: State abbreviation code for US or state/province name for foreign countries.
maxLength: 40
example: NY
postalCode:
type: string
nullable: false
description: US Zipcode or foreign country postal code.
example: '10001'
countryCode:
type: string
nullable: false
description: Country code.
maxLength: 2
example: US
required:
- addressLine1
- city
- stateOrProvince
- postalCode
- countryCode
phoneNumber:
description: Phone number of the issuer.
nullable: true
type: string
minLength: 10
maxLength: 30
example: '2240010002'
personalNameInfo:
type: object
nullable: true
example: null
description: Personal name information.
properties:
firstName:
type: string
nullable: false
description: First name of the individual.
maxLength: 20
example: John
middleName:
type: string
nullable: true
description: Middle name of the individual.
maxLength: 20
example: Michael
lastName:
type: string
nullable: false
description: Last name of the individual.
maxLength: 20
example: Doe
suffixName:
type: string
nullable: true
description: Suffix name of the individual.
maxLength: 20
example: Jr
nameControlText:
type: string
nullable: true
description: Control text for the individual's name.
maxLength: 4
example: DOE
required:
- firstName
- lastName
businessNameInfo:
type: object
nullable: true
description: Business name information.
properties:
businessNameLine1:
type: string
nullable: false
description: First line of the business name.
maxLength: 75
example: Acme Corp
businessNameLine2:
type: string
nullable: true
description: Second line of the business name.
maxLength: 75
example: Investment Division
nameControlText:
type: string
nullable: true
description: Control text for the business name.
maxLength: 4
example: ACME
required:
- businessNameLine1
required:
- TIN
- address
recipientDetail:
nullable: false
description: Information about the recipient.
type: object
properties:
TIN:
type: string
nullable: true
description: Taxpayer Identification Number.
example: '123456789'
TINType:
type: string
nullable: true
description: Type of Taxpayer Identification Number.
enum:
- Individual
- Business
- Unknown
additionalRecipientText:
type: string
nullable: true
description: Additional text for the recipient.
address:
type: object
properties:
addressLine1:
type: string
nullable: false
description: First line of the address.
maxLength: 35
example: 123 Main St
addressLine2:
type: string
nullable: true
description: Second line of the address.
maxLength: 35
example: Apt 4B
city:
type: string
nullable: false
description: City Name.
maxLength: 40
example: New York
stateOrProvince:
type: string
nullable: false
description: State abbreviation code for US or state/province name for foreign countries.
maxLength: 40
example: NY
postalCode:
type: string
nullable: false
description: US Zipcode or foreign country postal code.
example: '10001'
countryCode:
type: string
nullable: false
description: Country code.
maxLength: 2
example: US
required:
- addressLine1
- city
- stateOrProvince
- postalCode
- countryCode
businessNameInfo:
example: null
type: object
description: Business name information.
properties:
businessNameLine1:
type: string
nullable: false
description: First line of the business name.
maxLength: 75
example: Acme Corp
businessNameLine2:
type: string
nullable: true
description: Second line of the business name.
maxLength: 75
example: Investment Division
nameControlText:
type: string
nullable: true
description: Control text for the business name.
maxLength: 4
example: ACME
required:
- businessNameLine1
personalNameInfo:
description: Personal name information of the recipient, required if BusinessNameInfo is not provided.
type: object
properties:
firstName:
type: string
nullable: false
description: First name of the individual.
maxLength: 20
example: John
middleName:
type: string
nullable: true
description: Middle name of the individual.
maxLength: 20
example: Michael
lastName:
type: string
nullable: false
description: Last name of the individual.
maxLength: 20
example: Doe
suffixName:
type: string
nullable: true
description: Suffix name of the individual.
maxLength: 20
example: Jr
nameControlText:
type: string
nullable: true
description: Control text for the individual's name.
maxLength: 4
example: DOE
required:
- firstName
- lastName
required:
- address
recipientAccountNumber:
type: string
nullable: true
description: Recipient's account number.
maxLength: 30
example: '123456789'
isFATCAFilingRequirement:
type: boolean
nullable: false
description: Indicates whether the form is subject to FATCA reporting requirements.
example: true
payerRoutingTransitNumber:
type: string
nullable: true
description: Payer's routing transit number.
maxLength: 9
minLength: 9
example: '123456789'
interestIncomeAmount:
type: string
nullable: true
description: Interest income amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 1000000000000000
example: '123.75'
earlyWithdrawalPenaltyAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Early withdrawal penalty amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '0.01'
usSavingsBondsAndTreasuryObligInterestAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: U.S. Savings Bonds and Treasury Obligations interest amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '1.00'
federalIncomeTaxWithheldAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Federal income tax withheld amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '4.45'
investmentExpenseAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Investment expense amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '2.01'
foreignTaxesPaidAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Foreign taxes paid amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '3.00'
foreignCountryOrUSPossessionCode:
type: string
nullable: true
description: Foreign country or U.S. possession code.
example: CA
taxExemptInterestAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Tax-exempt interest amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '5.25'
specifiedPrivateActivityBondInterestAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Specified private activity bond interest amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '6.30'
marketDiscountAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Market discount amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '7.40'
bondPremiumAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Bond premium amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '8.50'
treasuryObligBondPremiumAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Treasury obligation bond premium amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '9.60'
taxExemptBondPremiumAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Tax-exempt bond premium amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '10.70'
taxExemptTaxCreditBondCUSIPNumber:
type: string
description: CUSIP number for tax-exempt tax credit bonds.
nullable: true
maxLength: 9
example: '123456789'
stateTaxDetails:
type: array
nullable: true
items:
type: object
description: Details about the state tax.
properties:
stateAbbreviationCode:
type: string
nullable: false
description: State abbreviation code.
maxLength: 2
example: NY
stateIdNumber:
type: string
nullable: false
description: State ID number.
maxLength: 25
example: A123456789
stateTaxWithheldAmount:
type: string
nullable: false
description: Total state tax withheld amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '102.02'
stateIncomeAmount:
type: string
nullable: false
description: Total state income amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '99.15'
stateDistributionAmount:
type: string
nullable: false
description: Total state distribution amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '45.48'
specialDataEntriesText:
type: string
nullable: true
description: Special data entries text.
required:
- stateAbbreviationCode
localTaxDetails:
type: array
nullable: true
items:
type: object
description: Details about the local tax.
properties:
stateAbbreviationCode:
type: string
nullable: false
description: State abbreviation code.
maxLength: 2
example: NY
localTaxWithheldAmount:
type: string
nullable: true
description: Total local tax withheld amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '102.02'
localIncomeAmount:
type: string
nullable: true
description: Total local income amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '99.15'
localityName:
type: string
nullable: true
description: Name of the locality.
maxLength: 100
example: New York City
localAbbreviationCode:
type: string
nullable: true
description: Locality abbreviation code.
maxLength: 10
example: NYC
localDistributionAmount:
type: string
nullable: true
description: Total local distribution amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '45.48'
specialDataEntriesText:
type: string
nullable: true
description: Special data entries text.
required:
- stateAbbreviationCode
required:
- issuerDetail
- recipientDetail
createdDateTime:
type: string
description: The date and time when the Form 1099-INT data was created.
format: date-time
example: '2024-01-15T10:30:00Z'
modifiedDateTime:
type: string
format: date-time
description: The date and time when the Form 1099-INT data was last modified.
example: '2024-01-15T11:30:00Z'
'400':
description: Bad Request
content:
application/problem+json:
schema:
type: object
required:
- type
- title
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
title:
description: A user readable string title of the error type.
type: string
details:
description: An array of strings which provide additional details for the error message.
type: array
items:
type: string
data:
description: An array of strings which provide additional data for the error message.
type: array
items:
type: object
properties:
description:
type: string
element:
type: string
elementValue:
type: string
'401':
description: Although the HTTP standard specifies "unauthorized", semantically this response means "unauthenticated". That is, the client must authenticate itself to get the requested response.
'403':
description: The client does not have access rights to the content; that is, it is unauthorized, so the server is refusing to give the requested resource. Unlike 401, the clients identity is known to the server.
'404':
description: The server can not find the requested resource. In an API, this can also mean that the endpoint is valid but the resource itself does not exist. Servers may also send this response instead of 403 to hide the existence of a resource from an unauthorized client.
'500':
description: An unexpected internal server error occurred while processing the request.
content:
application/problem+json:
schema:
type: object
required:
- type
- title
- details
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
nullable: false
example: jackhenry/operation-failed
title:
description: A end-user readable string title of the error type.
nullable: false
type: string
details:
description: An array of end-user readable strings which provide additional details for the error message.
type: array
nullable: false
items:
type: string
data:
type: object
description: |
Additional data that could be useful to a developer or for handing the error programmatically. The schema for the data in this object is intentionally left undefined.
nullable: true
examples:
internalServerError:
summary: Internal server error
value:
type: general/internal-server-error
title: Internal server error
details:
- Unexpected internal server error
put:
summary: Update an existing 1099-INT form
parameters:
- name: InstitutionUniversalId
in: path
description: A unique identifier to establish the identity of an Institution/Environment/Brand combination
required: true
schema:
type: string
- in: path
name: id
required: true
schema:
type: string
format: uuid
description: A unique identifier to establish the identity of the form.
operationId: UpdateForm1099Int
tags:
- 1099-INT
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
taxYear:
type: integer
description: The tax year for which the Form 1099-INT is being submitted.
minimum: 2025
maximum: 2100
example: 2025
recipientId:
type: string
description: Unique identifier for the recipient of the Form 1099-INT data. This is an optional field that can be used to associate the form data with a specific recipient in the system.
example: 123e4567-e89b-12d3-a456-426614174000
formData:
type: object
properties:
issuerOfficeCode:
type: string
description: The office code of the issuer.
nullable: true
maxLength: 4
example: ABCD
cfsfElectionStates:
type: array
nullable: true
maxLength: 62
description: List of state codes.
items:
type: string
maxLength: 2
example:
- CA
- NY
isVoid:
type: boolean
nullable: false
description: Indicates whether the form is void.
example: false
isCorrected:
type: boolean
nullable: false
description: Indicates whether the form is a corrected version of a previously submitted form.
example: false
issuerDetail:
nullable: false
description: Information about the issuer.
type: object
properties:
TIN:
type: string
nullable: false
description: Taxpayer Identification Number.
example: '123456789'
TINType:
type: string
description: Type of Taxpayer Identification Number.
nullable: true
enum:
- Individual
- Business
- Unknown
address:
nullable: false
description: Address details of the issuer.
type: object
properties:
addressLine1:
type: string
nullable: false
description: First line of the address.
maxLength: 35
example: 123 Main St
addressLine2:
type: string
nullable: true
description: Second line of the address.
maxLength: 35
example: Apt 4B
city:
type: string
nullable: false
description: City Name.
maxLength: 40
example: New York
stateOrProvince:
type: string
nullable: false
description: State abbreviation code for US or state/province name for foreign countries.
maxLength: 40
example: NY
postalCode:
type: string
nullable: false
description: US Zipcode or foreign country postal code.
example: '10001'
countryCode:
type: string
nullable: false
description: Country code.
maxLength: 2
example: US
required:
- addressLine1
- city
- stateOrProvince
- postalCode
- countryCode
phoneNumber:
description: Phone number of the issuer.
nullable: true
type: string
minLength: 10
maxLength: 30
example: '2240010002'
personalNameInfo:
type: object
nullable: true
example: null
description: Personal name information.
properties:
firstName:
type: string
nullable: false
description: First name of the individual.
maxLength: 20
example: John
middleName:
type: string
nullable: true
description: Middle name of the individual.
maxLength: 20
example: Michael
lastName:
type: string
nullable: false
description: Last name of the individual.
maxLength: 20
example: Doe
suffixName:
type: string
nullable: true
description: Suffix name of the individual.
maxLength: 20
example: Jr
nameControlText:
type: string
nullable: true
description: Control text for the individual's name.
maxLength: 4
example: DOE
required:
- firstName
- lastName
businessNameInfo:
type: object
nullable: true
description: Business name information.
properties:
businessNameLine1:
type: string
nullable: false
description: First line of the business name.
maxLength: 75
example: Acme Corp
businessNameLine2:
type: string
nullable: true
description: Second line of the business name.
maxLength: 75
example: Investment Division
nameControlText:
type: string
nullable: true
description: Control text for the business name.
maxLength: 4
example: ACME
required:
- businessNameLine1
required:
- TIN
- address
recipientDetail:
nullable: false
description: Information about the recipient.
type: object
properties:
TIN:
type: string
nullable: true
description: Taxpayer Identification Number.
example: '123456789'
TINType:
type: string
nullable: true
description: Type of Taxpayer Identification Number.
enum:
- Individual
- Business
- Unknown
additionalRecipientText:
type: string
nullable: true
description: Additional text for the recipient.
address:
type: object
properties:
addressLine1:
type: string
nullable: false
description: First line of the address.
maxLength: 35
example: 123 Main St
addressLine2:
type: string
nullable: true
description: Second line of the address.
maxLength: 35
example: Apt 4B
city:
type: string
nullable: false
description: City Name.
maxLength: 40
example: New York
stateOrProvince:
type: string
nullable: false
description: State abbreviation code for US or state/province name for foreign countries.
maxLength: 40
example: NY
postalCode:
type: string
nullable: false
description: US Zipcode or foreign country postal code.
example: '10001'
countryCode:
type: string
nullable: false
description: Country code.
maxLength: 2
example: US
required:
- addressLine1
- city
- stateOrProvince
- postalCode
- countryCode
businessNameInfo:
example: null
type: object
description: Business name information.
properties:
businessNameLine1:
type: string
nullable: false
description: First line of the business name.
maxLength: 75
example: Acme Corp
businessNameLine2:
type: string
nullable: true
description: Second line of the business name.
maxLength: 75
example: Investment Division
nameControlText:
type: string
nullable: true
description: Control text for the business name.
maxLength: 4
example: ACME
required:
- businessNameLine1
personalNameInfo:
description: Personal name information of the recipient, required if BusinessNameInfo is not provided.
type: object
properties:
firstName:
type: string
nullable: false
description: First name of the individual.
maxLength: 20
example: John
middleName:
type: string
nullable: true
description: Middle name of the individual.
maxLength: 20
example: Michael
lastName:
type: string
nullable: false
description: Last name of the individual.
maxLength: 20
example: Doe
suffixName:
type: string
nullable: true
description: Suffix name of the individual.
maxLength: 20
example: Jr
nameControlText:
type: string
nullable: true
description: Control text for the individual's name.
maxLength: 4
example: DOE
required:
- firstName
- lastName
required:
- address
recipientAccountNumber:
type: string
nullable: true
description: Recipient's account number.
maxLength: 30
example: '123456789'
isFATCAFilingRequirement:
type: boolean
nullable: false
description: Indicates whether the form is subject to FATCA reporting requirements.
example: true
payerRoutingTransitNumber:
type: string
nullable: true
description: Payer's routing transit number.
maxLength: 9
minLength: 9
example: '123456789'
interestIncomeAmount:
type: string
nullable: true
description: Interest income amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 1000000000000000
example: '123.75'
earlyWithdrawalPenaltyAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Early withdrawal penalty amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '0.01'
usSavingsBondsAndTreasuryObligInterestAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: U.S. Savings Bonds and Treasury Obligations interest amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '1.00'
federalIncomeTaxWithheldAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Federal income tax withheld amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '4.45'
investmentExpenseAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Investment expense amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '2.01'
foreignTaxesPaidAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Foreign taxes paid amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '3.00'
foreignCountryOrUSPossessionCode:
type: string
nullable: true
description: Foreign country or U.S. possession code.
example: CA
taxExemptInterestAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Tax-exempt interest amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '5.25'
specifiedPrivateActivityBondInterestAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Specified private activity bond interest amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '6.30'
marketDiscountAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Market discount amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '7.40'
bondPremiumAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Bond premium amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '8.50'
treasuryObligBondPremiumAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Treasury obligation bond premium amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '9.60'
taxExemptBondPremiumAmount:
type: string
nullable: true
minimum: 0
maximum: 1000000000000000
description: Tax-exempt bond premium amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
example: '10.70'
taxExemptTaxCreditBondCUSIPNumber:
type: string
description: CUSIP number for tax-exempt tax credit bonds.
nullable: true
maxLength: 9
example: '123456789'
stateTaxDetails:
type: array
nullable: true
items:
type: object
description: Details about the state tax.
properties:
stateAbbreviationCode:
type: string
nullable: false
description: State abbreviation code.
maxLength: 2
example: NY
stateIdNumber:
type: string
nullable: false
description: State ID number.
maxLength: 25
example: A123456789
stateTaxWithheldAmount:
type: string
nullable: false
description: Total state tax withheld amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '102.02'
stateIncomeAmount:
type: string
nullable: false
description: Total state income amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '99.15'
stateDistributionAmount:
type: string
nullable: false
description: Total state distribution amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '45.48'
specialDataEntriesText:
type: string
nullable: true
description: Special data entries text.
required:
- stateAbbreviationCode
localTaxDetails:
type: array
nullable: true
items:
type: object
description: Details about the local tax.
properties:
stateAbbreviationCode:
type: string
nullable: false
description: State abbreviation code.
maxLength: 2
example: NY
localTaxWithheldAmount:
type: string
nullable: true
description: Total local tax withheld amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '102.02'
localIncomeAmount:
type: string
nullable: true
description: Total local income amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '99.15'
localityName:
type: string
nullable: true
description: Name of the locality.
maxLength: 100
example: New York City
localAbbreviationCode:
type: string
nullable: true
description: Locality abbreviation code.
maxLength: 10
example: NYC
localDistributionAmount:
type: string
nullable: true
description: Total local distribution amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '45.48'
specialDataEntriesText:
type: string
nullable: true
description: Special data entries text.
required:
- stateAbbreviationCode
required:
- issuerDetail
- recipientDetail
required:
- taxYear
- formData
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
properties:
changed:
description: Indicates whether the Form 1099-INT data was changed successfully.
type: boolean
'400':
description: Bad Request
content:
application/problem+json:
schema:
type: object
required:
- type
- title
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
title:
description: A user readable string title of the error type.
type: string
details:
description: An array of strings which provide additional details for the error message.
type: array
items:
type: string
data:
description: An array of strings which provide additional data for the error message.
type: array
items:
type: object
properties:
description:
type: string
element:
type: string
elementValue:
type: string
examples:
invalidRequest:
summary: Invalid request
value:
type: Bad Request
title: Incoming request failed validation
details:
- taxYear must be greater than 2025.
- issuerDetail.TIN must be exactly 9 digits (0-9), with no separators
- issuerDetail.Address.countryCode is not a valid value.
data: null
'401':
description: Although the HTTP standard specifies "unauthorized", semantically this response means "unauthenticated". That is, the client must authenticate itself to get the requested response.
'403':
description: The client does not have access rights to the content; that is, it is unauthorized, so the server is refusing to give the requested resource. Unlike 401, the clients identity is known to the server.
'500':
description: An unexpected internal server error occurred while processing the request.
content:
application/problem+json:
schema:
type: object
required:
- type
- title
- details
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
nullable: false
example: jackhenry/operation-failed
title:
description: A end-user readable string title of the error type.
nullable: false
type: string
details:
description: An array of end-user readable strings which provide additional details for the error message.
type: array
nullable: false
items:
type: string
data:
type: object
description: |
Additional data that could be useful to a developer or for handing the error programmatically. The schema for the data in this object is intentionally left undefined.
nullable: true
examples:
internalServerError:
summary: Internal server error
value:
type: general/internal-server-error
title: Internal server error
details:
- Unexpected internal server error
delete:
summary: Delete an existing 1099-INT form
parameters:
- name: InstitutionUniversalId
in: path
description: A unique identifier to establish the identity of an Institution/Environment/Brand combination
required: true
schema:
type: string
- in: path
name: id
required: true
schema:
type: string
format: uuid
description: A unique identifier to establish the identity of the form.
operationId: DeleteForm1099Int
tags:
- 1099-INT
responses:
'200':
description: Success
'400':
description: Bad Request
content:
application/problem+json:
schema:
type: object
required:
- type
- title
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
title:
description: A user readable string title of the error type.
type: string
details:
description: An array of strings which provide additional details for the error message.
type: array
items:
type: string
data:
description: An array of strings which provide additional data for the error message.
type: array
items:
type: object
properties:
description:
type: string
element:
type: string
elementValue:
type: string
'401':
description: Although the HTTP standard specifies "unauthorized", semantically this response means "unauthenticated". That is, the client must authenticate itself to get the requested response.
'403':
description: The client does not have access rights to the content; that is, it is unauthorized, so the server is refusing to give the requested resource. Unlike 401, the clients identity is known to the server.
'500':
description: An unexpected internal server error occurred while processing the request.
content:
application/problem+json:
schema:
type: object
required:
- type
- title
- details
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
nullable: false
example: jackhenry/operation-failed
title:
description: A end-user readable string title of the error type.
nullable: false
type: string
details:
description: An array of end-user readable strings which provide additional details for the error message.
type: array
nullable: false
items:
type: string
data:
type: object
description: |
Additional data that could be useful to a developer or for handing the error programmatically. The schema for the data in this object is intentionally left undefined.
nullable: true
examples:
internalServerError:
summary: Internal server error
value:
type: general/internal-server-error
title: Internal server error
details:
- Unexpected internal server error
/a/api/tax-reporting/v1/{InstitutionUniversalId}/forms/1099-misc:
post:
summary: Insert a new 1099-MISC form
parameters:
- name: InstitutionUniversalId
in: path
description: A unique identifier to establish the identity of an Institution/Environment/Brand combination
required: true
schema:
type: string
operationId: InsertForm1099Misc
tags:
- 1099-MISC
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
taxYear:
type: integer
minimum: 2025
maximum: 2100
example: 2025
recipientId:
type: string
example: 123e4567-e89b-12d3-a456-426614174000
formData:
type: object
properties:
issuerOfficeCode:
type: string
description: The office code of the issuer.
nullable: true
example: ABCD
cfsfElectionStates:
type: array
description: List of state codes.
items:
type: string
nullable: true
example:
- CA
- NY
isVoid:
type: boolean
description: Indicates whether the form is void.
nullable: false
example: false
isCorrected:
type: boolean
description: Indicates whether the form is a corrected version of a previously submitted form.
nullable: false
example: false
issuerDetail:
description: Information about the issuer.
nullable: false
type: object
properties:
TIN:
type: string
nullable: false
description: Taxpayer Identification Number.
example: '123456789'
TINType:
type: string
description: Type of Taxpayer Identification Number.
nullable: true
enum:
- Individual
- Business
- Unknown
address:
nullable: false
description: Address details of the issuer.
type: object
properties:
addressLine1:
type: string
nullable: false
description: First line of the address.
maxLength: 35
example: 123 Main St
addressLine2:
type: string
nullable: true
description: Second line of the address.
maxLength: 35
example: Apt 4B
city:
type: string
nullable: false
description: City Name.
maxLength: 40
example: New York
stateOrProvince:
type: string
nullable: false
description: State abbreviation code for US or state/province name for foreign countries.
maxLength: 40
example: NY
postalCode:
type: string
nullable: false
description: US Zipcode or foreign country postal code.
example: '10001'
countryCode:
type: string
nullable: false
description: Country code.
maxLength: 2
example: US
required:
- addressLine1
- city
- stateOrProvince
- postalCode
- countryCode
phoneNumber:
description: Phone number of the issuer.
nullable: true
type: string
minLength: 10
maxLength: 30
example: '2240010002'
personalNameInfo:
type: object
nullable: true
example: null
description: Personal name information.
properties:
firstName:
type: string
nullable: false
description: First name of the individual.
maxLength: 20
example: John
middleName:
type: string
nullable: true
description: Middle name of the individual.
maxLength: 20
example: Michael
lastName:
type: string
nullable: false
description: Last name of the individual.
maxLength: 20
example: Doe
suffixName:
type: string
nullable: true
description: Suffix name of the individual.
maxLength: 20
example: Jr
nameControlText:
type: string
nullable: true
description: Control text for the individual's name.
maxLength: 4
example: DOE
required:
- firstName
- lastName
businessNameInfo:
type: object
nullable: true
description: Business name information.
properties:
businessNameLine1:
type: string
nullable: false
description: First line of the business name.
maxLength: 75
example: Acme Corp
businessNameLine2:
type: string
nullable: true
description: Second line of the business name.
maxLength: 75
example: Investment Division
nameControlText:
type: string
nullable: true
description: Control text for the business name.
maxLength: 4
example: ACME
required:
- businessNameLine1
required:
- TIN
- address
recipientDetail:
description: Information about the recipient.
nullable: false
type: object
properties:
TIN:
type: string
nullable: true
description: Taxpayer Identification Number.
example: '123456789'
TINType:
type: string
nullable: true
description: Type of Taxpayer Identification Number.
enum:
- Individual
- Business
- Unknown
additionalRecipientText:
type: string
nullable: true
description: Additional text for the recipient.
address:
type: object
properties:
addressLine1:
type: string
nullable: false
description: First line of the address.
maxLength: 35
example: 123 Main St
addressLine2:
type: string
nullable: true
description: Second line of the address.
maxLength: 35
example: Apt 4B
city:
type: string
nullable: false
description: City Name.
maxLength: 40
example: New York
stateOrProvince:
type: string
nullable: false
description: State abbreviation code for US or state/province name for foreign countries.
maxLength: 40
example: NY
postalCode:
type: string
nullable: false
description: US Zipcode or foreign country postal code.
example: '10001'
countryCode:
type: string
nullable: false
description: Country code.
maxLength: 2
example: US
required:
- addressLine1
- city
- stateOrProvince
- postalCode
- countryCode
businessNameInfo:
example: null
type: object
description: Business name information.
properties:
businessNameLine1:
type: string
nullable: false
description: First line of the business name.
maxLength: 75
example: Acme Corp
businessNameLine2:
type: string
nullable: true
description: Second line of the business name.
maxLength: 75
example: Investment Division
nameControlText:
type: string
nullable: true
description: Control text for the business name.
maxLength: 4
example: ACME
required:
- businessNameLine1
personalNameInfo:
description: Personal name information of the recipient, required if BusinessNameInfo is not provided.
type: object
properties:
firstName:
type: string
nullable: false
description: First name of the individual.
maxLength: 20
example: John
middleName:
type: string
nullable: true
description: Middle name of the individual.
maxLength: 20
example: Michael
lastName:
type: string
nullable: false
description: Last name of the individual.
maxLength: 20
example: Doe
suffixName:
type: string
nullable: true
description: Suffix name of the individual.
maxLength: 20
example: Jr
nameControlText:
type: string
nullable: true
description: Control text for the individual's name.
maxLength: 4
example: DOE
required:
- firstName
- lastName
required:
- address
recipientAccountNumber:
type: string
description: Recipient's account number.
nullable: true
example: '123456789'
isFATCAFilingRequirement:
type: boolean
description: Indicates whether the form is subject to FATCA reporting requirements.
nullable: false
example: true
rentAmount:
type: string
description: Rent amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '1000.00'
royaltyAmount:
type: string
description: Royalties amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '500.00'
otherIncomeAmount:
type: string
description: Other income amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '200.00'
federalIncomeTaxWithheldAmount:
type: string
description: Federal income tax withheld amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '50.00'
fishingBoatProceedsAmount:
type: string
description: Fishing boat proceeds amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '0.00'
medicalHealthCarePaymentsAmount:
type: string
description: Medical and health care payments amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '0.00'
directSaleAboveThresholdInd:
type: boolean
description: Direct sale above threshold indicator.
nullable: false
example: false
substitutePaymentsAmount:
type: string
description: Substitute payments amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '0.00'
cropInsuranceProceedsAmount:
type: string
description: Crop insurance proceeds amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '0.00'
attorneyGrossProceedsPaidAmount:
type: string
description: Gross proceeds paid to an attorney amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '0.00'
fishPurchasedForResaleAmount:
type: string
description: Fish purchased for resale amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '0.00'
section409ADeferralsAmount:
type: string
description: Section 409A deferrals amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '0.00'
nonqlfyDeferredCompensationAmount:
type: string
description: Nonqualified deferred compensation amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '0.00'
stateTaxDetails:
type: array
description: State tax details.
items:
type: object
description: Details about the state tax.
properties:
stateAbbreviationCode:
type: string
nullable: false
description: State abbreviation code.
maxLength: 2
example: NY
stateIdNumber:
type: string
nullable: false
description: State ID number.
maxLength: 25
example: A123456789
stateTaxWithheldAmount:
type: string
nullable: false
description: Total state tax withheld amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '102.02'
stateIncomeAmount:
type: string
nullable: false
description: Total state income amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '99.15'
stateDistributionAmount:
type: string
nullable: false
description: Total state distribution amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '45.48'
specialDataEntriesText:
type: string
nullable: true
description: Special data entries text.
required:
- stateAbbreviationCode
nullable: true
example:
- stateAbbreviationCode: NY
stateIdNumber: A123456789
stateTaxWithheldAmount: '102.02'
stateIncomeAmount: '99.15'
stateDistributionAmount: '45.48'
localTaxDetails:
type: array
description: Local tax details.
items:
type: object
description: Details about the local tax.
properties:
stateAbbreviationCode:
type: string
nullable: false
description: State abbreviation code.
maxLength: 2
example: NY
localTaxWithheldAmount:
type: string
nullable: true
description: Total local tax withheld amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '102.02'
localIncomeAmount:
type: string
nullable: true
description: Total local income amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '99.15'
localityName:
type: string
nullable: true
description: Name of the locality.
maxLength: 100
example: New York City
localAbbreviationCode:
type: string
nullable: true
description: Locality abbreviation code.
maxLength: 10
example: NYC
localDistributionAmount:
type: string
nullable: true
description: Total local distribution amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '45.48'
specialDataEntriesText:
type: string
nullable: true
description: Special data entries text.
required:
- stateAbbreviationCode
nullable: true
example:
- stateAbbreviationCode: NY
localTaxWithheldAmount: '102.02'
localIncomeAmount: '99.15'
localityName: New York City
localAbbreviationCode: NYC
localDistributionAmount: '45.48'
required:
- issuerDetail
- recipientDetail
required:
- taxYear
- formData
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 987e6543-e21b-34d3-b654-426614174999
example:
id: 1e2e84ad-58a9-487c-a7ab-ecc23c911a45
'400':
description: Bad Request
content:
application/problem+json:
schema:
type: object
required:
- type
- title
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
title:
description: A user readable string title of the error type.
type: string
details:
description: An array of strings which provide additional details for the error message.
type: array
items:
type: string
data:
description: An array of strings which provide additional data for the error message.
type: array
items:
type: object
properties:
description:
type: string
element:
type: string
elementValue:
type: string
examples:
invalidRequest:
summary: Invalid request
value:
type: Bad Request
title: Incoming request failed validation
details:
- taxYear must be greater than 2025.
data: null
'401':
description: Although the HTTP standard specifies "unauthorized", semantically this response means "unauthenticated". That is, the client must authenticate itself to get the requested response.
'403':
description: The client does not have access rights to the content; that is, it is unauthorized, so the server is refusing to give the requested resource. Unlike 401, the clients identity is known to the server.
'500':
description: An unexpected internal server error occurred while processing the request.
content:
application/problem+json:
schema:
type: object
required:
- type
- title
- details
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
nullable: false
example: jackhenry/operation-failed
title:
description: A end-user readable string title of the error type.
nullable: false
type: string
details:
description: An array of end-user readable strings which provide additional details for the error message.
type: array
nullable: false
items:
type: string
data:
type: object
description: |
Additional data that could be useful to a developer or for handing the error programmatically. The schema for the data in this object is intentionally left undefined.
nullable: true
examples:
internalServerError:
summary: Internal server error
value:
type: general/internal-server-error
title: Internal server error
details:
- Unexpected internal server error
/a/api/tax-reporting/v1/{InstitutionUniversalId}/forms/1099-misc/{id}:
get:
summary: Get an existing 1099-MISC form
parameters:
- name: InstitutionUniversalId
in: path
description: A unique identifier to establish the identity of an Institution/Environment/Brand combination
required: true
schema:
type: string
- in: path
name: id
required: true
schema:
type: string
format: uuid
description: A unique identifier to establish the identity of the form.
operationId: GetForm1099Misc
tags:
- 1099-MISC
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 987e6543-e21b-34d3-b654-426614174999
recipientId:
type: string
nullable: true
example: 123e4567-e89b-12d3-a456-426614174000
taxYear:
type: integer
example: 2025
formData:
type: object
properties:
issuerOfficeCode:
type: string
description: The office code of the issuer.
nullable: true
example: ABCD
cfsfElectionStates:
type: array
description: List of state codes.
items:
type: string
nullable: true
example:
- CA
- NY
isVoid:
type: boolean
description: Indicates whether the form is void.
nullable: false
example: false
isCorrected:
type: boolean
description: Indicates whether the form is a corrected version of a previously submitted form.
nullable: false
example: false
issuerDetail:
description: Information about the issuer.
nullable: false
type: object
properties:
TIN:
type: string
nullable: false
description: Taxpayer Identification Number.
example: '123456789'
TINType:
type: string
description: Type of Taxpayer Identification Number.
nullable: true
enum:
- Individual
- Business
- Unknown
address:
nullable: false
description: Address details of the issuer.
type: object
properties:
addressLine1:
type: string
nullable: false
description: First line of the address.
maxLength: 35
example: 123 Main St
addressLine2:
type: string
nullable: true
description: Second line of the address.
maxLength: 35
example: Apt 4B
city:
type: string
nullable: false
description: City Name.
maxLength: 40
example: New York
stateOrProvince:
type: string
nullable: false
description: State abbreviation code for US or state/province name for foreign countries.
maxLength: 40
example: NY
postalCode:
type: string
nullable: false
description: US Zipcode or foreign country postal code.
example: '10001'
countryCode:
type: string
nullable: false
description: Country code.
maxLength: 2
example: US
required:
- addressLine1
- city
- stateOrProvince
- postalCode
- countryCode
phoneNumber:
description: Phone number of the issuer.
nullable: true
type: string
minLength: 10
maxLength: 30
example: '2240010002'
personalNameInfo:
type: object
nullable: true
example: null
description: Personal name information.
properties:
firstName:
type: string
nullable: false
description: First name of the individual.
maxLength: 20
example: John
middleName:
type: string
nullable: true
description: Middle name of the individual.
maxLength: 20
example: Michael
lastName:
type: string
nullable: false
description: Last name of the individual.
maxLength: 20
example: Doe
suffixName:
type: string
nullable: true
description: Suffix name of the individual.
maxLength: 20
example: Jr
nameControlText:
type: string
nullable: true
description: Control text for the individual's name.
maxLength: 4
example: DOE
required:
- firstName
- lastName
businessNameInfo:
type: object
nullable: true
description: Business name information.
properties:
businessNameLine1:
type: string
nullable: false
description: First line of the business name.
maxLength: 75
example: Acme Corp
businessNameLine2:
type: string
nullable: true
description: Second line of the business name.
maxLength: 75
example: Investment Division
nameControlText:
type: string
nullable: true
description: Control text for the business name.
maxLength: 4
example: ACME
required:
- businessNameLine1
required:
- TIN
- address
recipientDetail:
description: Information about the recipient.
nullable: false
type: object
properties:
TIN:
type: string
nullable: true
description: Taxpayer Identification Number.
example: '123456789'
TINType:
type: string
nullable: true
description: Type of Taxpayer Identification Number.
enum:
- Individual
- Business
- Unknown
additionalRecipientText:
type: string
nullable: true
description: Additional text for the recipient.
address:
type: object
properties:
addressLine1:
type: string
nullable: false
description: First line of the address.
maxLength: 35
example: 123 Main St
addressLine2:
type: string
nullable: true
description: Second line of the address.
maxLength: 35
example: Apt 4B
city:
type: string
nullable: false
description: City Name.
maxLength: 40
example: New York
stateOrProvince:
type: string
nullable: false
description: State abbreviation code for US or state/province name for foreign countries.
maxLength: 40
example: NY
postalCode:
type: string
nullable: false
description: US Zipcode or foreign country postal code.
example: '10001'
countryCode:
type: string
nullable: false
description: Country code.
maxLength: 2
example: US
required:
- addressLine1
- city
- stateOrProvince
- postalCode
- countryCode
businessNameInfo:
example: null
type: object
description: Business name information.
properties:
businessNameLine1:
type: string
nullable: false
description: First line of the business name.
maxLength: 75
example: Acme Corp
businessNameLine2:
type: string
nullable: true
description: Second line of the business name.
maxLength: 75
example: Investment Division
nameControlText:
type: string
nullable: true
description: Control text for the business name.
maxLength: 4
example: ACME
required:
- businessNameLine1
personalNameInfo:
description: Personal name information of the recipient, required if BusinessNameInfo is not provided.
type: object
properties:
firstName:
type: string
nullable: false
description: First name of the individual.
maxLength: 20
example: John
middleName:
type: string
nullable: true
description: Middle name of the individual.
maxLength: 20
example: Michael
lastName:
type: string
nullable: false
description: Last name of the individual.
maxLength: 20
example: Doe
suffixName:
type: string
nullable: true
description: Suffix name of the individual.
maxLength: 20
example: Jr
nameControlText:
type: string
nullable: true
description: Control text for the individual's name.
maxLength: 4
example: DOE
required:
- firstName
- lastName
required:
- address
recipientAccountNumber:
type: string
description: Recipient's account number.
nullable: true
example: '123456789'
isFATCAFilingRequirement:
type: boolean
description: Indicates whether the form is subject to FATCA reporting requirements.
nullable: false
example: true
rentAmount:
type: string
description: Rent amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '1000.00'
royaltyAmount:
type: string
description: Royalties amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '500.00'
otherIncomeAmount:
type: string
description: Other income amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '200.00'
federalIncomeTaxWithheldAmount:
type: string
description: Federal income tax withheld amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '50.00'
fishingBoatProceedsAmount:
type: string
description: Fishing boat proceeds amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '0.00'
medicalHealthCarePaymentsAmount:
type: string
description: Medical and health care payments amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '0.00'
directSaleAboveThresholdInd:
type: boolean
description: Direct sale above threshold indicator.
nullable: false
example: false
substitutePaymentsAmount:
type: string
description: Substitute payments amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '0.00'
cropInsuranceProceedsAmount:
type: string
description: Crop insurance proceeds amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '0.00'
attorneyGrossProceedsPaidAmount:
type: string
description: Gross proceeds paid to an attorney amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '0.00'
fishPurchasedForResaleAmount:
type: string
description: Fish purchased for resale amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '0.00'
section409ADeferralsAmount:
type: string
description: Section 409A deferrals amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '0.00'
nonqlfyDeferredCompensationAmount:
type: string
description: Nonqualified deferred compensation amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '0.00'
stateTaxDetails:
type: array
description: State tax details.
items:
type: object
description: Details about the state tax.
properties:
stateAbbreviationCode:
type: string
nullable: false
description: State abbreviation code.
maxLength: 2
example: NY
stateIdNumber:
type: string
nullable: false
description: State ID number.
maxLength: 25
example: A123456789
stateTaxWithheldAmount:
type: string
nullable: false
description: Total state tax withheld amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '102.02'
stateIncomeAmount:
type: string
nullable: false
description: Total state income amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '99.15'
stateDistributionAmount:
type: string
nullable: false
description: Total state distribution amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '45.48'
specialDataEntriesText:
type: string
nullable: true
description: Special data entries text.
required:
- stateAbbreviationCode
nullable: true
example:
- stateAbbreviationCode: NY
stateIdNumber: A123456789
stateTaxWithheldAmount: '102.02'
stateIncomeAmount: '99.15'
stateDistributionAmount: '45.48'
localTaxDetails:
type: array
description: Local tax details.
items:
type: object
description: Details about the local tax.
properties:
stateAbbreviationCode:
type: string
nullable: false
description: State abbreviation code.
maxLength: 2
example: NY
localTaxWithheldAmount:
type: string
nullable: true
description: Total local tax withheld amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '102.02'
localIncomeAmount:
type: string
nullable: true
description: Total local income amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '99.15'
localityName:
type: string
nullable: true
description: Name of the locality.
maxLength: 100
example: New York City
localAbbreviationCode:
type: string
nullable: true
description: Locality abbreviation code.
maxLength: 10
example: NYC
localDistributionAmount:
type: string
nullable: true
description: Total local distribution amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '45.48'
specialDataEntriesText:
type: string
nullable: true
description: Special data entries text.
required:
- stateAbbreviationCode
nullable: true
example:
- stateAbbreviationCode: NY
localTaxWithheldAmount: '102.02'
localIncomeAmount: '99.15'
localityName: New York City
localAbbreviationCode: NYC
localDistributionAmount: '45.48'
required:
- issuerDetail
- recipientDetail
createdDateTime:
type: string
format: date-time
example: '2024-01-15T10:30:00Z'
modifiedDateTime:
type: string
format: date-time
example: '2024-01-15T11:30:00Z'
'400':
description: Bad Request
content:
application/problem+json:
schema:
type: object
required:
- type
- title
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
title:
description: A user readable string title of the error type.
type: string
details:
description: An array of strings which provide additional details for the error message.
type: array
items:
type: string
data:
description: An array of strings which provide additional data for the error message.
type: array
items:
type: object
properties:
description:
type: string
element:
type: string
elementValue:
type: string
'401':
description: Although the HTTP standard specifies "unauthorized", semantically this response means "unauthenticated". That is, the client must authenticate itself to get the requested response.
'403':
description: The client does not have access rights to the content; that is, it is unauthorized, so the server is refusing to give the requested resource. Unlike 401, the clients identity is known to the server.
'404':
description: The server can not find the requested resource. In an API, this can also mean that the endpoint is valid but the resource itself does not exist. Servers may also send this response instead of 403 to hide the existence of a resource from an unauthorized client.
'500':
description: An unexpected internal server error occurred while processing the request.
content:
application/problem+json:
schema:
type: object
required:
- type
- title
- details
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
nullable: false
example: jackhenry/operation-failed
title:
description: A end-user readable string title of the error type.
nullable: false
type: string
details:
description: An array of end-user readable strings which provide additional details for the error message.
type: array
nullable: false
items:
type: string
data:
type: object
description: |
Additional data that could be useful to a developer or for handing the error programmatically. The schema for the data in this object is intentionally left undefined.
nullable: true
examples:
internalServerError:
summary: Internal server error
value:
type: general/internal-server-error
title: Internal server error
details:
- Unexpected internal server error
put:
summary: Update an existing 1099-MISC form
parameters:
- name: InstitutionUniversalId
in: path
description: A unique identifier to establish the identity of an Institution/Environment/Brand combination
required: true
schema:
type: string
- in: path
name: id
required: true
schema:
type: string
format: uuid
description: A unique identifier to establish the identity of the form.
operationId: UpdateForm1099Misc
tags:
- 1099-MISC
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
taxYear:
type: integer
minimum: 2025
maximum: 2100
example: 2025
recipientId:
type: string
example: 123e4567-e89b-12d3-a456-426614174000
formData:
type: object
properties:
issuerOfficeCode:
type: string
description: The office code of the issuer.
nullable: true
example: ABCD
cfsfElectionStates:
type: array
description: List of state codes.
items:
type: string
nullable: true
example:
- CA
- NY
isVoid:
type: boolean
description: Indicates whether the form is void.
nullable: false
example: false
isCorrected:
type: boolean
description: Indicates whether the form is a corrected version of a previously submitted form.
nullable: false
example: false
issuerDetail:
description: Information about the issuer.
nullable: false
type: object
properties:
TIN:
type: string
nullable: false
description: Taxpayer Identification Number.
example: '123456789'
TINType:
type: string
description: Type of Taxpayer Identification Number.
nullable: true
enum:
- Individual
- Business
- Unknown
address:
nullable: false
description: Address details of the issuer.
type: object
properties:
addressLine1:
type: string
nullable: false
description: First line of the address.
maxLength: 35
example: 123 Main St
addressLine2:
type: string
nullable: true
description: Second line of the address.
maxLength: 35
example: Apt 4B
city:
type: string
nullable: false
description: City Name.
maxLength: 40
example: New York
stateOrProvince:
type: string
nullable: false
description: State abbreviation code for US or state/province name for foreign countries.
maxLength: 40
example: NY
postalCode:
type: string
nullable: false
description: US Zipcode or foreign country postal code.
example: '10001'
countryCode:
type: string
nullable: false
description: Country code.
maxLength: 2
example: US
required:
- addressLine1
- city
- stateOrProvince
- postalCode
- countryCode
phoneNumber:
description: Phone number of the issuer.
nullable: true
type: string
minLength: 10
maxLength: 30
example: '2240010002'
personalNameInfo:
type: object
nullable: true
example: null
description: Personal name information.
properties:
firstName:
type: string
nullable: false
description: First name of the individual.
maxLength: 20
example: John
middleName:
type: string
nullable: true
description: Middle name of the individual.
maxLength: 20
example: Michael
lastName:
type: string
nullable: false
description: Last name of the individual.
maxLength: 20
example: Doe
suffixName:
type: string
nullable: true
description: Suffix name of the individual.
maxLength: 20
example: Jr
nameControlText:
type: string
nullable: true
description: Control text for the individual's name.
maxLength: 4
example: DOE
required:
- firstName
- lastName
businessNameInfo:
type: object
nullable: true
description: Business name information.
properties:
businessNameLine1:
type: string
nullable: false
description: First line of the business name.
maxLength: 75
example: Acme Corp
businessNameLine2:
type: string
nullable: true
description: Second line of the business name.
maxLength: 75
example: Investment Division
nameControlText:
type: string
nullable: true
description: Control text for the business name.
maxLength: 4
example: ACME
required:
- businessNameLine1
required:
- TIN
- address
recipientDetail:
description: Information about the recipient.
nullable: false
type: object
properties:
TIN:
type: string
nullable: true
description: Taxpayer Identification Number.
example: '123456789'
TINType:
type: string
nullable: true
description: Type of Taxpayer Identification Number.
enum:
- Individual
- Business
- Unknown
additionalRecipientText:
type: string
nullable: true
description: Additional text for the recipient.
address:
type: object
properties:
addressLine1:
type: string
nullable: false
description: First line of the address.
maxLength: 35
example: 123 Main St
addressLine2:
type: string
nullable: true
description: Second line of the address.
maxLength: 35
example: Apt 4B
city:
type: string
nullable: false
description: City Name.
maxLength: 40
example: New York
stateOrProvince:
type: string
nullable: false
description: State abbreviation code for US or state/province name for foreign countries.
maxLength: 40
example: NY
postalCode:
type: string
nullable: false
description: US Zipcode or foreign country postal code.
example: '10001'
countryCode:
type: string
nullable: false
description: Country code.
maxLength: 2
example: US
required:
- addressLine1
- city
- stateOrProvince
- postalCode
- countryCode
businessNameInfo:
example: null
type: object
description: Business name information.
properties:
businessNameLine1:
type: string
nullable: false
description: First line of the business name.
maxLength: 75
example: Acme Corp
businessNameLine2:
type: string
nullable: true
description: Second line of the business name.
maxLength: 75
example: Investment Division
nameControlText:
type: string
nullable: true
description: Control text for the business name.
maxLength: 4
example: ACME
required:
- businessNameLine1
personalNameInfo:
description: Personal name information of the recipient, required if BusinessNameInfo is not provided.
type: object
properties:
firstName:
type: string
nullable: false
description: First name of the individual.
maxLength: 20
example: John
middleName:
type: string
nullable: true
description: Middle name of the individual.
maxLength: 20
example: Michael
lastName:
type: string
nullable: false
description: Last name of the individual.
maxLength: 20
example: Doe
suffixName:
type: string
nullable: true
description: Suffix name of the individual.
maxLength: 20
example: Jr
nameControlText:
type: string
nullable: true
description: Control text for the individual's name.
maxLength: 4
example: DOE
required:
- firstName
- lastName
required:
- address
recipientAccountNumber:
type: string
description: Recipient's account number.
nullable: true
example: '123456789'
isFATCAFilingRequirement:
type: boolean
description: Indicates whether the form is subject to FATCA reporting requirements.
nullable: false
example: true
rentAmount:
type: string
description: Rent amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '1000.00'
royaltyAmount:
type: string
description: Royalties amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '500.00'
otherIncomeAmount:
type: string
description: Other income amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '200.00'
federalIncomeTaxWithheldAmount:
type: string
description: Federal income tax withheld amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '50.00'
fishingBoatProceedsAmount:
type: string
description: Fishing boat proceeds amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '0.00'
medicalHealthCarePaymentsAmount:
type: string
description: Medical and health care payments amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '0.00'
directSaleAboveThresholdInd:
type: boolean
description: Direct sale above threshold indicator.
nullable: false
example: false
substitutePaymentsAmount:
type: string
description: Substitute payments amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '0.00'
cropInsuranceProceedsAmount:
type: string
description: Crop insurance proceeds amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '0.00'
attorneyGrossProceedsPaidAmount:
type: string
description: Gross proceeds paid to an attorney amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '0.00'
fishPurchasedForResaleAmount:
type: string
description: Fish purchased for resale amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '0.00'
section409ADeferralsAmount:
type: string
description: Section 409A deferrals amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '0.00'
nonqlfyDeferredCompensationAmount:
type: string
description: Nonqualified deferred compensation amount value. If provided, it must be a non-negative decimal value with at most 2 decimal places.
nullable: true
minimum: 0
maximum: 1000000000000000
example: '0.00'
stateTaxDetails:
type: array
description: State tax details.
items:
type: object
description: Details about the state tax.
properties:
stateAbbreviationCode:
type: string
nullable: false
description: State abbreviation code.
maxLength: 2
example: NY
stateIdNumber:
type: string
nullable: false
description: State ID number.
maxLength: 25
example: A123456789
stateTaxWithheldAmount:
type: string
nullable: false
description: Total state tax withheld amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '102.02'
stateIncomeAmount:
type: string
nullable: false
description: Total state income amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '99.15'
stateDistributionAmount:
type: string
nullable: false
description: Total state distribution amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '45.48'
specialDataEntriesText:
type: string
nullable: true
description: Special data entries text.
required:
- stateAbbreviationCode
nullable: true
example:
- stateAbbreviationCode: NY
stateIdNumber: A123456789
stateTaxWithheldAmount: '102.02'
stateIncomeAmount: '99.15'
stateDistributionAmount: '45.48'
localTaxDetails:
type: array
description: Local tax details.
items:
type: object
description: Details about the local tax.
properties:
stateAbbreviationCode:
type: string
nullable: false
description: State abbreviation code.
maxLength: 2
example: NY
localTaxWithheldAmount:
type: string
nullable: true
description: Total local tax withheld amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '102.02'
localIncomeAmount:
type: string
nullable: true
description: Total local income amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '99.15'
localityName:
type: string
nullable: true
description: Name of the locality.
maxLength: 100
example: New York City
localAbbreviationCode:
type: string
nullable: true
description: Locality abbreviation code.
maxLength: 10
example: NYC
localDistributionAmount:
type: string
nullable: true
description: Total local distribution amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '45.48'
specialDataEntriesText:
type: string
nullable: true
description: Special data entries text.
required:
- stateAbbreviationCode
nullable: true
example:
- stateAbbreviationCode: NY
localTaxWithheldAmount: '102.02'
localIncomeAmount: '99.15'
localityName: New York City
localAbbreviationCode: NYC
localDistributionAmount: '45.48'
required:
- issuerDetail
- recipientDetail
required:
- taxYear
- formData
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
properties:
changed:
type: boolean
example: true
'400':
description: Bad Request
content:
application/problem+json:
schema:
type: object
required:
- type
- title
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
title:
description: A user readable string title of the error type.
type: string
details:
description: An array of strings which provide additional details for the error message.
type: array
items:
type: string
data:
description: An array of strings which provide additional data for the error message.
type: array
items:
type: object
properties:
description:
type: string
element:
type: string
elementValue:
type: string
examples:
invalidRequest:
summary: Invalid request
value:
type: Bad Request
title: Incoming request failed validation
details:
- taxYear must be greater than 2025.
data: null
'401':
description: Although the HTTP standard specifies "unauthorized", semantically this response means "unauthenticated". That is, the client must authenticate itself to get the requested response.
'403':
description: The client does not have access rights to the content; that is, it is unauthorized, so the server is refusing to give the requested resource. Unlike 401, the clients identity is known to the server.
'500':
description: An unexpected internal server error occurred while processing the request.
content:
application/problem+json:
schema:
type: object
required:
- type
- title
- details
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
nullable: false
example: jackhenry/operation-failed
title:
description: A end-user readable string title of the error type.
nullable: false
type: string
details:
description: An array of end-user readable strings which provide additional details for the error message.
type: array
nullable: false
items:
type: string
data:
type: object
description: |
Additional data that could be useful to a developer or for handing the error programmatically. The schema for the data in this object is intentionally left undefined.
nullable: true
examples:
internalServerError:
summary: Internal server error
value:
type: general/internal-server-error
title: Internal server error
details:
- Unexpected internal server error
delete:
summary: Delete an existing 1099-MISC form
parameters:
- name: InstitutionUniversalId
in: path
description: A unique identifier to establish the identity of an Institution/Environment/Brand combination
required: true
schema:
type: string
- in: path
name: id
required: true
schema:
type: string
format: uuid
description: A unique identifier to establish the identity of the form.
operationId: DeleteForm1099Misc
tags:
- 1099-MISC
responses:
'200':
description: Success
'400':
description: Bad Request
content:
application/problem+json:
schema:
type: object
required:
- type
- title
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
title:
description: A user readable string title of the error type.
type: string
details:
description: An array of strings which provide additional details for the error message.
type: array
items:
type: string
data:
description: An array of strings which provide additional data for the error message.
type: array
items:
type: object
properties:
description:
type: string
element:
type: string
elementValue:
type: string
'401':
description: Although the HTTP standard specifies "unauthorized", semantically this response means "unauthenticated". That is, the client must authenticate itself to get the requested response.
'403':
description: The client does not have access rights to the content; that is, it is unauthorized, so the server is refusing to give the requested resource. Unlike 401, the clients identity is known to the server.
'404':
description: The server can not find the requested resource. In an API, this can also mean that the endpoint is valid but the resource itself does not exist. Servers may also send this response instead of 403 to hide the existence of a resource from an unauthorized client.
'500':
description: An unexpected internal server error occurred while processing the request.
content:
application/problem+json:
schema:
type: object
required:
- type
- title
- details
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
nullable: false
example: jackhenry/operation-failed
title:
description: A end-user readable string title of the error type.
nullable: false
type: string
details:
description: An array of end-user readable strings which provide additional details for the error message.
type: array
nullable: false
items:
type: string
data:
type: object
description: |
Additional data that could be useful to a developer or for handing the error programmatically. The schema for the data in this object is intentionally left undefined.
nullable: true
examples:
internalServerError:
summary: Internal server error
value:
type: general/internal-server-error
title: Internal server error
details:
- Unexpected internal server error
/a/api/tax-reporting/v1/{InstitutionUniversalId}/forms/1042-s:
post:
summary: Insert a new 1042-S form
parameters:
- name: InstitutionUniversalId
in: path
description: A unique identifier to establish the identity of an Institution/Environment/Brand combination
required: true
schema:
type: string
operationId: InsertForm1042S
tags:
- 1042-S
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
taxYear:
type: integer
example: 2025
formData:
description: IRS Form 1042-S for reporting income paid to foreign persons. Contains comprehensive information required for international tax compliance including FATCA reporting.
properties:
issuerOfficeCode:
description: Office code of the issuer (optional, max 4 characters)
example: NYC1
nullable: true
type: string
formId:
description: Unique form identifier
example: 987e6543-e21b-34d3-b654-426614174999
type: string
amendedIndicator:
description: Whether this is an amended form
type: boolean
amendmentNumber:
description: Amendment number if this is an amended form
example: '1'
nullable: true
type: string
incomeTypeCode:
description: Income type code (Box 1) - Two digit code (01=Interest, 06=Dividends, etc.)
example: '01'
type: string
maxLength: 2
grossIncomeAmount:
description: Gross income amount (Box 2) - Integer format, no decimal places
example: '250000'
type: string
chapterTypeCode:
description: Chapter type code (Box 3) - '3' for Chapter 3, '4' for Chapter 4
example: '3'
type: string
maxLength: 1
chapter3:
description: Chapter 3 withholding information (Boxes 3a, 3b) - Required if chapterTypeCode is '3'
nullable: true
properties:
exemptionCode:
description: Two-digit exemption code (optional for Chapter 3)
example: '01'
nullable: true
type: string
maxLength: 2
taxRate:
description: Tax rate as decimal (0.0000 to 0.9999) - 4 decimal places
example: '0.3000'
type: string
type: object
chapter4:
description: Chapter 4 (FATCA) information (Boxes 4a, 4b)
properties:
exemptionCode:
description: Two-digit exemption code (required for Chapter 4)
example: '02'
type: string
maxLength: 2
taxRate:
description: Tax rate as decimal (0.0000 to 0.9999) - 4 decimal places
example: '0.3000'
type: string
type: object
withholdingAllowanceAmount:
description: Withholding allowance amount (Box 5) - Integer format
example: '5000'
nullable: true
type: string
netIncomeAmount:
description: Net income amount (Box 6) - Integer format
example: '245000'
nullable: true
type: string
federalIncomeTaxWithheldAmount:
description: Federal income tax withheld amount (Box 7a) - Integer format
example: '75000'
type: string
taxNotDepositPerEscrowProcIndicator:
description: Tax not deposited per escrow procedure indicator (Box 7b)
example: false
type: boolean
subsqYrWithholdingPrtshpIntIndicator:
description: Subsequent year withholding partnership interest indicator (Box 7c)
example: false
type: boolean
qiOrWpOrWtRevisingReportingIndicator:
description: QI/WP/WT revising reporting indicator (Box 7d)
example: false
type: boolean
otherAgentsTaxWithheldAmount:
description: Other agents tax withheld amount (Box 8) - Integer format
example: '0'
type: string
recipientRepaidAmount:
description: Recipient repaid amount (Box 9) - Integer format
example: '1000'
nullable: true
type: string
totalTaxWithholdingCreditAmount:
description: Total tax withholding credit amount (Box 10) - Integer format
example: '74000'
type: string
withholdingAgentTaxPaidAmount:
description: Withholding agent tax paid amount (Box 11) - Integer format
example: '0'
nullable: true
type: string
withholdingAgent:
description: Withholding agent information (Box 12a-12i)
nullable: true
properties:
address:
type: object
properties:
addressLine1:
type: string
nullable: false
description: First line of the address.
maxLength: 35
example: 123 Main St
addressLine2:
type: string
nullable: true
description: Second line of the address.
maxLength: 35
example: Apt 4B
city:
type: string
nullable: false
description: City Name.
maxLength: 40
example: New York
stateOrProvince:
type: string
nullable: false
description: State abbreviation code for US or state/province name for foreign countries.
maxLength: 40
example: NY
postalCode:
type: string
nullable: false
description: US Zipcode or foreign country postal code.
example: '10001'
countryCode:
type: string
nullable: false
description: Country code.
maxLength: 2
example: US
required:
- addressLine1
- city
- stateOrProvince
- postalCode
- countryCode
description: Withholding agent's address
chapter3StatusCode:
description: Chapter 3 status code (two digits)
example: '01'
type: string
maxLength: 2
chapter4StatusCode:
description: Chapter 4 status code (two digits)
example: '02'
type: string
maxLength: 2
countryCode:
description: Country code (ISO 2-letter)
example: US
type: string
maxLength: 2
ein:
description: Employer Identification Number (9 digits)
example: '123456789'
type: string
maxLength: 9
ftin:
description: Foreign Taxpayer Identification Number
example: FOREIGN789
nullable: true
type: string
maxLength: 50
giin:
description: Global Intermediary Identification Number
example: 987e6543-e21b-34d3-b654-426614174999
nullable: true
type: string
personName:
description: Name of the withholding agent
example: ABC Financial Corp
type: string
maxLength: 35
type: object
recipientDetail:
description: Foreign recipient information (Box 13a-13l)
properties:
address:
type: object
properties:
addressLine1:
type: string
nullable: false
description: First line of the address.
maxLength: 35
example: 123 Main St
addressLine2:
type: string
nullable: true
description: Second line of the address.
maxLength: 35
example: Apt 4B
city:
type: string
nullable: false
description: City Name.
maxLength: 40
example: New York
stateOrProvince:
type: string
nullable: false
description: State abbreviation code for US or state/province name for foreign countries.
maxLength: 40
example: NY
postalCode:
type: string
nullable: false
description: US Zipcode or foreign country postal code.
example: '10001'
countryCode:
type: string
nullable: false
description: Country code.
maxLength: 2
example: US
required:
- addressLine1
- city
- stateOrProvince
- postalCode
- countryCode
description: Recipient's address (may be foreign)
nullable: true
birthDate:
description: Recipient's birth date (ISO 8601 format)
example: '1990-01-15T00:00:00Z'
nullable: true
type: string
chapter3StatusCode:
description: Chapter 3 status code (two digits)
example: '01'
nullable: true
type: string
maxLength: 2
chapter4StatusCode:
description: Chapter 4 (FATCA) status code (two digits)
example: '02'
nullable: true
type: string
maxLength: 2
ftin:
description: Foreign Taxpayer Identification Number
example: FOREIGN123456
nullable: true
type: string
maxLength: 50
giin:
description: Global Intermediary Identification Number
example: 987e6543-e21b-34d3-b654-426614174999
nullable: true
type: string
maxLength: 19
lobCode:
description: Limitation on Benefits (LOB) code
example: '01'
nullable: true
type: string
maxLength: 2
personalNameInfo:
description: Recipient's name information
type: object
properties:
firstName:
type: string
nullable: false
description: First name of the individual.
maxLength: 20
example: John
middleName:
type: string
nullable: true
description: Middle name of the individual.
maxLength: 20
example: Michael
lastName:
type: string
nullable: false
description: Last name of the individual.
maxLength: 20
example: Doe
suffixName:
type: string
nullable: true
description: Suffix name of the individual.
maxLength: 20
example: Jr
nameControlText:
type: string
nullable: true
description: Control text for the individual's name.
maxLength: 4
example: DOE
required:
- firstName
- lastName
tin:
description: U.S. Taxpayer Identification Number (optional for foreign recipients)
example: '123456789'
nullable: true
type: string
type: object
recipientAccountNumber:
description: Recipient account number (Box 13k)
example: ACC-789123
nullable: true
type: string
maxLength: 30
primaryWithholdingAgent:
description: Primary withholding agent information (Box 14a-14b)
nullable: true
properties:
ein:
description: Employer Identification Number
example: '987654321'
type: string
maxLength: 9
personName:
description: Name of primary withholding agent
example: Primary Bank Corp
type: string
maxLength: 35
type: object
proRataBasisIndicator:
description: Pro rata basis indicator (Box 15)
example: false
type: boolean
intermediaryOrFlowThroughEntity:
description: Intermediary or flow-through entity information (Box 15a-15i)
nullable: true
properties:
address:
type: object
properties:
addressLine1:
type: string
nullable: false
description: First line of the address.
maxLength: 35
example: 123 Main St
addressLine2:
type: string
nullable: true
description: Second line of the address.
maxLength: 35
example: Apt 4B
city:
type: string
nullable: false
description: City Name.
maxLength: 40
example: New York
stateOrProvince:
type: string
nullable: false
description: State abbreviation code for US or state/province name for foreign countries.
maxLength: 40
example: NY
postalCode:
type: string
nullable: false
description: US Zipcode or foreign country postal code.
example: '10001'
countryCode:
type: string
nullable: false
description: Country code.
maxLength: 2
example: US
required:
- addressLine1
- city
- stateOrProvince
- postalCode
- countryCode
chapter3StatusCode:
description: Chapter 3 status
example: '01'
type: string
chapter4StatusCode:
description: Chapter 4 status
example: '02'
type: string
countryCode:
description: Country code
example: CA
type: string
ein:
description: EIN
example: '444555666'
type: string
maxLength: 9
ftin:
description: FTIN
nullable: true
type: string
maxLength: 50
giin:
description: GIIN
nullable: true
type: string
maxLength: 19
personName:
description: Entity name
example: Intermediary Corp
type: string
maxLength: 35
type: object
payer:
description: Payer information (Box 16a-16e)
nullable: true
properties:
chapter3StatusCode:
description: Chapter 3 status code
example: '03'
type: string
chapter4StatusCode:
description: Chapter 4 status code
example: '04'
type: string
ein:
description: Employer Identification Number
example: '555666777'
type: string
giin:
description: Global Intermediary Identification Number
example: XYZ789.98765.LE.321
nullable: true
type: string
personName:
description: Name of the payer
example: XYZ Investment Fund
type: string
type: object
stateTaxDetails:
description: State tax withholding details (Box 17a-17c)
items:
type: object
description: Details about the state tax.
properties:
stateAbbreviationCode:
type: string
nullable: false
description: State abbreviation code.
maxLength: 2
example: NY
stateIdNumber:
type: string
nullable: false
description: State ID number.
maxLength: 25
example: A123456789
stateTaxWithheldAmount:
type: string
nullable: false
description: Total state tax withheld amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '102.02'
stateIncomeAmount:
type: string
nullable: false
description: Total state income amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '99.15'
stateDistributionAmount:
type: string
nullable: false
description: Total state distribution amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '45.48'
specialDataEntriesText:
type: string
nullable: true
description: Special data entries text.
required:
- stateAbbreviationCode
nullable: true
type: array
type: object
recipientId:
type: string
description: Unique identifier for the recipient of the Form 1042-S data.
example: 123e4567-e89b-12d3-a456-426614174000
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 987e6543-e21b-34d3-b654-426614174999
example:
id: 1e2e84ad-58a9-487c-a7ab-ecc23c911a45
'400':
description: Bad Request
content:
application/problem+json:
schema:
type: object
required:
- type
- title
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
title:
description: A user readable string title of the error type.
type: string
details:
description: An array of strings which provide additional details for the error message.
type: array
items:
type: string
data:
description: An array of strings which provide additional data for the error message.
type: array
items:
type: object
properties:
description:
type: string
element:
type: string
elementValue:
type: string
examples:
invalidRequest:
summary: Invalid request
value:
type: Bad Request
title: Incoming request failed validation
details:
- taxYear must be greater than 2025.
data: null
'401':
description: Although the HTTP standard specifies "unauthorized", semantically this response means "unauthenticated". That is, the client must authenticate itself to get the requested response.
'403':
description: The client does not have access rights to the content; that is, it is unauthorized, so the server is refusing to give the requested resource. Unlike 401, the clients identity is known to the server.
'500':
description: An unexpected internal server error occurred while processing the request.
content:
application/problem+json:
schema:
type: object
required:
- type
- title
- details
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
nullable: false
example: jackhenry/operation-failed
title:
description: A end-user readable string title of the error type.
nullable: false
type: string
details:
description: An array of end-user readable strings which provide additional details for the error message.
type: array
nullable: false
items:
type: string
data:
type: object
description: |
Additional data that could be useful to a developer or for handing the error programmatically. The schema for the data in this object is intentionally left undefined.
nullable: true
examples:
internalServerError:
summary: Internal server error
value:
type: general/internal-server-error
title: Internal server error
details:
- Unexpected internal server error
/a/api/tax-reporting/v1/{InstitutionUniversalId}/forms/1042-s/{id}:
get:
summary: Get an existing 1042-S form
parameters:
- name: InstitutionUniversalId
in: path
description: A unique identifier to establish the identity of an Institution/Environment/Brand combination
required: true
schema:
type: string
- in: path
name: id
required: true
schema:
type: string
format: uuid
description: A unique identifier to establish the identity of the form.
operationId: GetForm1042S
tags:
- 1042-S
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 987e6543-e21b-34d3-b654-426614174999
recipientId:
type: string
nullable: true
example: 123e4567-e89b-12d3-a456-426614174000
taxYear:
type: integer
example: 2025
formData:
description: IRS Form 1042-S for reporting income paid to foreign persons. Contains comprehensive information required for international tax compliance including FATCA reporting.
properties:
issuerOfficeCode:
description: Office code of the issuer (optional, max 4 characters)
example: NYC1
nullable: true
type: string
formId:
description: Unique form identifier
example: 987e6543-e21b-34d3-b654-426614174999
type: string
amendedIndicator:
description: Whether this is an amended form
type: boolean
amendmentNumber:
description: Amendment number if this is an amended form
example: '1'
nullable: true
type: string
incomeTypeCode:
description: Income type code (Box 1) - Two digit code (01=Interest, 06=Dividends, etc.)
example: '01'
type: string
maxLength: 2
grossIncomeAmount:
description: Gross income amount (Box 2) - Integer format, no decimal places
example: '250000'
type: string
chapterTypeCode:
description: Chapter type code (Box 3) - '3' for Chapter 3, '4' for Chapter 4
example: '3'
type: string
maxLength: 1
chapter3:
description: Chapter 3 withholding information (Boxes 3a, 3b) - Required if chapterTypeCode is '3'
nullable: true
properties:
exemptionCode:
description: Two-digit exemption code (optional for Chapter 3)
example: '01'
nullable: true
type: string
maxLength: 2
taxRate:
description: Tax rate as decimal (0.0000 to 0.9999) - 4 decimal places
example: '0.3000'
type: string
type: object
chapter4:
description: Chapter 4 (FATCA) information (Boxes 4a, 4b)
properties:
exemptionCode:
description: Two-digit exemption code (required for Chapter 4)
example: '02'
type: string
maxLength: 2
taxRate:
description: Tax rate as decimal (0.0000 to 0.9999) - 4 decimal places
example: '0.3000'
type: string
type: object
withholdingAllowanceAmount:
description: Withholding allowance amount (Box 5) - Integer format
example: '5000'
nullable: true
type: string
netIncomeAmount:
description: Net income amount (Box 6) - Integer format
example: '245000'
nullable: true
type: string
federalIncomeTaxWithheldAmount:
description: Federal income tax withheld amount (Box 7a) - Integer format
example: '75000'
type: string
taxNotDepositPerEscrowProcIndicator:
description: Tax not deposited per escrow procedure indicator (Box 7b)
example: false
type: boolean
subsqYrWithholdingPrtshpIntIndicator:
description: Subsequent year withholding partnership interest indicator (Box 7c)
example: false
type: boolean
qiOrWpOrWtRevisingReportingIndicator:
description: QI/WP/WT revising reporting indicator (Box 7d)
example: false
type: boolean
otherAgentsTaxWithheldAmount:
description: Other agents tax withheld amount (Box 8) - Integer format
example: '0'
type: string
recipientRepaidAmount:
description: Recipient repaid amount (Box 9) - Integer format
example: '1000'
nullable: true
type: string
totalTaxWithholdingCreditAmount:
description: Total tax withholding credit amount (Box 10) - Integer format
example: '74000'
type: string
withholdingAgentTaxPaidAmount:
description: Withholding agent tax paid amount (Box 11) - Integer format
example: '0'
nullable: true
type: string
withholdingAgent:
description: Withholding agent information (Box 12a-12i)
nullable: true
properties:
address:
type: object
properties:
addressLine1:
type: string
nullable: false
description: First line of the address.
maxLength: 35
example: 123 Main St
addressLine2:
type: string
nullable: true
description: Second line of the address.
maxLength: 35
example: Apt 4B
city:
type: string
nullable: false
description: City Name.
maxLength: 40
example: New York
stateOrProvince:
type: string
nullable: false
description: State abbreviation code for US or state/province name for foreign countries.
maxLength: 40
example: NY
postalCode:
type: string
nullable: false
description: US Zipcode or foreign country postal code.
example: '10001'
countryCode:
type: string
nullable: false
description: Country code.
maxLength: 2
example: US
required:
- addressLine1
- city
- stateOrProvince
- postalCode
- countryCode
description: Withholding agent's address
chapter3StatusCode:
description: Chapter 3 status code (two digits)
example: '01'
type: string
maxLength: 2
chapter4StatusCode:
description: Chapter 4 status code (two digits)
example: '02'
type: string
maxLength: 2
countryCode:
description: Country code (ISO 2-letter)
example: US
type: string
maxLength: 2
ein:
description: Employer Identification Number (9 digits)
example: '123456789'
type: string
maxLength: 9
ftin:
description: Foreign Taxpayer Identification Number
example: FOREIGN789
nullable: true
type: string
maxLength: 50
giin:
description: Global Intermediary Identification Number
example: 987e6543-e21b-34d3-b654-426614174999
nullable: true
type: string
personName:
description: Name of the withholding agent
example: ABC Financial Corp
type: string
maxLength: 35
type: object
recipientDetail:
description: Foreign recipient information (Box 13a-13l)
properties:
address:
type: object
properties:
addressLine1:
type: string
nullable: false
description: First line of the address.
maxLength: 35
example: 123 Main St
addressLine2:
type: string
nullable: true
description: Second line of the address.
maxLength: 35
example: Apt 4B
city:
type: string
nullable: false
description: City Name.
maxLength: 40
example: New York
stateOrProvince:
type: string
nullable: false
description: State abbreviation code for US or state/province name for foreign countries.
maxLength: 40
example: NY
postalCode:
type: string
nullable: false
description: US Zipcode or foreign country postal code.
example: '10001'
countryCode:
type: string
nullable: false
description: Country code.
maxLength: 2
example: US
required:
- addressLine1
- city
- stateOrProvince
- postalCode
- countryCode
description: Recipient's address (may be foreign)
nullable: true
birthDate:
description: Recipient's birth date (ISO 8601 format)
example: '1990-01-15T00:00:00Z'
nullable: true
type: string
chapter3StatusCode:
description: Chapter 3 status code (two digits)
example: '01'
nullable: true
type: string
maxLength: 2
chapter4StatusCode:
description: Chapter 4 (FATCA) status code (two digits)
example: '02'
nullable: true
type: string
maxLength: 2
ftin:
description: Foreign Taxpayer Identification Number
example: FOREIGN123456
nullable: true
type: string
maxLength: 50
giin:
description: Global Intermediary Identification Number
example: 987e6543-e21b-34d3-b654-426614174999
nullable: true
type: string
maxLength: 19
lobCode:
description: Limitation on Benefits (LOB) code
example: '01'
nullable: true
type: string
maxLength: 2
personalNameInfo:
description: Recipient's name information
type: object
properties:
firstName:
type: string
nullable: false
description: First name of the individual.
maxLength: 20
example: John
middleName:
type: string
nullable: true
description: Middle name of the individual.
maxLength: 20
example: Michael
lastName:
type: string
nullable: false
description: Last name of the individual.
maxLength: 20
example: Doe
suffixName:
type: string
nullable: true
description: Suffix name of the individual.
maxLength: 20
example: Jr
nameControlText:
type: string
nullable: true
description: Control text for the individual's name.
maxLength: 4
example: DOE
required:
- firstName
- lastName
tin:
description: U.S. Taxpayer Identification Number (optional for foreign recipients)
example: '123456789'
nullable: true
type: string
type: object
recipientAccountNumber:
description: Recipient account number (Box 13k)
example: ACC-789123
nullable: true
type: string
maxLength: 30
primaryWithholdingAgent:
description: Primary withholding agent information (Box 14a-14b)
nullable: true
properties:
ein:
description: Employer Identification Number
example: '987654321'
type: string
maxLength: 9
personName:
description: Name of primary withholding agent
example: Primary Bank Corp
type: string
maxLength: 35
type: object
proRataBasisIndicator:
description: Pro rata basis indicator (Box 15)
example: false
type: boolean
intermediaryOrFlowThroughEntity:
description: Intermediary or flow-through entity information (Box 15a-15i)
nullable: true
properties:
address:
type: object
properties:
addressLine1:
type: string
nullable: false
description: First line of the address.
maxLength: 35
example: 123 Main St
addressLine2:
type: string
nullable: true
description: Second line of the address.
maxLength: 35
example: Apt 4B
city:
type: string
nullable: false
description: City Name.
maxLength: 40
example: New York
stateOrProvince:
type: string
nullable: false
description: State abbreviation code for US or state/province name for foreign countries.
maxLength: 40
example: NY
postalCode:
type: string
nullable: false
description: US Zipcode or foreign country postal code.
example: '10001'
countryCode:
type: string
nullable: false
description: Country code.
maxLength: 2
example: US
required:
- addressLine1
- city
- stateOrProvince
- postalCode
- countryCode
chapter3StatusCode:
description: Chapter 3 status
example: '01'
type: string
chapter4StatusCode:
description: Chapter 4 status
example: '02'
type: string
countryCode:
description: Country code
example: CA
type: string
ein:
description: EIN
example: '444555666'
type: string
maxLength: 9
ftin:
description: FTIN
nullable: true
type: string
maxLength: 50
giin:
description: GIIN
nullable: true
type: string
maxLength: 19
personName:
description: Entity name
example: Intermediary Corp
type: string
maxLength: 35
type: object
payer:
description: Payer information (Box 16a-16e)
nullable: true
properties:
chapter3StatusCode:
description: Chapter 3 status code
example: '03'
type: string
chapter4StatusCode:
description: Chapter 4 status code
example: '04'
type: string
ein:
description: Employer Identification Number
example: '555666777'
type: string
giin:
description: Global Intermediary Identification Number
example: XYZ789.98765.LE.321
nullable: true
type: string
personName:
description: Name of the payer
example: XYZ Investment Fund
type: string
type: object
stateTaxDetails:
description: State tax withholding details (Box 17a-17c)
items:
type: object
description: Details about the state tax.
properties:
stateAbbreviationCode:
type: string
nullable: false
description: State abbreviation code.
maxLength: 2
example: NY
stateIdNumber:
type: string
nullable: false
description: State ID number.
maxLength: 25
example: A123456789
stateTaxWithheldAmount:
type: string
nullable: false
description: Total state tax withheld amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '102.02'
stateIncomeAmount:
type: string
nullable: false
description: Total state income amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '99.15'
stateDistributionAmount:
type: string
nullable: false
description: Total state distribution amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '45.48'
specialDataEntriesText:
type: string
nullable: true
description: Special data entries text.
required:
- stateAbbreviationCode
nullable: true
type: array
type: object
createdDateTime:
type: string
format: date-time
example: '2024-01-15T10:30:00Z'
modifiedDateTime:
type: string
format: date-time
example: '2024-01-15T11:30:00Z'
createdBy:
type: string
example: Rich Feller
modifiedBy:
type: string
example: Hugh Mann
'400':
description: Bad Request
content:
application/problem+json:
schema:
type: object
required:
- type
- title
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
title:
description: A user readable string title of the error type.
type: string
details:
description: An array of strings which provide additional details for the error message.
type: array
items:
type: string
data:
description: An array of strings which provide additional data for the error message.
type: array
items:
type: object
properties:
description:
type: string
element:
type: string
elementValue:
type: string
'401':
description: Although the HTTP standard specifies "unauthorized", semantically this response means "unauthenticated". That is, the client must authenticate itself to get the requested response.
'403':
description: The client does not have access rights to the content; that is, it is unauthorized, so the server is refusing to give the requested resource. Unlike 401, the clients identity is known to the server.
'404':
description: The server can not find the requested resource. In an API, this can also mean that the endpoint is valid but the resource itself does not exist. Servers may also send this response instead of 403 to hide the existence of a resource from an unauthorized client.
'500':
description: An unexpected internal server error occurred while processing the request.
content:
application/problem+json:
schema:
type: object
required:
- type
- title
- details
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
nullable: false
example: jackhenry/operation-failed
title:
description: A end-user readable string title of the error type.
nullable: false
type: string
details:
description: An array of end-user readable strings which provide additional details for the error message.
type: array
nullable: false
items:
type: string
data:
type: object
description: |
Additional data that could be useful to a developer or for handing the error programmatically. The schema for the data in this object is intentionally left undefined.
nullable: true
examples:
internalServerError:
summary: Internal server error
value:
type: general/internal-server-error
title: Internal server error
details:
- Unexpected internal server error
put:
summary: Update an existing 1042-S form
parameters:
- name: InstitutionUniversalId
in: path
description: A unique identifier to establish the identity of an Institution/Environment/Brand combination
required: true
schema:
type: string
- in: path
name: id
required: true
schema:
type: string
format: uuid
description: A unique identifier to establish the identity of the form.
operationId: UpdateForm1042S
tags:
- 1042-S
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
taxYear:
type: integer
example: 2025
formData:
description: IRS Form 1042-S for reporting income paid to foreign persons. Contains comprehensive information required for international tax compliance including FATCA reporting.
properties:
issuerOfficeCode:
description: Office code of the issuer (optional, max 4 characters)
example: NYC1
nullable: true
type: string
formId:
description: Unique form identifier
example: 987e6543-e21b-34d3-b654-426614174999
type: string
amendedIndicator:
description: Whether this is an amended form
type: boolean
amendmentNumber:
description: Amendment number if this is an amended form
example: '1'
nullable: true
type: string
incomeTypeCode:
description: Income type code (Box 1) - Two digit code (01=Interest, 06=Dividends, etc.)
example: '01'
type: string
maxLength: 2
grossIncomeAmount:
description: Gross income amount (Box 2) - Integer format, no decimal places
example: '250000'
type: string
chapterTypeCode:
description: Chapter type code (Box 3) - '3' for Chapter 3, '4' for Chapter 4
example: '3'
type: string
maxLength: 1
chapter3:
description: Chapter 3 withholding information (Boxes 3a, 3b) - Required if chapterTypeCode is '3'
nullable: true
properties:
exemptionCode:
description: Two-digit exemption code (optional for Chapter 3)
example: '01'
nullable: true
type: string
maxLength: 2
taxRate:
description: Tax rate as decimal (0.0000 to 0.9999) - 4 decimal places
example: '0.3000'
type: string
type: object
chapter4:
description: Chapter 4 (FATCA) information (Boxes 4a, 4b)
properties:
exemptionCode:
description: Two-digit exemption code (required for Chapter 4)
example: '02'
type: string
maxLength: 2
taxRate:
description: Tax rate as decimal (0.0000 to 0.9999) - 4 decimal places
example: '0.3000'
type: string
type: object
withholdingAllowanceAmount:
description: Withholding allowance amount (Box 5) - Integer format
example: '5000'
nullable: true
type: string
netIncomeAmount:
description: Net income amount (Box 6) - Integer format
example: '245000'
nullable: true
type: string
federalIncomeTaxWithheldAmount:
description: Federal income tax withheld amount (Box 7a) - Integer format
example: '75000'
type: string
taxNotDepositPerEscrowProcIndicator:
description: Tax not deposited per escrow procedure indicator (Box 7b)
example: false
type: boolean
subsqYrWithholdingPrtshpIntIndicator:
description: Subsequent year withholding partnership interest indicator (Box 7c)
example: false
type: boolean
qiOrWpOrWtRevisingReportingIndicator:
description: QI/WP/WT revising reporting indicator (Box 7d)
example: false
type: boolean
otherAgentsTaxWithheldAmount:
description: Other agents tax withheld amount (Box 8) - Integer format
example: '0'
type: string
recipientRepaidAmount:
description: Recipient repaid amount (Box 9) - Integer format
example: '1000'
nullable: true
type: string
totalTaxWithholdingCreditAmount:
description: Total tax withholding credit amount (Box 10) - Integer format
example: '74000'
type: string
withholdingAgentTaxPaidAmount:
description: Withholding agent tax paid amount (Box 11) - Integer format
example: '0'
nullable: true
type: string
withholdingAgent:
description: Withholding agent information (Box 12a-12i)
nullable: true
properties:
address:
type: object
properties:
addressLine1:
type: string
nullable: false
description: First line of the address.
maxLength: 35
example: 123 Main St
addressLine2:
type: string
nullable: true
description: Second line of the address.
maxLength: 35
example: Apt 4B
city:
type: string
nullable: false
description: City Name.
maxLength: 40
example: New York
stateOrProvince:
type: string
nullable: false
description: State abbreviation code for US or state/province name for foreign countries.
maxLength: 40
example: NY
postalCode:
type: string
nullable: false
description: US Zipcode or foreign country postal code.
example: '10001'
countryCode:
type: string
nullable: false
description: Country code.
maxLength: 2
example: US
required:
- addressLine1
- city
- stateOrProvince
- postalCode
- countryCode
description: Withholding agent's address
chapter3StatusCode:
description: Chapter 3 status code (two digits)
example: '01'
type: string
maxLength: 2
chapter4StatusCode:
description: Chapter 4 status code (two digits)
example: '02'
type: string
maxLength: 2
countryCode:
description: Country code (ISO 2-letter)
example: US
type: string
maxLength: 2
ein:
description: Employer Identification Number (9 digits)
example: '123456789'
type: string
maxLength: 9
ftin:
description: Foreign Taxpayer Identification Number
example: FOREIGN789
nullable: true
type: string
maxLength: 50
giin:
description: Global Intermediary Identification Number
example: 987e6543-e21b-34d3-b654-426614174999
nullable: true
type: string
personName:
description: Name of the withholding agent
example: ABC Financial Corp
type: string
maxLength: 35
type: object
recipientDetail:
description: Foreign recipient information (Box 13a-13l)
properties:
address:
type: object
properties:
addressLine1:
type: string
nullable: false
description: First line of the address.
maxLength: 35
example: 123 Main St
addressLine2:
type: string
nullable: true
description: Second line of the address.
maxLength: 35
example: Apt 4B
city:
type: string
nullable: false
description: City Name.
maxLength: 40
example: New York
stateOrProvince:
type: string
nullable: false
description: State abbreviation code for US or state/province name for foreign countries.
maxLength: 40
example: NY
postalCode:
type: string
nullable: false
description: US Zipcode or foreign country postal code.
example: '10001'
countryCode:
type: string
nullable: false
description: Country code.
maxLength: 2
example: US
required:
- addressLine1
- city
- stateOrProvince
- postalCode
- countryCode
description: Recipient's address (may be foreign)
nullable: true
birthDate:
description: Recipient's birth date (ISO 8601 format)
example: '1990-01-15T00:00:00Z'
nullable: true
type: string
chapter3StatusCode:
description: Chapter 3 status code (two digits)
example: '01'
nullable: true
type: string
maxLength: 2
chapter4StatusCode:
description: Chapter 4 (FATCA) status code (two digits)
example: '02'
nullable: true
type: string
maxLength: 2
ftin:
description: Foreign Taxpayer Identification Number
example: FOREIGN123456
nullable: true
type: string
maxLength: 50
giin:
description: Global Intermediary Identification Number
example: 987e6543-e21b-34d3-b654-426614174999
nullable: true
type: string
maxLength: 19
lobCode:
description: Limitation on Benefits (LOB) code
example: '01'
nullable: true
type: string
maxLength: 2
personalNameInfo:
description: Recipient's name information
type: object
properties:
firstName:
type: string
nullable: false
description: First name of the individual.
maxLength: 20
example: John
middleName:
type: string
nullable: true
description: Middle name of the individual.
maxLength: 20
example: Michael
lastName:
type: string
nullable: false
description: Last name of the individual.
maxLength: 20
example: Doe
suffixName:
type: string
nullable: true
description: Suffix name of the individual.
maxLength: 20
example: Jr
nameControlText:
type: string
nullable: true
description: Control text for the individual's name.
maxLength: 4
example: DOE
required:
- firstName
- lastName
tin:
description: U.S. Taxpayer Identification Number (optional for foreign recipients)
example: '123456789'
nullable: true
type: string
type: object
recipientAccountNumber:
description: Recipient account number (Box 13k)
example: ACC-789123
nullable: true
type: string
maxLength: 30
primaryWithholdingAgent:
description: Primary withholding agent information (Box 14a-14b)
nullable: true
properties:
ein:
description: Employer Identification Number
example: '987654321'
type: string
maxLength: 9
personName:
description: Name of primary withholding agent
example: Primary Bank Corp
type: string
maxLength: 35
type: object
proRataBasisIndicator:
description: Pro rata basis indicator (Box 15)
example: false
type: boolean
intermediaryOrFlowThroughEntity:
description: Intermediary or flow-through entity information (Box 15a-15i)
nullable: true
properties:
address:
type: object
properties:
addressLine1:
type: string
nullable: false
description: First line of the address.
maxLength: 35
example: 123 Main St
addressLine2:
type: string
nullable: true
description: Second line of the address.
maxLength: 35
example: Apt 4B
city:
type: string
nullable: false
description: City Name.
maxLength: 40
example: New York
stateOrProvince:
type: string
nullable: false
description: State abbreviation code for US or state/province name for foreign countries.
maxLength: 40
example: NY
postalCode:
type: string
nullable: false
description: US Zipcode or foreign country postal code.
example: '10001'
countryCode:
type: string
nullable: false
description: Country code.
maxLength: 2
example: US
required:
- addressLine1
- city
- stateOrProvince
- postalCode
- countryCode
chapter3StatusCode:
description: Chapter 3 status
example: '01'
type: string
chapter4StatusCode:
description: Chapter 4 status
example: '02'
type: string
countryCode:
description: Country code
example: CA
type: string
ein:
description: EIN
example: '444555666'
type: string
maxLength: 9
ftin:
description: FTIN
nullable: true
type: string
maxLength: 50
giin:
description: GIIN
nullable: true
type: string
maxLength: 19
personName:
description: Entity name
example: Intermediary Corp
type: string
maxLength: 35
type: object
payer:
description: Payer information (Box 16a-16e)
nullable: true
properties:
chapter3StatusCode:
description: Chapter 3 status code
example: '03'
type: string
chapter4StatusCode:
description: Chapter 4 status code
example: '04'
type: string
ein:
description: Employer Identification Number
example: '555666777'
type: string
giin:
description: Global Intermediary Identification Number
example: XYZ789.98765.LE.321
nullable: true
type: string
personName:
description: Name of the payer
example: XYZ Investment Fund
type: string
type: object
stateTaxDetails:
description: State tax withholding details (Box 17a-17c)
items:
type: object
description: Details about the state tax.
properties:
stateAbbreviationCode:
type: string
nullable: false
description: State abbreviation code.
maxLength: 2
example: NY
stateIdNumber:
type: string
nullable: false
description: State ID number.
maxLength: 25
example: A123456789
stateTaxWithheldAmount:
type: string
nullable: false
description: Total state tax withheld amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '102.02'
stateIncomeAmount:
type: string
nullable: false
description: Total state income amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '99.15'
stateDistributionAmount:
type: string
nullable: false
description: Total state distribution amount. If provided, it must be a non-negative decimal value with at most 2 decimal places.
minimum: 0
maximum: 9999999999.99
example: '45.48'
specialDataEntriesText:
type: string
nullable: true
description: Special data entries text.
required:
- stateAbbreviationCode
nullable: true
type: array
type: object
recipientId:
type: string
description: Unique identifier for the recipient of the Form 1042-S data.
example: 123e4567-e89b-12d3-a456-426614174000
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
properties:
changed:
type: boolean
example: true
'400':
description: Bad Request
content:
application/problem+json:
schema:
type: object
required:
- type
- title
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
title:
description: A user readable string title of the error type.
type: string
details:
description: An array of strings which provide additional details for the error message.
type: array
items:
type: string
data:
description: An array of strings which provide additional data for the error message.
type: array
items:
type: object
properties:
description:
type: string
element:
type: string
elementValue:
type: string
examples:
invalidRequest:
summary: Invalid request
value:
type: Bad Request
title: Incoming request failed validation
details:
- taxYear must be greater than 2025.
data: null
'401':
description: Although the HTTP standard specifies "unauthorized", semantically this response means "unauthenticated". That is, the client must authenticate itself to get the requested response.
'403':
description: The client does not have access rights to the content; that is, it is unauthorized, so the server is refusing to give the requested resource. Unlike 401, the clients identity is known to the server.
'500':
description: An unexpected internal server error occurred while processing the request.
content:
application/problem+json:
schema:
type: object
required:
- type
- title
- details
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
nullable: false
example: jackhenry/operation-failed
title:
description: A end-user readable string title of the error type.
nullable: false
type: string
details:
description: An array of end-user readable strings which provide additional details for the error message.
type: array
nullable: false
items:
type: string
data:
type: object
description: |
Additional data that could be useful to a developer or for handing the error programmatically. The schema for the data in this object is intentionally left undefined.
nullable: true
examples:
internalServerError:
summary: Internal server error
value:
type: general/internal-server-error
title: Internal server error
details:
- Unexpected internal server error
delete:
summary: Delete an existing 1042-S form
parameters:
- name: InstitutionUniversalId
in: path
description: A unique identifier to establish the identity of an Institution/Environment/Brand combination
required: true
schema:
type: string
- in: path
name: id
required: true
schema:
type: string
format: uuid
description: A unique identifier to establish the identity of the form.
operationId: DeleteForm1042S
tags:
- 1042-S
responses:
'200':
description: Success
'400':
description: Bad Request
content:
application/problem+json:
schema:
type: object
required:
- type
- title
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
title:
description: A user readable string title of the error type.
type: string
details:
description: An array of strings which provide additional details for the error message.
type: array
items:
type: string
data:
description: An array of strings which provide additional data for the error message.
type: array
items:
type: object
properties:
description:
type: string
element:
type: string
elementValue:
type: string
'401':
description: Although the HTTP standard specifies "unauthorized", semantically this response means "unauthenticated". That is, the client must authenticate itself to get the requested response.
'403':
description: The client does not have access rights to the content; that is, it is unauthorized, so the server is refusing to give the requested resource. Unlike 401, the clients identity is known to the server.
'404':
description: The server can not find the requested resource. In an API, this can also mean that the endpoint is valid but the resource itself does not exist. Servers may also send this response instead of 403 to hide the existence of a resource from an unauthorized client.
'500':
description: An unexpected internal server error occurred while processing the request.
content:
application/problem+json:
schema:
type: object
required:
- type
- title
- details
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
nullable: false
example: jackhenry/operation-failed
title:
description: A end-user readable string title of the error type.
nullable: false
type: string
details:
description: An array of end-user readable strings which provide additional details for the error message.
type: array
nullable: false
items:
type: string
data:
type: object
description: |
Additional data that could be useful to a developer or for handing the error programmatically. The schema for the data in this object is intentionally left undefined.
nullable: true
examples:
internalServerError:
summary: Internal server error
value:
type: general/internal-server-error
title: Internal server error
details:
- Unexpected internal server error
/a/api/tax-reporting/v1/{InstitutionUniversalId}/forms-search:
post:
summary: Search Forms
parameters:
- name: InstitutionUniversalId
in: path
description: A unique identifier to establish the identity of an Institution/Environment/Brand combination
required: true
schema:
type: string
- name: offset
in: query
required: false
description: When returning a list of results, the offset determines the number of records to skip before returning the result. If the offset is not provided, the server will return the first set of records.
example: ?offset=50
schema:
type: string
default: '0'
- name: count
in: query
required: false
description: The count of records requested. The server may limit the number of records returned in a single response. If the count is not provided, the server will return a default number of records.
example: ?count=100
schema:
type: string
default: '100'
operationId: SearchIRSFormData
tags:
- General
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
searchTerm:
type: string
description: The search term to filter the IRS form data. This could be a recipient name, TIN, or any other relevant identifier.
formType:
type: string
description: The type of IRS form to search for.
enum:
- 1099-INT
- 1099-MISC
- 1042-S
taxYear:
type: integer
description: The tax year for which the IRS form data is being requested.
minimum: 2025
maximum: 2100
example: 2025
required:
- searchTerm
- formType
- taxYear
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
properties:
results:
type: array
description: The list of IRS form data that matches the search criteria.
items:
type: object
properties:
id:
type: string
description: Unique identifier for the IRS form data.
example: 987e6543-e21b-34d3-b654-426614174999
taxYear:
type: integer
description: The tax year for which the IRS form data is being reported.
example: 2025
formType:
type: string
description: The type of IRS form being reported.
enum:
- 1099-INT
- 1099-MISC
- 1042-S
recipientId:
type: string
description: Unique identifier for the recipient of the IRS form data.
example: 123e4567-e89b-12d3-a456-426614174000
payerId:
type: string
description: The id of the payer.
example: '987654321'
tin:
type: string
description: Taxpayer Identification Number (TIN) of the recipient.
example: '123456789'
paging:
type: object
required:
- nextOffset
- results
properties:
nextOffset:
type: string
description: The next offset is the start position of the read pointer for pagination.
results:
type: integer
description: The number of records included in the response.
total:
type: integer
nullable: true
description: The total number of records the server has available for the request.
additionalProperties: false
'400':
description: Bad Request
'401':
description: Although the HTTP standard specifies "unauthorized", semantically this response means "unauthenticated". That is, the client must authenticate itself to get the requested response.
'403':
description: The client does not have access rights to the content; that is, it is unauthorized, so the server is refusing to give the requested resource. Unlike 401, the clients identity is known to the server.
'500':
description: An unexpected internal server error occurred while processing the request.
content:
application/problem+json:
schema:
type: object
required:
- type
- title
- details
properties:
type:
description: A string path which uniquely classifies the domain of the error.
type: string
nullable: false
example: jackhenry/operation-failed
title:
description: A end-user readable string title of the error type.
nullable: false
type: string
details:
description: An array of end-user readable strings which provide additional details for the error message.
type: array
nullable: false
items:
type: string
data:
type: object
description: |
Additional data that could be useful to a developer or for handing the error programmatically. The schema for the data in this object is intentionally left undefined.
nullable: true
examples:
internalServerError:
summary: Internal server error
value:
type: general/internal-server-error
title: Internal server error
details:
- Unexpected internal server error
Did this page help you?
Why was this page helpful?
Why wasn't this page helpful?
Thank you for your feedback!
Last updated Mon Mar 30 2026