openapi: 3.1.0
info:
title: Abound API - v4 1099-INT 1099-K API
version: '4'
description: 'Abound was a US tax-compliance API for platforms and marketplaces: W-9 / W-8BEN / W-8BEN-E collection, real-time TIN verification against the IRS, and generation, filing, correction, voiding and physical mailing of Form 1099-NEC, 1099-MISC, 1099-K and 1099-INT with federal and state tax authorities.
NOTE: This document is a mechanical conversion of the first-party Fern API Definition that Abound shipped inside its official npm package @withabound/node-sdk (v6.0.68). Abound was acquired and the service has been retired: the withabound.com DNS zone is fully de-delegated and the API hosts no longer resolve. This spec is preserved as a historical record of the API surface.'
x-status: retired
servers:
- url: https://production-api.withabound.com
description: Production (retired - host no longer resolves)
- url: https://sandbox-api.withabound.com
description: Sandbox (retired - host no longer resolves)
security:
- bearerAuth: []
tags:
- name: 1099-K
paths:
/v4/documents/1099-k:
get:
operationId: form1099KList
tags:
- 1099-K
summary: List all 1099-K documents
description: Returns a list of 1099-K documents.
parameters:
- name: page
in: query
required: false
schema:
$ref: '#/components/schemas/Page'
- name: filingYear
in: query
required: false
schema:
$ref: '#/components/schemas/FilingYear'
- name: payeeTinFingerprint
in: query
required: false
schema:
$ref: '#/components/schemas/PayeeTinFingerprint'
- name: payerTinFingerprint
in: query
required: false
schema:
$ref: '#/components/schemas/PayerTinFingerprint'
- name: status
in: query
required: false
schema:
$ref: '#/components/schemas/Form1099StatusEnum'
- name: userId
in: query
required: false
schema:
$ref: '#/components/schemas/UserId'
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Form1099KSchema'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorBadRequestSchema'
example:
errors:
- field: metadata.key
message: Expected metadata.key to be of type string, but received number
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorSchema'
example:
message: Unauthorized
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorSchema'
example:
message: Not Found
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorSchema'
example:
message: Internal Server Error
post:
operationId: form1099KCreate
tags:
- 1099-K
summary: Create a 1099-K
description: Creates a 1099-K document and subsequently kicks off a TIN Verification, if the name and TIN combo has not been used before.
parameters:
- name: Idempotency-Key
in: header
required: false
schema:
$ref: '#/components/schemas/IdempotencyKey'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Form1099KRequestSchema'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Form1099KSchema'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorBadRequestSchema'
example:
errors:
- field: metadata.key
message: Expected metadata.key to be of type string, but received number
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorSchema'
example:
message: Unauthorized
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorSchema'
example:
message: Not Found
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorSchema'
example:
message: Internal Server Error
/v4/documents/1099-k/{documentId}:
get:
operationId: form1099KRetrieve
tags:
- 1099-K
summary: Retrieve a 1099-K
description: Retrieves the details of an existing 1099-K document.
parameters:
- name: documentId
in: path
required: true
schema:
$ref: '#/components/schemas/DocumentId'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Form1099KSchema'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorBadRequestSchema'
example:
errors:
- field: metadata.key
message: Expected metadata.key to be of type string, but received number
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorSchema'
example:
message: Unauthorized
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorSchema'
example:
message: Not Found
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorSchema'
example:
message: Internal Server Error
delete:
operationId: form1099KDelete
tags:
- 1099-K
summary: Delete a 1099-K
description: Deletes a 1099-K document. Once an action (`/file`, `/correct`, `/void`) has been executed on a 1099-K, it cannot be deleted.
parameters:
- name: documentId
in: path
required: true
schema:
$ref: '#/components/schemas/DocumentId'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/OkSchema'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorBadRequestSchema'
example:
errors:
- field: metadata.key
message: Expected metadata.key to be of type string, but received number
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorSchema'
example:
message: Unauthorized
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorSchema'
example:
message: Not Found
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorSchema'
example:
message: Internal Server Error
/v4/documents/1099-k/{documentId}/correct:
post:
operationId: form1099KCorrect
tags:
- 1099-K
summary: Correct a 1099-K
description: Files a new corrected 1099-K and relates it to the original document. A 1099-K can be corrected only after it has reached the `FILED` status. Automatically handles both one-transaction and two-transaction corrections.
parameters:
- name: documentId
in: path
required: true
schema:
$ref: '#/components/schemas/DocumentId'
- name: Idempotency-Key
in: header
required: false
schema:
$ref: '#/components/schemas/IdempotencyKey'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Form1099KCorrectRequestSchema'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Form1099KSchema'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorBadRequestSchema'
example:
errors:
- field: metadata.key
message: Expected metadata.key to be of type string, but received number
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorSchema'
example:
message: Unauthorized
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorSchema'
example:
message: Not Found
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorSchema'
example:
message: Internal Server Error
/v4/documents/1099-k/{documentId}/file:
post:
operationId: form1099KFile
tags:
- 1099-K
summary: File a 1099-K
description: Files a 1099-K document.
parameters:
- name: documentId
in: path
required: true
schema:
$ref: '#/components/schemas/DocumentId'
- name: Idempotency-Key
in: header
required: false
schema:
$ref: '#/components/schemas/IdempotencyKey'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Form1099KSchema'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorBadRequestSchema'
example:
errors:
- field: metadata.key
message: Expected metadata.key to be of type string, but received number
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorSchema'
example:
message: Unauthorized
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorSchema'
example:
message: Not Found
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorSchema'
example:
message: Internal Server Error
/v4/documents/1099-k/{documentId}/mail:
post:
operationId: form1099KMail
tags:
- 1099-K
summary: Mail a 1099-K
description: Mails a 1099-K document.
parameters:
- name: documentId
in: path
required: true
schema:
$ref: '#/components/schemas/DocumentId'
- name: Idempotency-Key
in: header
required: false
schema:
$ref: '#/components/schemas/IdempotencyKey'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/MailingRequestSchema'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/MailingSchema'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorBadRequestSchema'
example:
errors:
- field: metadata.key
message: Expected metadata.key to be of type string, but received number
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorSchema'
example:
message: Unauthorized
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorSchema'
example:
message: Not Found
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorSchema'
example:
message: Internal Server Error
/v4/documents/1099-k/{documentId}/void:
post:
operationId: form1099KVoid
tags:
- 1099-K
summary: Void a 1099-K
description: Files a new voided 1099-K and relates it to the original document. A 1099-K can be voided only after it has reached the `FILED` status.
parameters:
- name: documentId
in: path
required: true
schema:
$ref: '#/components/schemas/DocumentId'
- name: Idempotency-Key
in: header
required: false
schema:
$ref: '#/components/schemas/IdempotencyKey'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Form1099KSchema'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorBadRequestSchema'
example:
errors:
- field: metadata.key
message: Expected metadata.key to be of type string, but received number
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorSchema'
example:
message: Unauthorized
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorSchema'
example:
message: Not Found
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultErrorSchema'
example:
message: Internal Server Error
components:
schemas:
Form1099FilingStateEnum:
type: string
enum:
- AK
- AL
- AR
- AZ
- CA
- CO
- CT
- DC
- DE
- FL
- GA
- HI
- IA
- ID
- IL
- IN
- KY
- KS
- LA
- MA
- MD
- ME
- MI
- MN
- MO
- MS
- MT
- N/A
- NC
- ND
- NE
- NH
- NJ
- NM
- NV
- NY
- OH
- OK
- OR
- PA
- RI
- SC
- SD
- TN
- TX
- UT
- VA
- VT
- WA
- WI
- WV
- WY
description: The filing state code. The abbreviation of the state (`CA` for California). If a state filing is not desired, use `N/A`.
Form1099KFormFieldsSchema:
allOf:
- $ref: '#/components/schemas/Form1099FormFieldsBaseSchema'
- $ref: '#/components/schemas/Form1099KFormFieldsRequestSchema'
OkSchema:
type: object
additionalProperties: {}
Form1099KSchema:
allOf:
- $ref: '#/components/schemas/Form1099BaseSchema'
- type: object
properties:
formFields:
$ref: '#/components/schemas/Form1099KFormFieldsSchema'
required:
- formFields
examples:
- id: documentId_sampletTtqNfulW8
formFields:
isCorrected: false
isVoid: false
accountNumber: A0MCFOfvWWL7AVtwrhiU
aggregateGrossAmount: 27987876
aggregateGrossAmountCardNotPresent: 2332323
federalIncomeTaxWithheld: 0
merchantCategoryCode: '4582'
numberOfPaymentTransactions: 767
pseName: Payment Entity
payerClassification: PSE
transactionsReportedClassification: PAYMENT_CARD
psePhoneNumber: '+15555555555'
grossAmountsByMonth:
april: 2332323
august: 2332323
december: 2332323
february: 2332323
january: 2332323
july: 2332323
june: 2332323
march: 2332323
may: 2332323
november: 2332323
october: 2332323
september: 2332323
stateTaxInfo:
- filingState: CA
stateTaxWithheld: 0
filingYear: 2024
createdAt: '2024-01-01T00:00:00.000Z'
status: CREATED
payer:
name: Hooli
address: 256 Byron Street
address2: Suite 32
city: Palo Alto
state: CA
postalCode: '94306'
country: US
phoneNumber: '+16501014096'
tin: '*******11'
tinType: BUSINESS
tinFingerprint: tinFingerprint_sample847jI1LwxF
tinVerificationId: tinVerificationId_sample1b0E6efa89
tinVerificationStatus: MATCH
payee:
name: Ada Lovelace
address: 1401 N Shoreline Blvd
address2: Suite 1
city: Mountain View
state: CA
postalCode: '94043'
country: US
tin: '*******00'
tinType: INDIVIDUAL
tinFingerprint: tinFingerprint_samplehy2BWO6JJG
tinVerificationId: tinVerificationId_sample41SD71AV8f
tinVerificationStatus: MATCH
payerUrl: https://tax-documents-sandbox.s3.us-west-2.amazonaws.com/FORM-1099-K-COPY-C.pdf
payeeUrl: https://tax-documents-sandbox.s3.us-west-2.amazonaws.com/FORM-1099-K-COPY-B.pdf
- id: documentId_sampletTtqNfulW8
formFields:
isCorrected: false
isVoid: false
accountNumber: A0MCFOfvWWL7AVtwrhiU
aggregateGrossAmount: 27987876
aggregateGrossAmountCardNotPresent: 2332323
federalIncomeTaxWithheld: 0
merchantCategoryCode: '4582'
numberOfPaymentTransactions: 767
pseName: Payment Entity
payerClassification: PSE
transactionsReportedClassification: PAYMENT_CARD
psePhoneNumber: '+15555555555'
grossAmountsByMonth:
april: 2332323
august: 2332323
december: 2332323
february: 2332323
january: 2332323
july: 2332323
june: 2332323
march: 2332323
may: 2332323
november: 2332323
october: 2332323
september: 2332323
stateTaxInfo:
- filingState: CA
stateTaxWithheld: 0
filingYear: 2024
createdAt: '2024-01-01T00:00:00.000Z'
status: FILED
payer:
name: Hooli
address: 256 Byron Street
address2: Suite 32
city: Palo Alto
state: CA
postalCode: '94306'
country: US
phoneNumber: '+16501014096'
tin: '*******11'
tinType: BUSINESS
tinFingerprint: tinFingerprint_sample847jI1LwxF
tinVerificationId: tinVerificationId_sample1b0E6efa89
tinVerificationStatus: MATCH
payee:
name: Ada Lovelace
address: 1401 N Shoreline Blvd
address2: Suite 1
city: Mountain View
state: CA
postalCode: '94043'
country: US
tin: '*******00'
tinType: INDIVIDUAL
tinFingerprint: tinFingerprint_samplehy2BWO6JJG
tinVerificationId: tinVerificationId_sample41SD71AV8f
tinVerificationStatus: MATCH
payerUrl: https://tax-documents-sandbox.s3.us-west-2.amazonaws.com/FORM-1099-K-COPY-C.pdf
payeeUrl: https://tax-documents-sandbox.s3.us-west-2.amazonaws.com/FORM-1099-K-COPY-B.pdf
- id: documentId_samplenOHhUUVnh6
correctedFromId: documentId_sampletTtqNfulW8
formFields:
isCorrected: true
isVoid: false
accountNumber: A0MCFOfvWWL7AVtwrhiU
aggregateGrossAmount: 25655553
aggregateGrossAmountCardNotPresent: 25655553
federalIncomeTaxWithheld: 0
merchantCategoryCode: '4582'
numberOfPaymentTransactions: 767
pseName: Payment Entity
payerClassification: PSE
transactionsReportedClassification: PAYMENT_CARD
psePhoneNumber: '+15555555555'
grossAmountsByMonth:
april: 2332323
august: 2332323
december: 2332323
february: 2332323
january: 0
july: 2332323
june: 2332323
march: 2332323
may: 2332323
november: 2332323
october: 2332323
september: 2332323
stateTaxInfo:
- filingState: CA
stateTaxWithheld: 0
filingYear: 2024
createdAt: '2024-01-01T00:00:00.000Z'
status: FILED
payer:
name: Hooli
address: 256 Byron Street
address2: Suite 32
city: Palo Alto
state: CA
postalCode: '94306'
country: US
phoneNumber: '+16501014096'
tin: '*******11'
tinType: BUSINESS
tinFingerprint: tinFingerprint_sample847jI1LwxF
tinVerificationId: tinVerificationId_sample1b0E6efa89
tinVerificationStatus: MATCH
payee:
name: Ada Lovelace
address: 1401 N Shoreline Blvd
address2: Suite 1
city: Mountain View
state: CA
postalCode: '94043'
country: US
tin: '*******00'
tinType: INDIVIDUAL
tinFingerprint: tinFingerprint_samplehy2BWO6JJG
tinVerificationId: tinVerificationId_sample41SD71AV8f
tinVerificationStatus: MATCH
payerUrl: https://tax-documents-sandbox.s3.us-west-2.amazonaws.com/FORM-1099-K-CORRECTED-COPY-C.pdf
payeeUrl: https://tax-documents-sandbox.s3.us-west-2.amazonaws.com/FORM-1099-K-CORRECTED-COPY-B.pdf
- id: documentId_sampleb6HQLsVuM9
voidedFromId: documentId_sampletTtqNfulW8
formFields:
isCorrected: false
isVoid: true
accountNumber: A0MCFOfvWWL7AVtwrhiU
aggregateGrossAmount: 27987876
aggregateGrossAmountCardNotPresent: 2332323
federalIncomeTaxWithheld: 0
merchantCategoryCode: '4582'
numberOfPaymentTransactions: 767
pseName: Payment Entity
payerClassification: PSE
transactionsReportedClassification: PAYMENT_CARD
psePhoneNumber: '+15555555555'
grossAmountsByMonth:
april: 2332323
august: 2332323
december: 2332323
february: 2332323
january: 2332323
july: 2332323
june: 2332323
march: 2332323
may: 2332323
november: 2332323
october: 2332323
september: 2332323
stateTaxInfo:
- filingState: CA
stateTaxWithheld: 0
filingYear: 2024
createdAt: '2024-01-01T00:00:00.000Z'
status: FILED
payer:
name: Hooli
address: 256 Byron Street
address2: Suite 32
city: Palo Alto
state: CA
postalCode: '94306'
country: US
phoneNumber: '+16501014096'
tin: '*******11'
tinType: BUSINESS
tinFingerprint: tinFingerprint_sample847jI1LwxF
tinVerificationId: tinVerificationId_sample1b0E6efa89
tinVerificationStatus: MATCH
payee:
name: Ada Lovelace
address: 1401 N Shoreline Blvd
address2: Suite 1
city: Mountain View
state: CA
postalCode: '94043'
country: US
tin: '*******00'
tinType: INDIVIDUAL
tinFingerprint: tinFingerprint_samplehy2BWO6JJG
tinVerificationId: tinVerificationId_sample41SD71AV8f
tinVerificationStatus: MATCH
payerUrl: https://tax-documents-sandbox.s3.us-west-2.amazonaws.com/FORM-1099-K-VOID-COPY-C.pdf
payeeUrl: https://tax-documents-sandbox.s3.us-west-2.amazonaws.com/FORM-1099-K-VOID-COPY-B.pdf
IdempotencyKey:
type: string
description: The unique key used to identify a request that has already been processed.
ErrorBadRequestSchemaErrorsItem:
type: object
properties:
field:
type: string
description: The field that caused the error.
message:
type: string
description: The error message associated with the field.
required:
- message
PayerRequestSchema:
allOf:
- $ref: '#/components/schemas/AddressSchema'
- type: object
properties:
name:
type: string
description: The payer's legal name (first + last) or business name.
name2:
type: string
description: The payer's trade name, DBA name, or disregarded entity name, if different from `name`.
tin:
type: string
description: The payer's tax identification number, commonly referred to as a TIN. No hyphens. Numerical digits only. Alternatively, you may pass the corresponding `tinFingerprint`.
minLength: 9
maxLength: 9
phoneNumber:
type: string
description: The payer's phone number.
pattern: ^\+?\d{10,15}$
required:
- name
- phoneNumber
- tin
description: The payer of the document.
MailingRequestToSchema:
allOf:
- $ref: '#/components/schemas/MailingNameSchema'
- $ref: '#/components/schemas/AddressSchema'
description: The mailing address of the recipient.
Form1099KFormFieldsRequestSchema:
type: object
properties:
payerClassification:
$ref: '#/components/schemas/Form1099KPayerClassificationEnum'
transactionsReportedClassification:
$ref: '#/components/schemas/Form1099KTransactionsReportedClassificationSchema'
pseName:
type: string
description: The payment settlement entity name. Required if `payerClassification` is `PSE`.
psePhoneNumber:
type: string
description: The payment settlement entity phone number. Required if `payerClassification` is `PSE`.
pattern: ^\+?\d{10,15}$
accountNumber:
$ref: '#/components/schemas/Form1099AccountNumber'
aggregateGrossAmount:
type: integer
description: Aggregate gross amount of payment card/third party network transactions made to you through the PSE during the calendar year. Value must be in cents.
minimum: 0
aggregateGrossAmountCardNotPresent:
type: integer
description: The aggregate gross amount of all reportable payment transactions made to you through the PSE during the calendar year where the card was not present at the time of the transaction or the card number was keyed into the terminal. Typically, this relates to online sales, phone sales, or catalogue sales. If `transactionsReportedClassification` is `thirdPartyNetwork`, or if these are third party network transactions, card not present transactions will not be reported. Value must be in cents.
minimum: 0
merchantCategoryCode:
type: string
description: Payment brands use merchant category codes (MCCs) to classify merchants and businesses by the type of goods or services provided. It is a four (4) digit code. This may be left blank.
minLength: 4
maxLength: 4
pattern: ^\d{4}$
numberOfPaymentTransactions:
type: integer
description: The number of payment transactions (not including refund transactions) processed through the payment card/third party network.
minimum: 0
federalIncomeTaxWithheld:
type: integer
description: The federal income tax withheld. Generally, a payer must backup withhold if you did not furnish your TIN or you did not furnish the correct TIN to the payer. Value must be in cents. Abound does not currently support `federalIncomeTaxWithheld` reporting on the 1099-K, please contact us for more information.
minimum: 0
maximum: 0
grossAmountsByMonth:
$ref: '#/components/schemas/Form1099KGrossAmountsByMonthSchema'
stateTaxInfo:
type: array
items:
$ref: '#/components/schemas/Form1099StateTaxInfoSchema'
description: An array that contains up to two state tax information objects. Abound currently only supports one state tax information object in this array. Abound does not currently support state-level tax withholding reporting on the 1099-K, please contact us for more information.
required:
- aggregateGrossAmount
- grossAmountsByMonth
- numberOfPaymentTransactions
- payerClassification
- stateTaxInfo
- transactionsReportedClassification
description: The 1099-K form fields.
TinTypeEnum:
type: string
enum:
- INDIVIDUAL
- BUSINESS
description: The type of the TIN. `INDIVIDUAL` refers to SSNs, ITINs, or ATINs. While `BUSINESS` refers to EINs.
Page:
type: integer
description: The specific page of results you're requesting. Responses are limited to a maximum of 100 records.
Form1099KPayerClassificationEnum:
type: string
enum:
- PSE
- EPF_OTHER
description: The type of payer. Payment settlement entity (PSE) or Electronic Payment Facilitator (EPF)/Other third party.
MailingStatusEnum:
type: string
enum:
- CREATED
- PROCESSING_FOR_DELIVERY
- IN_TRANSIT
- DELIVERED
- RETURNED_TO_SENDER
Form1099BaseCorrectRequestSchema:
type: object
properties:
userId:
$ref: '#/components/schemas/UserId'
payee:
$ref: '#/components/schemas/PayeeRequestSchema'
required:
- payee
TinFingerprint:
type: string
description: Your unique token that points to a TIN.
PayerSchema:
allOf:
- $ref: '#/components/schemas/PayerRequestSchema'
- type: object
properties:
tinFingerprint:
$ref: '#/components/schemas/TinFingerprint'
tinType:
$ref: '#/components/schemas/TinTypeEnum'
tinVerificationId:
$ref: '#/components/schemas/TinVerificationId'
tinVerificationStatus:
$ref: '#/components/schemas/TinVerificationStatusEnum'
required:
- tinFingerprint
- tinVerificationId
- tinVerificationStatus
description: The payer of the document.
ErrorBadRequestSchema:
type: object
properties:
errors:
type: array
items:
$ref: '#/components/schemas/ErrorBadRequestSchemaErrorsItem'
description: The error message(s) associated with the response status code.
required:
- errors
MailingNameSchema:
type: object
properties:
name:
type: string
description: The individual's name (first + last) or business name.
name2:
type: string
description: The business name, trade name, DBA name, or disregarded entity name, if different from `name`.
UserId:
type: string
description: The unique identifier for a single end-user of your application.
Form1099BaseRequestSchema:
type: object
properties:
filingYear:
$ref: '#/components/schemas/FilingYear'
userId:
$ref: '#/components/schemas/UserId'
payer:
$ref: '#/components/schemas/PayerRequestSchema'
payee:
$ref: '#/components/schemas/PayeeRequestSchema'
required:
- filingYear
- payee
- payer
Form1099FormFieldsBaseSchema:
type: object
properties:
isVoid:
type: boolean
description: If `true`, the void checkbox will be marked on the 1099 document.
isCorrected:
type: boolean
description: If `true`, the corrected checkbox will be marked on the 1099 document.
required:
- isCorrected
- isVoid
TinVerificationStatusEnum:
type: string
enum:
- MATCH
- MISMATCH
- PENDING
description: The status of the TIN Verification.
MailingRequestFromSchema:
allOf:
- $ref: '#/components/schemas/MailingNameSchema'
- $ref: '#/components/schemas/AddressSchema'
description: The mailing address of the sender.
Form1099KCorrectRequestSchema:
allOf:
- $ref: '#/components/schemas/Form1099BaseCorrectRequestSchema'
- type: object
properties:
formFields:
$ref: '#/components/schemas/Form1099KFormFieldsRequestSchema'
required:
- formFields
examples:
- payee:
name: Ada Lovelace
tin: '000000000'
address: 1401 N Shoreline Blvd
address2: Suite 1
city: Mountain View
state: CA
postalCode: '94043'
country: US
formFields:
accountNumber: A0MCFOfvWWL7AVtwrhiU
aggregateGrossAmount: 25655553
aggregateGrossAmountCardNotPresent: 25655553
federalIncomeTaxWithheld: 0
merchantCategoryCode: '4582'
numberOfPaymentTransactions: 767
pseName: Payment Entity
payerClassification: PSE
transactionsReportedClassification: PAYMENT_CARD
psePhoneNumber: '+15555555555'
grossAmountsByMonth:
april: 2332323
august: 2332323
december: 2332323
february: 2332323
january: 0
july: 2332323
june: 2332323
march: 2332323
may: 2332323
november: 2332323
october: 2332323
september: 2332323
stateTaxInfo:
- filingState: CA
PayeeSchema:
allOf:
- $ref: '#/components/schemas/PayeeRequestSchema'
- type: object
properties:
tinFingerprint:
$ref: '#/components/schemas/TinFingerprint'
tinType:
$ref: '#/components/schemas/TinTypeEnum'
tinVerificationId:
$ref: '#/components/schemas/TinVerificationId'
tinVerificationStatus:
$ref: '#/components/schemas/TinVerificationStatusEnum'
required:
- tinFingerprint
- tinVerificationId
- tinVerificationStatus
description: The payee of the document.
Form1099BaseSchema:
type: object
properties:
id:
$ref: '#/components/schemas/DocumentId'
createdAt:
type: string
format: date-time
description: The `ISO 8601` timestamp when the document was created.
filingYear:
$ref: '#/components/schemas/FilingYear'
status:
allOf:
- $ref: '#/components/schemas/Form1099StatusEnum'
description: 'The status of the 1099 document.
• `CREATED`: The document has passed data validation and the PDFs have been generated.
• `FILED`: The payee''s TIN has been verified and the 1099 has been filed with the appropriate tax authorities.
• `ACCEPTED`: The document has been acknowledged and accepted by the appropriate tax authorities.
• `REJECTED`: The document has a TIN verification `MISMATCH` or has been rejected by one or more tax authories.'
payerUrl:
type: string
description: The URL to the payer's 1099 document. Both the Payer's and Payee's TINs are not masked in this document.
payeeUrl:
type: string
description: The URL to the payee's 1099 document. The Payee's TIN is masked in this document. The Payer's TIN is not masked.
payer:
$ref: '#/components/schemas/PayerSchema'
payee:
$ref: '#/components/schemas/PayeeSchema'
correctedById:
type: string
description: The `documentId` of the corrected 1099 document.
correctedFromId:
type: string
description: The `documentId` of the original 1099 document.
voidedById:
type: string
description: The `documentId` of the voided 1099 document.
voidedFromId:
type: string
description: The `documentId` of the original 1099 document.
userId:
$ref: '#/components/schemas/UserId'
required:
- createdAt
- filingYear
- id
- payee
- payeeUrl
- payer
- payerUrl
- status
Form1099StatusEnum:
type: string
enum:
- CREATED
- FILED
- ACCEPTED
- REJECTED
AddressSchema:
type: object
properties:
address:
type: string
description: The legal address.
address2:
type: string
description: The second part of the legal address, such as an apartment or suite number.
city:
type: string
description: The city associated with the street address. Required if `country` is `US`.
state:
type: string
description: The two-letter character code for this state or US territory (`CA` for California, `ME` for Maine, `PR` for Puerto Rico). Required if `country` is `US`. If foreign, use the province.
postalCode:
type: string
description: The postal code associated with the street address. Required to be a 5-digit numerical value if `country` is `US`. If foreign, use the foreign postal code.
country:
type: string
description: The country adhering to `ISO 3166-2` standards.
minLength: 2
maxLength: 2
required:
- address
- country
Form1099KTransactionsReportedClassificationSchema:
type: string
enum:
- PAYMENT_CARD
- THIRD_PARTY_NETWORK
description: The type of transactions reported.
DocumentId:
type: string
description: The unique identifier for an existing document.
Form1099KRequestSchema:
allOf:
- $ref: '#/components/schemas/Form1099BaseRequestSchema'
- type: object
properties:
formFields:
$ref: '#/components/schemas/Form1099KFormFieldsRequestSchema'
required:
- formFields
examples:
- filingYear: 2024
payer:
name: Hooli
tin: '111111111'
address: 256 Byron Street
address2: Suite 32
city: Palo Alto
state: CA
postalCode: '94306'
country: US
phoneNumber: '+16501014096'
payee:
name: Ada Lovelace
tin: '000000000'
address: 1401 N Shoreline Blvd
address2: Suite 1
city: Mountain View
state: CA
postalCode: '94043'
country: US
formFields:
accountNumber: A0MCFOfvWWL7AVtwrhiU
aggregateGrossAmount: 27987876
aggregateGrossAmountCardNotPresent: 2332323
federalIncomeTaxWithheld: 0
merchantCategoryCode: '4582'
numberOfPaymentTransactions: 767
pseName: Payment Entity
payerClassification: PSE
transactionsReportedClassification: PAYMENT_CARD
psePhoneNumber: '+15555555555'
grossAmountsByMonth:
april: 2332323
august: 2332323
december: 2332323
february: 2332323
january: 2332323
july: 2332323
june: 2332323
march: 2332323
may: 2332323
november: 2332323
october: 2332323
september: 2332323
stateTaxInfo:
- filingState: CA
stateTaxWithheld: 0
PayerTinFingerprint:
type: string
description: Filters the list of documents based on the `payer.tinFingerprint` field.
PayeeTinFingerprint:
type: string
description: Filters the list of documents based on the `payee.tinFingerprint` field.
PayeeRequestSchema:
allOf:
- $ref: '#/components/schemas/AddressSchema'
- type: object
properties:
name:
type: string
description: The payee's legal name (first + last) or business name.
name2:
type: string
description: The payee's trade name, DBA name, or disregarded entity name, if different from `name`.
tin:
type: string
description: The payee's tax identification number, commonly referred to as a TIN. No hyphens. Numerical digits only. Alternatively, you may pass the corresponding `tinFingerprint`.
minLength: 9
maxLength: 9
required:
- name
- tin
description: The payee of the document.
TinVerificationId:
type: string
description: The unique identifier for the TIN Verification.
MailingSchema:
allOf:
- $ref: '#/components/schemas/MailingRequestSchema'
- type: object
properties:
id:
type: string
description: The unique identifier for this mailing.
createdAt:
type: string
format: date-time
description: The creation date and time of the mailing in `ISO 8601` format.
url:
type: string
description: The URL to the mailed document.
status:
allOf:
- $ref: '#/components/schemas/MailingStatusEnum'
description: The status of the mailing.
userId:
$ref: '#/components/schemas/UserId'
mailedFromId:
type: string
description: The `documentId` of the mailed document.
required:
- createdAt
- id
- mailedFromId
- status
- url
examples:
- id: mailingId_sampleFV9b73IvAD
createdAt: '2024-01-01T00:00:00.000Z'
url: https://tax-documents-sandbox.s3.us-west-2.amazonaws.com/FORM-1099-COPY-B.pdf
status: CREATED
to:
address: 1401 N Shoreline Blvd
address2: Suite 1
city: Mountain View
state: CA
postalCode: '94043'
country: US
name: Ada Lovelace
from:
address: 256 Byron Street
address2: Suite 32
city: Palo Alto
state: CA
postalCode: '94306'
country: US
name: Hooli
mailedFromId: documentId_sampletTtqNfulW8
DefaultErrorSchema:
type: object
properties:
message:
type: string
description: The error message associated with the response status code.
required:
- message
Form1099KGrossAmountsByMonthSchema:
type: object
properties:
january:
type: integer
description: The gross amount of payment card/third party network transactions made to you in January. Value must be in cents.
minimum: 0
february:
type: integer
description: The gross amount of payment card/third party network transactions made to you in February. Value must be in cents.
minimum: 0
march:
type: integer
description: The gross amount of payment card/third party network transactions made to you in March. Value must be in cents.
minimum: 0
april:
type: integer
description: The gross amount of payment card/third party network transactions made to you in April. Value must be in cents.
minimum: 0
may:
type: integer
description: The gross amount of payment card/third party network transactions made to you in May. Value must be in cents.
minimum: 0
june:
type: integer
description: The gross amount of payment card/third party network transactions made to you in June. Value must be in cents.
minimum: 0
july:
type: integer
description: The gross amount of payment card/third party network transactions made to you in July. Value must be in cents.
minimum: 0
august:
type: integer
description: The gross amount of payment card/third party network transactions made to you in August. Value must be in cents.
minimum: 0
september:
type: integer
description: The gross amount of payment card/third party network transactions made to you in September. Value must be in cents.
minimum: 0
october:
type: integer
description: The gross amount of payment card/third party network transactions made to you in October. Value must be in cents.
minimum: 0
november:
type: integer
description: The gross amount of payment card/third party network transactions made to you in November. Value must be in cents.
minimum: 0
december:
type: integer
description: The gross amount of payment card/third party network transactions made to you in December. Value must be in cents.
minimum: 0
description: An object that contains the gross amount of transactions for each month. At least one month must have a value above zero. Values must be in cents.
Form1099StateTaxInfoSchema:
type: object
properties:
filingState:
$ref: '#/components/schemas/Form1099FilingStateEnum'
payeeStateId:
type: string
description: The payee's state identification number.
deprecated: true
payerStateId:
type: string
description: The payer's state identification number.
deprecated: true
stateTaxWithheld:
type: integer
description: The state tax withheld. Value must be in cents. Abound does not currently support `stateTaxWithheld` reporting, please contact us for more information.
minimum: 0
maximum: 0
required:
- filingState
Form1099AccountNumber:
type: string
maxLength: 20
description: The account number or other unique number assigned to distinguish an account. Abound will auto-generate this for you if left omitted.
MailingRequestSchema:
type: object
properties:
to:
$ref: '#/components/schemas/MailingRequestToSchema'
from:
$ref: '#/components/schemas/MailingRequestFromSchema'
required:
- from
- to
examples:
- to:
address: 1401 N Shoreline Blvd
address2: Suite 1
city: Mountain View
state: CA
postalCode: '94043'
country: US
name: Ada Lovelace
from:
address: 256 Byron Street
address2: Suite 32
city: Palo Alto
state: CA
postalCode: '94306'
country: US
name: Hooli
FilingYear:
type: integer
description: The filing year associated with this document.
securitySchemes:
bearerAuth:
type: http
scheme: bearer
description: Bearer token. The token is the concatenation of your Abound appId and appSecret separated by a period, e.g. `appId_xxx.appSecret_yyy`.