Update ACH Authorization Revocation
curl --request PUT \
--url https://api.finosu.com/customers/{customerId}/payment-methods/{paymentMethodId}/ach-authorization \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"revokeAuthorization": true
}
'import requests
url = "https://api.finosu.com/customers/{customerId}/payment-methods/{paymentMethodId}/ach-authorization"
payload = { "revokeAuthorization": True }
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({revokeAuthorization: true})
};
fetch('https://api.finosu.com/customers/{customerId}/payment-methods/{paymentMethodId}/ach-authorization', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.finosu.com/customers/{customerId}/payment-methods/{paymentMethodId}/ach-authorization",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'revokeAuthorization' => true
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.finosu.com/customers/{customerId}/payment-methods/{paymentMethodId}/ach-authorization"
payload := strings.NewReader("{\n \"revokeAuthorization\": true\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://api.finosu.com/customers/{customerId}/payment-methods/{paymentMethodId}/ach-authorization")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"revokeAuthorization\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.finosu.com/customers/{customerId}/payment-methods/{paymentMethodId}/ach-authorization")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"revokeAuthorization\": true\n}"
response = http.request(request)
puts response.read_body{
"customerId": "<string>",
"paymentMethodId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"revokeAuthorization": true
}Customers
Update ACH Authorization Revocation
Updates revocation on one exact tenant-owned bank payment method. true revokes the current authorization. false never restores revoked consent; a new authorization must be captured.
PUT
/
customers
/
{customerId}
/
payment-methods
/
{paymentMethodId}
/
ach-authorization
Update ACH Authorization Revocation
curl --request PUT \
--url https://api.finosu.com/customers/{customerId}/payment-methods/{paymentMethodId}/ach-authorization \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"revokeAuthorization": true
}
'import requests
url = "https://api.finosu.com/customers/{customerId}/payment-methods/{paymentMethodId}/ach-authorization"
payload = { "revokeAuthorization": True }
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({revokeAuthorization: true})
};
fetch('https://api.finosu.com/customers/{customerId}/payment-methods/{paymentMethodId}/ach-authorization', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.finosu.com/customers/{customerId}/payment-methods/{paymentMethodId}/ach-authorization",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'revokeAuthorization' => true
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.finosu.com/customers/{customerId}/payment-methods/{paymentMethodId}/ach-authorization"
payload := strings.NewReader("{\n \"revokeAuthorization\": true\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("X-API-Key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://api.finosu.com/customers/{customerId}/payment-methods/{paymentMethodId}/ach-authorization")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"revokeAuthorization\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.finosu.com/customers/{customerId}/payment-methods/{paymentMethodId}/ach-authorization")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"revokeAuthorization\": true\n}"
response = http.request(request)
puts response.read_body{
"customerId": "<string>",
"paymentMethodId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"revokeAuthorization": true
}Updates the revocation status for one exact bank-account payment method owned by an
already-shared customer.
customerId is your external customer reference;
paymentMethodId is the payment-method UUID returned by this API. Both are checked against
the company identified by the API key.
{
"revokeAuthorization": true
}
true revokes the current ACH authorization and removes the payment method’s default status.
Repeating true is idempotent. Omitted or null makes no change.
false cannot restore consent. It is an idempotent no-op while the method still has an active
authorization, but returns 422 after revocation. Capture a new customer authorization through
the normal authorization workflow to clear the revoked-authorization status. A payment method
with no active or historical ACH authorization returns 409 for true.
This endpoint accepts bank-account payment methods only. It never applies the revocation to a
different payment method or to every method on the customer.Authorizations
Path Parameters
External customer reference ID
Payment-method UUID returned by this API
Body
application/json
Partial revocation update for an exact ACH payment method.
true revokes the active authorization. false is a no-op only while authorization remains active; it cannot restore revoked consent. Omitted or null makes no change.