Delete
Delete
This endpoint permanently removes one or more recipients from TaxBandits. This action cannot be undone. Once deleted, the recipient and its associated data are no longer accessible.
Key Points
- Multiple Deletion — Pass multiple
RecipientIdorPayeeRefin a single request to delete recipients in bulk. - IsForcedDelete — By default, deletion is blocked if the recipient has associated returns. Setting
IsForcedDeleteto TRUE removes this restriction. Use with caution. - Deactivate Instead — If you want to stop using a recipient without permanently deleting it, consider using the
Deactivateendpoint instead.
DELETE recipient/deleteRequest Params
| Field | Type | Description |
|---|---|---|
| RecipientId | GUID | TaxBandits-generated unique identifier for the recipient. |
| PayeeRef | String | Your unique identifier for the recipient. |
| IsForcedDelete | Boolean | Optional When TRUE, deletes the recipient even if tax forms are associated with it. |
Response Body
| Field | Type | Description |
|---|---|---|
| RecipientId | GUID | TaxBandits-generated unique identifier for the recipient. |
| PayeeRef | String | Your unique identifier for the recipient. |
| Status | String | Status of the operation. |
| StatusTs | String | Date and time the operation was completed. |
| Errors | Object [] | Validation error details. |
| Id | String | Validation error code. |
| Name | String | Name of the validation rule that failed. |
| Message | String | Description of the error. |
Payload

Go Lang
Node.js
Python
.NET C#

Ruby
Java

cURL
Request Params
| Sample | Description | Action |
|---|---|---|
| Sample 1 | Delete a business using RecipientId, PayeeRef, and force delete flag. |
Sample 1
recipient/delete?recipientId=b50601fd-90b8-4e4b-86ce-b87d2b11aa5c&payeeref=PAYEE774&isforceddelete=true
Response Json
| Sample | Description | Action |
|---|---|---|
| 200 | Success Response - This is a sample response for successful API requests. | |
| 400 | Bad Request Response - You'll get the below response when your API requests contain any validation errors. | |
| 401 | Unauthorized Response - You'll get the below response when your API requests don't contain valid authentication credentials. |
Response: 200
{
"RecipientId": "9ad0c924-6469-4030-a1be-0a08248a1066",
"PayeeRef": "DAsdcccdev1",
"Status": "DELETED",
"StatusTs": "2026-04-29 10:10:40 -04:00",
"Errors": null
}
package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "<APIURL>/v2.0.0/recipient/delete?recipientId=b50601fd-90b8-4e4b-86ce-b87d2b11aa5c&payeeref=PAYEE774&isforceddelete=true"
method := "DELETE"
client := &http.Client {
}
req, err := http.NewRequest(method, url, nil)
if err != nil {
fmt.Println(err)
return
}
req.Header.Add("Authorization", "<ACCESS_TOKEN>")
res, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
body, err := io.ReadAll(res.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}
const axios = require('axios');
let config = {
method: 'delete',
maxBodyLength: Infinity,
url: '<APIURL>/v2.0.0/recipient/delete?recipientId=b50601fd-90b8-4e4b-86ce-b87d2b11aa5c&payeeref=PAYEE774&isforceddelete=true',
headers: {
'Authorization': '<ACCESS_TOKEN>'
}
};
axios.request(config)
.then((response) => {
console.log(JSON.stringify(response.data));
})
.catch((error) => {
console.log(error);
});
import http.client
conn = http.client.HTTPSConnection("<APIURL>")
payload = ''
headers = {
'Authorization': '<ACCESS_TOKEN>'
}
conn.request("DELETE", "/v2.0.0/recipient/delete?recipientId=b50601fd-90b8-4e4b-86ce-b87d2b11aa5c&payeeref=PAYEE774&isforceddelete=true", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Delete, "<APIURL>/v2.0.0/recipient/delete?recipientId=b50601fd-90b8-4e4b-86ce-b87d2b11aa5c&payeeref=PAYEE774&isforceddelete=true");
request.Headers.Add("Authorization", "<ACCESS_TOKEN>");
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
require "uri"
require "net/http"
url = URI("<APIURL>/v2.0.0/recipient/delete?recipientId=b50601fd-90b8-4e4b-86ce-b87d2b11aa5c&payeeref=PAYEE774&isforceddelete=true")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Delete.new(url)
request["Authorization"] = "<ACCESS_TOKEN>"
response = http.request(request)
puts response.read_body
OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("text/plain");
RequestBody body = RequestBody.create(mediaType, "");
Request request = new Request.Builder()
.url("<APIURL>/v2.0.0/recipient/delete?recipientId=b50601fd-90b8-4e4b-86ce-b87d2b11aa5c&payeeref=PAYEE774&isforceddelete=true")
.method("DELETE", body)
.addHeader("Authorization", "<ACCESS_TOKEN>")
.build();
Response response = client.newCall(request).execute();
curl --location --request DELETE '<APIURL>/v2.0.0/recipient/delete?recipientId=b50601fd-90b8-4e4b-86ce-b87d2b11aa5c&payeeref=PAYEE774&isforceddelete=true' --header 'Authorization: <ACCESS_TOKEN>'