Skip to main content
Treasury Prime cannot advise on a customer’s tax liability. If you have any questions, it is recommended that you consult a tax professional. All third-party fees incurred in connection with generating and filing 1099-INTs on Treasury Prime’s platform will be passed through to the customer. This guide uses the following endpoints

To create and file a 1099-INT for an account

  1. Make sure all interest transactions for the account are correctly categorized
  2. Generate the 1099-INT
  3. Verify the 1099-INT is ready for filing
  4. File the 1099-INT

1. Make sure all interest transactions for the account are correctly categorized

To accurately generate the 1099-INTs, ensure that all relevant transactions are categorized as interest. For this, assign the category field on the transaction object as interest. Transactions can be assigned a category using a POST request to the /transaction/{id} endpoint.

2. Generate the 1099-INT

The /account/:account_id/tax_document endpoint can be used to generate the 1099-INT. The documents are generated asynchronously. A POST request to /account/{account_id}/tax_document will return a tax_document object in pending status.

Example request

curl --request POST \
     --url https://api.treasuryprime.com/account/acct_11j8m4cp2pyth/tax_document \
     --header 'content-type: application/json' \
     --data '
{
  "year": "2023",
  "type": "1099"
}
'

Example response

{
  "created_at": "2024-10-24T19:08:08Z",
  "updated_at": "2024-10-24T19:08:08Z",
  "account_id": "acct_11j8m4cp2pyth",
  "is_correction": false,
  "type": "1099",
  "year": "2023",
  "status": "pending",
  "skip_tin_verification": false,
  "id": "taxdoc_11khr0ve3vrg8"
}
Once the document has been generated the status of the tax_document object will be updated to ready_for_filing. Generating the 1099-INT does not automatically cause it to be filed with the appropriate tax authorities.

3. Verify the 1099-INT is ready for filing

To be notified of any changes in the status of a tax_document, register for the tax_document.update webhook. The status of the tax_document entry will update to ready_for_filing once the document has been generated. A GET call to /account/{account_id}/tax_document/{id} can be used to check the status of the document and obtain a URL where a draft of the document can be downloaded once it is ready.

Example request

curl --request GET \
     --url https://api.treasuryprime.com/account/acct_11j8m4cp2pyth/tax_document/taxdoc_11khr0ve3vrg8

Example response

{
  "account_id": "acct_11j8m4cp2pyth",
  "is_correction": false,
  "type": "1099",
  "updated_at": "2024-10-25T20:46:04Z",
  "year": "2023",
  "status": "filed",
  "skip_tin_verification": false,
  "id": "taxdoc_11khr0ve3vrg8",
  "url": "https://api.treasuryprime.com/account/acct_11j8m4cp2pyth/statement/file_11khr0vt3vrgb",
  "created_at": "2024-10-25T20:45:34Z"
}

4. File the 1099-INT

Once you’ve verified the information on the 1099-INT is correct, the 1099-INT can be filed by updating the status of the document to filing. This can be done with a PATCH request to /account/{account_id}/tax_document/{id}

Example request

curl --request PATCH \
     --url https://api.treasuryprime.com/account/acct_11j8m4cp2pyth/tax_document/taxdoc_11khr0ve3vrg8 \
     --header 'content-type: application/json' \
     --data '
{
  "status": "filing"
}
'

Example response

{
  "created_at": "2024-10-25T21:01:31Z",
  "updated_at": "2024-10-25T21:01:57Z",
  "account_id": "acct_11j8m4cp2pyth",
  "is_correction": false,
  "type": "1099",
  "year": "2023",
  "status": "filing",
  "skip_tin_verification": false,
  "id": "taxdoc_11khr0ve3vrg8"
  "url": null,
}
The 1099-INT will be filed asynchronously and the status of the document will update to filed once filing is complete. By default, TIN verifcation will be performed before filing the 1099-INT with the tax agency. TIN verification checks the TIN/name of the recipient against the IRS database. TIN verification typically takes 24-48 hours to complete and is initiated when you trigger filing of the 1099-INT. If TIN matching fails, the document is moved to error status without filing it with the tax agency. After TIN verification is successful the 1099-INT is filed with the tax agency. TIN verification can be skipped by setting skip_tin_verification to true when creating or filing the tax document. When the document moves to filed status the draft url on the document will be cleared. The url will be populated with a URL where the filed document can be downloaded once it is ready.

Tracking status of a filed 1099-INT

When a 1099-INT is filed it initially moves to filed status. Once we receive notification that the tax agency has accepted or rejected the 1099-INT we will update the status of the document. The 1099-INT will move to accepted status when accepted without issue, accepted_with_errors status if the document is accepted but we are notified of an issue, and error status if the document is rejected. If registered, a tax_document.update webhook will be sent when the status changes. A GET call to /account/{account_id}/tax_document/{id} can be used to check the status of the document.

Deleting an un-filed 1099-INT

If you find a problem with a 1099-INT that has not been filed yet the document can be deleted and generated again after the incorrect information has been corrected. The 1099-INT can be deleted with a DELETE request to /account/{account_id}/tax_document/{id}. Once a 1099-INT has been marked deleted it cannot be filed. After deletion a new 1099-INT can be generated for the account with a POST request to /account/{account_id}/tax_document.

Example request

curl --request DELETE \
     --url https://api.treasuryprime.com/account/acct_11j8m4cp2pyth/tax_document/taxdoc_11khr0ve3vrg8

Example response

{
	"created_at": "2024-10-24T19:08:08Z",
	"updated_at": "2024-10-24T19:13:51Z",
	"account_id": "acct_11j8m4cp2pyth",
	"is_correction": false,
	"type": "1099",
	"year": "2023",
  "skip_tin_verification": false,
	"status": "deleted",
	"id": "taxdoc_11khr0ve3vrg8"
}

1099-INT corrections

If a corrected 1099-INT is needed for an account, first correct the errant information used to generate the 1099. Make sure that the information on businesses and persons associated with the account is accurate and all relevant transactions are categorized as interest. Then the corrected 1099-INT can be created with a POST request to /account/{account_id}/tax_document. Set the is_correction parameter on that endpoint to true to indicate that the document being created is a correction. A new 1099-INT will be generated in pending status.

Example request

curl --request POST \
     --url https://api.treasuryprime.com/account/acct_11j8m4cp2pyth/tax_document \
     --header 'content-type: application/json' \
     --data '
{
  "year": "2023",
  "type": "1099",
  "is_correction": true
}
'

Example response

{
  "created_at": "2024-10-24T19:08:08Z",
  "updated_at": "2024-10-24T19:08:08Z",
  "account_id": "acct_11j8m4cp2pyth",
  "is_correction": true,
  "type": "1099",
  "year": "2023",
  "skip_tin_verification": false,
  "status": "pending",
  "id": "taxdoc_11khr0ve3vaf3"
}