# Requires: npm i -g @infinite_dev/cli && export INFINITE_API_KEY=sk_sandbox_...
# Escape hatch for any endpoint: infinite api <METHOD> <path>
infinite api POST /v1/fixed-routes/vba_abc123/deactivateDeactivate a fixed route (vba_abc123).
# Infinite MCP is read-only for this endpoint — use a dedicated MCP tool when one exists, otherwise run the CLI tab.import requests
url = "https://sandbox.api.infinite.dev/v1/fixed-routes/{id}/deactivate"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://sandbox.api.infinite.dev/v1/fixed-routes/{id}/deactivate', 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://sandbox.api.infinite.dev/v1/fixed-routes/{id}/deactivate",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://sandbox.api.infinite.dev/v1/fixed-routes/{id}/deactivate"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://sandbox.api.infinite.dev/v1/fixed-routes/{id}/deactivate")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox.api.infinite.dev/v1/fixed-routes/{id}/deactivate")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "vba_abc123",
"customerId": "cus_abc123",
"type": "FIAT_TO_CRYPTO",
"status": "ACTIVE",
"enabled": true,
"sourceAccount": {
"id": "vba_abc123",
"type": "VIRTUAL_BANK",
"metadata": {
"nickname": "Main Checking Account",
"purpose": "Business operations",
"tags": [
"primary",
"operations"
]
},
"depositInstructions": {
"accountNumber": "1234567890",
"bankName": "JPMorgan Chase Bank",
"bankAddress": {
"addressLine1": "123 Main Street",
"addressLine2": "Apt 4B",
"city": "San Francisco",
"state": "CA",
"postalCode": "94102",
"country": "US"
},
"routingNumber": "021000021",
"iban": "GB82WEST12345698765432",
"swiftBic": "CHASUS33",
"bankCountryCode": "US",
"reference": "REF-123456",
"depositMessage": "INV-2026-0001",
"beneficiaryName": "John Doe",
"beneficiaryAddress": {
"addressLine1": "123 Main Street",
"addressLine2": "Apt 4B",
"city": "San Francisco",
"state": "CA",
"postalCode": "94102",
"country": "US"
}
},
"sourceCurrency": "USD",
"sourceRail": "ACH",
"sourceRails": [
"ACH",
"WIRE"
],
"walletAddress": "0x742d35Cc6529Cf6c6D06E4C8a4c07583F5C6C2d8",
"addressType": "EVM",
"chains": [
"ETHEREUM",
"BASE"
],
"walletType": "TREASURY"
},
"sweepTargetAccountId": "ewa_abc123",
"sharesBalanceAccountCoordinates": false,
"payinCloseable": false,
"payinClosed": false,
"sourceClosed": false,
"canReenable": true,
"depositsForwardWhileDisabled": false,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"depositMatching": "DEDICATED",
"metadata": {
"nickname": "Main Checking Account",
"purpose": "Business operations",
"tags": [
"primary",
"operations"
]
},
"destinationCurrency": "USDC",
"destinationRail": "BASE",
"previousSweepTargetAccountId": "ewa_previous",
"previousDestinationRail": "ETHEREUM",
"previousDestinationCurrency": "USDT",
"sweepTargetAccount": {
"id": "ewa_abc123",
"type": "EXTERNAL_WALLET",
"isThirdParty": false,
"metadata": {
"nickname": "Main Checking Account",
"purpose": "Business operations",
"tags": [
"primary",
"operations"
]
},
"walletAddress": "0x742d35Cc6529Cf6c6D06E4C8a4c07583F5C6C2d8",
"addressType": "EVM",
"chains": [
"ETHEREUM",
"BASE"
],
"accountNumber": "****7890",
"routingNumber": "021000021",
"bankName": "Bank of America"
},
"developerFeeFixed": "100000",
"developerFeePercent": 0.01,
"refundAccountId": "inw_abc123",
"correspondentBank": {
"name": "<string>",
"swiftCode": "IRVTUS3NXXX",
"accountNumber": "9876543210"
},
"allowedSenderBanks": [
{
"bankName": "JPMorgan Chase",
"routingNumber": "021000021",
"swiftBic": "CHASUS33"
}
],
"documentIds": [
"<string>"
],
"minimumAmount": {
"currency": "USD",
"exponent": 2,
"value": "12345",
"displayValue": "123.45"
}
}Deactivate a fixed route
Closes the deposit account when that is supported, then disables the route. A wallet address cannot be revoked, and some bank deposit accounts cannot be closed: those routes are disabled only, and a later payment can still arrive. Deposits on a disabled route are not auto-swept and are not returned, unless depositsForwardWhileDisabled is true: that deposit address keeps paying the current destination. In-flight transfers keep the destination they were created with. Refuses while a balance deposit into the account is still open, while another account still uses the same deposit account, or while that deposit account still holds a balance.
# Requires: npm i -g @infinite_dev/cli && export INFINITE_API_KEY=sk_sandbox_...
# Escape hatch for any endpoint: infinite api <METHOD> <path>
infinite api POST /v1/fixed-routes/vba_abc123/deactivateDeactivate a fixed route (vba_abc123).
# Infinite MCP is read-only for this endpoint — use a dedicated MCP tool when one exists, otherwise run the CLI tab.import requests
url = "https://sandbox.api.infinite.dev/v1/fixed-routes/{id}/deactivate"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://sandbox.api.infinite.dev/v1/fixed-routes/{id}/deactivate', 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://sandbox.api.infinite.dev/v1/fixed-routes/{id}/deactivate",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://sandbox.api.infinite.dev/v1/fixed-routes/{id}/deactivate"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://sandbox.api.infinite.dev/v1/fixed-routes/{id}/deactivate")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox.api.infinite.dev/v1/fixed-routes/{id}/deactivate")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "vba_abc123",
"customerId": "cus_abc123",
"type": "FIAT_TO_CRYPTO",
"status": "ACTIVE",
"enabled": true,
"sourceAccount": {
"id": "vba_abc123",
"type": "VIRTUAL_BANK",
"metadata": {
"nickname": "Main Checking Account",
"purpose": "Business operations",
"tags": [
"primary",
"operations"
]
},
"depositInstructions": {
"accountNumber": "1234567890",
"bankName": "JPMorgan Chase Bank",
"bankAddress": {
"addressLine1": "123 Main Street",
"addressLine2": "Apt 4B",
"city": "San Francisco",
"state": "CA",
"postalCode": "94102",
"country": "US"
},
"routingNumber": "021000021",
"iban": "GB82WEST12345698765432",
"swiftBic": "CHASUS33",
"bankCountryCode": "US",
"reference": "REF-123456",
"depositMessage": "INV-2026-0001",
"beneficiaryName": "John Doe",
"beneficiaryAddress": {
"addressLine1": "123 Main Street",
"addressLine2": "Apt 4B",
"city": "San Francisco",
"state": "CA",
"postalCode": "94102",
"country": "US"
}
},
"sourceCurrency": "USD",
"sourceRail": "ACH",
"sourceRails": [
"ACH",
"WIRE"
],
"walletAddress": "0x742d35Cc6529Cf6c6D06E4C8a4c07583F5C6C2d8",
"addressType": "EVM",
"chains": [
"ETHEREUM",
"BASE"
],
"walletType": "TREASURY"
},
"sweepTargetAccountId": "ewa_abc123",
"sharesBalanceAccountCoordinates": false,
"payinCloseable": false,
"payinClosed": false,
"sourceClosed": false,
"canReenable": true,
"depositsForwardWhileDisabled": false,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"depositMatching": "DEDICATED",
"metadata": {
"nickname": "Main Checking Account",
"purpose": "Business operations",
"tags": [
"primary",
"operations"
]
},
"destinationCurrency": "USDC",
"destinationRail": "BASE",
"previousSweepTargetAccountId": "ewa_previous",
"previousDestinationRail": "ETHEREUM",
"previousDestinationCurrency": "USDT",
"sweepTargetAccount": {
"id": "ewa_abc123",
"type": "EXTERNAL_WALLET",
"isThirdParty": false,
"metadata": {
"nickname": "Main Checking Account",
"purpose": "Business operations",
"tags": [
"primary",
"operations"
]
},
"walletAddress": "0x742d35Cc6529Cf6c6D06E4C8a4c07583F5C6C2d8",
"addressType": "EVM",
"chains": [
"ETHEREUM",
"BASE"
],
"accountNumber": "****7890",
"routingNumber": "021000021",
"bankName": "Bank of America"
},
"developerFeeFixed": "100000",
"developerFeePercent": 0.01,
"refundAccountId": "inw_abc123",
"correspondentBank": {
"name": "<string>",
"swiftCode": "IRVTUS3NXXX",
"accountNumber": "9876543210"
},
"allowedSenderBanks": [
{
"bankName": "JPMorgan Chase",
"routingNumber": "021000021",
"swiftBic": "CHASUS33"
}
],
"documentIds": [
"<string>"
],
"minimumAmount": {
"currency": "USD",
"exponent": 2,
"value": "12345",
"displayValue": "123.45"
}
}Response
Fixed route deactivated
Whether this route's deposit coordinates are shared with a USD balance account. When true, the route and a balance account are mutually exclusive for the customer — one must be closed/disabled before the other can be created or re-enabled. Only bank pay-in routes on the balance-account provider qualify (ACH, WIRE, or SWIFT); crypto routes and payout routes are always false.
false
How incoming payments are matched to this deposit account. DEDICATED issues a unique account number and the sender does not include a payment reference. REFERENCE uses a shared account number and the sender must include sourceAccount.depositInstructions.reference on the payment (wire memo or ACH addenda). Omit to keep the default for the requested rails. USD ACH, wire, and SWIFT bank pay-ins only.
DEDICATED, REFERENCE Was this page helpful?