Post
Post
Use this method to record payment transactions made from a payer to one or more recipients. The recorded transactions can later be used to generate the appropriate Form 1099 filings for recipients who meet the IRS reporting thresholds.
Key considerations
-
A single submission can include transactions from multiple payers and recipients.
-
Each transaction must have a unique SequenceId.
-
Once transactions are submitted, they cannot be modified. To correct a transaction, delete the existing submission using the DELETE Form1099Transactions endpoint and submit a new request with the updated data.
How it works:
1. OAuth Authentication: Call the Auth method to get the access token. This access token must be supplied in the request header as the ‘Bearer‘ token. Refer to OAuth authentication for more information.
2. Call the [POST] Form1099Transactions: Once authenticated, call the POST Form1099Transactions endpoint to submit payout transactions made from a payer to recipients. The request must include the following details:
-
Business (Payer) – Specify the payer that issued the payments. You must include any one of the following identifiers:
- PayerRef – Unique identifier of the payer assigned by you
- BusinessId – Unique identifier generated by TaxBandits when creating the payer.
- TIN – The payer’s Taxpayer Identification Number.
-
Recipients – Specify the recipient who received the payment. You must include any one of the following identifiers:
- PayeeRef – Unique identifier of the recipient assigned by you
- RecipientId – Unique identifier generated by TaxBandits when creating the recipient.
- TIN – The recipient’s Taxpayer Identification Number.
-
Transactions (Txns) – Provide the payment details recorded between the payer and the recipient, including:
- SequenceId – Unique identifier for each transaction.
- TxnDate – Date when the transaction occurred (in EST).
- TxnAmt – Total compensation amount in USD, including any withholding.
- PaymentType – Type of payment. Supported values include: RENT, ROYALTY, OTHERINCOME, NEC.
- WHAmt – Amount withheld from the payment, if applicable.
POST Form1099Transactions Request Body
| Field | Type | Description |
|---|---|---|
| TxnData | object[] | This Object contains the Payer, Recipient and Transaction details. |
| Business | object | Payer Information. Either PayerRef, BusinessId or TIN is mandatory. |
| PayerRef | String | Unique identifier of the payer. Set by the client in the endpoint Business/RequestByUrl. |
| BusinessId | Guid | TaxBandits Unique Business Identifier. This ID is generated by TaxBandits after you create a business in your account using the Business endpoint. |
| TINType | String | TIN Type of the business.Allowed values"SSN", "EIN" |
| TIN | String | Taxpayer Identification Number. Use this as an alternative for BusinessId or PayerRef. Size Range: 9-11 |
| Recipients | object[] | Recipient Information. Either PayeeRef, RecipientId or TIN is mandatory. |
| PayeeRef | String | Unique identifier of the recipient. Set by the client. |
| RecipientId | Guid | Unique identifier of the recipient. |
| TINType | String | TIN Type of the recipient.Allowed values"SSN", "EIN" |
| TIN | String | Taxpayer Identification Number. Use this as an alternative for RecipientId or PayeeRef. Size Range: 9-11 |
| Txns | object[] | Collection of Transactions. |
| SequenceID | String | Optional The SequenceId will act as a unique identifier for the transaction. TaxBandits will throw an error when there is an API request with a SequenceId that was previously sent. The SequenceId is an optional node. It can be used to eliminate any chance of duplicate transaction submission. Size Range: ..50 |
| TxnDate | String | Date of transaction. In the format mm/dd/yyyy or mm-dd-yyyy. Transaction date should be given in EST. |
| TxnAmt | String | Transaction Amount. |
| PaymentType | String | Type of payment .Allowed values“RENT”, “ROYALTY”, “OTHERINCOME”, “NEC” |
| WHAmt | String | Optional Amount withheld. |
Response Body
| Field | Type | Description |
|---|---|---|
| SubmissionId | Guid | Unique identifier of a submission. |
| StatusMsg | String | Status Message. |
| StatusTs | String | Time Stamp of the status. |
| Errors | object | Shows error information. This object will list the errors in the request parameters. |
Request JSON
- Sample 1
Post Transaction with BusinessId and RecipientId, with no errors.
{
"TxnData": [
{
"Business": {
"PayerRef": "Payer001",
"BusinessId": "50e6e084-6c22-47a4-8a4e-018fd34eab42",
"TINType": null,
"TIN": null
},
"Recipients": [
{
"PayeeRef": "Pe123",
"RecipientId": "43931da4-ccec-4054-81b5-7ca7249f3891",
"TINType": null,
"TIN": null,
"Txns": [
{
"SequenceId": "1",
"TxnDate": "09/04/2025",
"PaymentType": "NEC",
"TxnAmt": "178.25",
"WHAmt": "49.92"
},
{
"SequenceId": "2",
"TxnDate": "09/04/2025",
"PaymentType": "RENT",
"TxnAmt": "1000.25",
"WHAmt": "200.00"
},
{
"SequenceId": "3",
"TxnDate": "09/04/2025",
"PaymentType": "ROYALTY",
"TxnAmt": "2500.00",
"WHAmt": "50.00"
}
]
}
]
}
]
}
Response JSON
- Response 1
The transaction is successfully saved against the specified BusinessId and RecipientId, as there are no errors in the submitted data.
{
"SubmissionId": "0d60dc9d-e0a2-4432-89fb-72a5591b884a",
"StatusMsg": "Transactions saved successfully",
"StatusTs": "2026-03-06 02:49:49 -05:00",
"Errors": null
}