Post
This method can be used to transmit payouts from the payer to each recipient. This API can be used as many times as needed within a tax year. TaxBandits will keep track of all transactions involving payouts from payers to beneficiaries. You can utilize our 1099 endpoints to generate and file Form 1099 for the recipients who are eligible to receive it at the conclusion of the tax year.
Here’s how Form 1099Transactions endpoint may be used:
- Call the Auth method to get the access token. This access token must be supplied in the request header as the ‘Bearer‘ token. Refer OAuth authentication API for more information on JWT authentication and how to integrate with the subsequent requests.
- The second step is to call the Form1099Transactions Post method [POST Form1099Transactions] with the following values.
- Business - Specify the payer from whom the Transactions were made.
Any one of the following unique identifiers of the business (Payer) is mandatory.
-
Payer Reference - This identifier is specified by the client while using the endpoint Business/RequestByUrl.
-
BusinessId - This ID is generated by Taxbandits and returned in the response of Business/Create and Business/RequestByUrl endpoints. Refer to the Business endpoint to learn more about creating a Business in TaxBandits and retrieving the Business Id.
-
TIN - Use Business TIN as an alternate identifier if you have not saved the Payer Reference or BusinessId.
-
Recipients - Specify the recipients to whom the Transactions were made. Any one of the following unique identifiers of the recipient is mandatory.
- PayeeRef - This identifier is specified by the client while using the endpoint FormW9/RequestByUrl. Refer Form W-9 endpoint to know more about Form W-9 in TaxBandits API.
- RecipientId - This ID is generated by Taxbandits and returned in the webhook responses of Form W-9 and TIN Matching endpoints. The RecipientId is also returned in the 1099 (MISC, NEC) create response.
- TIN - Use Business TIN as an alternate identifier if you have not saved the PayeeRef or RecipientId.
-
Transactions (Txns) - Transactions made by the payer to recipient.
- SequenceID - It is the unique identifier for each transactions.
- TxnDate - Date in which the transaction is made. This should be given in EST.
- TxnAmt - Transaction amount in dollars. Enter the full compensation(Including the withholding amount) that has to be paid to the recipient/affiliate.
- WHAmt - Amount withheld from the compensation paid to the recipient/affiliate.
Key Factors:
- A single submission can include transactions from numerous payers to multiple recipients.
- Transactions that have already been posted cannot be changed. Instead, use the Delete endpoint to remove an old submission and replace it with a new one.
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. |
TxnAmt | String | Transaction Amount. |
WHAmt | String | Optional Amount withheld. |
Request JSON
- Sample 1
- Sample 2
Post Transaction with BusinessId and RecipientId, with no errors.
{
"TxnData": [
{
"Business": {
"PayerRef": "Be8523",
"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/2020",
"TxnAmt": "178.25",
"WHAmt": "49.92"
},
{
"SequenceId": "2",
"TxnDate": "08/03/2020",
"TxnAmt": "108.26",
"WHAmt": "28.91"
},
{
"SequenceId": "3",
"TxnDate": "02/03/2020",
"TxnAmt": "138.26",
"WHAmt": "35.44"
}
]
}
]
}
]
}
Post Transaction with Invalid BusinessId and Date Format.
{
"TxnData": [
{
"Business": {
"PayerRef": null,
"BusinessId": "1231 12",
"TINType": null,
"TIN": null
},
"Recipients": [
{
"PayeeRef": "api6",
"RecipientId": "43931da4-ccec-4054-81b5-7ca7249f3891",
"TINType": null,
"TIN": null,
"Txns": [
{
"SequenceId": null,
"TxnDate": "23/11/2020",
"TxnAmt": "358.25",
"WHAmt": "44"
}
]
}
]
}
]
}
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. |
Response JSON
- Response 1
- Response 2
The transaction is successfully saved against the specified BusinessId and RecipientId, as there are no errors in the submitted data.
{
"SubmissionId": "7f54c788-5673-4cc2-afc2-d5933b54bc37",
"StatusMsg": "Transactions saved successfully",
"StatusTs": "2021-09-16 07:13:51 -04:00",
"Errors": null
}
The response will display an error message stating that the BusinessId and the specified date format are invalid.
{
"SubmissionId": null,
"StatusMsg": "Error occurred",
"StatusTs": null,
"Errors": [
{
"Id": "F73-100001",
"Name": "TxnData[1].Business.BusinessId",
"Message": "BusinessId is invalid"
},
{
"Id": "F73-100002",
"Name": "TxnData[1].Recipients[0].Txns[2].TxnDate",
"Message": "TxnDate must be in valid date format(MM/dd/yyyy)"
}
]
}