Abound 1099-K API
The 1099-K API from Abound — 6 operation(s) for 1099-k.
The 1099-K API from Abound — 6 operation(s) for 1099-k.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/abound-1099-k-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Abound API - v4 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`.
Page:
type: integer
description: The specific page of results you're requesting. Responses are limited to a maximum of 100 records.
Form1099StatusEnum:
type: string
enum:
- CREATED
- FILED
- ACCEPTED
- REJECTED
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.
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
PayeeTinFingerprint:
type: string
description: Filters the list of documents based on the `payee.tinFingerprint` field.
TinVerificationStatusEnum:
type: string
enum:
- MATCH
- MISMATCH
- PENDING
description: The status of 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
IdempotencyKey:
type: string
description: The unique key used to identify a request that has already been processed.
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
DefaultErrorSchema:
type: object
properties:
message:
type: string
description: The error message associated with the response status code.
required:
- message
PayerTinFingerprint:
type: string
description: Filters the list of documents based on the `payer.tinFingerprint` field.
Form1099KTransactionsReportedClassificationSchema:
type: string
enum:
- PAYMENT_CARD
- THIRD_PARTY_NETWORK
description: The type of transactions reported.
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.
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
MailingStatusEnum:
type: string
enum:
- CREATED
- PROCESSING_FOR_DELIVERY
- IN_TRANSIT
- DELIVERED
- RETURNED_TO_SENDER
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
UserId:
type: string
description: The unique identifier for a single end-user of your application.
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.
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
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
DocumentId:
type: string
description: The unique identifier for an existing document.
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.
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.
MailingRequestToSchema:
allOf:
- $ref: '#/components/schemas/MailingNameSchema'
- $ref: '#/components/schemas/AddressSchema'
description: The mailing address of the recipient.
Form1099KFormFieldsSchema:
allOf:
- $ref: '#/components/schemas/Form1099FormFieldsBaseSchema'
- $ref: '#/components/schemas/Form1099KFormFieldsRequestSchema'
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
OkSchema:
type: object
additionalProperties: {}
Form1
# --- truncated at 32 KB (48 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/abound/refs/heads/main/openapi/abound-1099-k-api-openapi.yml