curl --request GET \
--url https://api.fintoc.com/v2/account_verifications/{id} \
--header 'Authorization: <api-key>'import requests
url = "https://api.fintoc.com/v2/account_verifications/{id}"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.fintoc.com/v2/account_verifications/{id}', 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.fintoc.com/v2/account_verifications/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <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"
"net/http"
"io"
)
func main() {
url := "https://api.fintoc.com/v2/account_verifications/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.fintoc.com/v2/account_verifications/{id}")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fintoc.com/v2/account_verifications/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "accv_2daFu0zqqDtZGJaSi2TGI2Mm1nN",
"object": "account_verification",
"counterparty": {
"account_number": "132969000000000190",
"account_type": "clabe",
"holder_id": "000000000",
"holder_name": "Test Customer 1",
"institution": {
"id": "40012",
"name": "BBVA Mexico",
"country": "mx"
}
},
"mode": "test",
"reason": null,
"receipt_url": null,
"status": "succeeded",
"transaction_date": "2026-03-01T12:00:00.000Z",
"transfer_id": "tr_2daFu0zqqDtZGJaSi2TGI2Mm1nN"
}{
"error": {
"type": "authentication_error",
"code": "invalid_api_key",
"message": "Invalid API Key: invalid-*oken"
}
}{
"error": {
"code": "invalid_account_verification",
"message": "Unable to get account verification: 'accv_2daFu0zqqDtZGJaSi2TGI2Mm1nN'. Action not available in your region"
}
}{
"error": {
"type": "invalid_request_error",
"code": "resource_not_found",
"message": "Account verification not found: accv_2daFu0zqqDtZGJaSi2TGI2Mm1nN"
}
}Get an account verification
Retrieves the details of an account verification by its ID.
curl --request GET \
--url https://api.fintoc.com/v2/account_verifications/{id} \
--header 'Authorization: <api-key>'import requests
url = "https://api.fintoc.com/v2/account_verifications/{id}"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.fintoc.com/v2/account_verifications/{id}', 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.fintoc.com/v2/account_verifications/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <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"
"net/http"
"io"
)
func main() {
url := "https://api.fintoc.com/v2/account_verifications/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.fintoc.com/v2/account_verifications/{id}")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fintoc.com/v2/account_verifications/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "accv_2daFu0zqqDtZGJaSi2TGI2Mm1nN",
"object": "account_verification",
"counterparty": {
"account_number": "132969000000000190",
"account_type": "clabe",
"holder_id": "000000000",
"holder_name": "Test Customer 1",
"institution": {
"id": "40012",
"name": "BBVA Mexico",
"country": "mx"
}
},
"mode": "test",
"reason": null,
"receipt_url": null,
"status": "succeeded",
"transaction_date": "2026-03-01T12:00:00.000Z",
"transfer_id": "tr_2daFu0zqqDtZGJaSi2TGI2Mm1nN"
}{
"error": {
"type": "authentication_error",
"code": "invalid_api_key",
"message": "Invalid API Key: invalid-*oken"
}
}{
"error": {
"code": "invalid_account_verification",
"message": "Unable to get account verification: 'accv_2daFu0zqqDtZGJaSi2TGI2Mm1nN'. Action not available in your region"
}
}{
"error": {
"type": "invalid_request_error",
"code": "resource_not_found",
"message": "Account verification not found: accv_2daFu0zqqDtZGJaSi2TGI2Mm1nN"
}
}Authorizations
Path Parameters
Unique identifier of the account verification to retrieve.
Response
The requested account verification.
Unique identifier of the account verification.
"accv_2daFu0zqqDtZGJaSi2TGI2Mm1nN"
Type of the object. Always account_verification.
Details of the verified counterparty account.
Show child attributes
Show child attributes
Whether the verification is live or test data.
live, test "test"
Reason code explaining why the verification failed, or null when the verification succeeded. transfer_fail means Fintoc could not send the verification transfer. cep_unavailable means the Mexican central bank (Banxico) had not yet published the payment receipt (CEP) when the verification timed out, so Fintoc could not confirm the account; you can retry the verification later. unknown means the reason could not be determined. In Mexico, the remaining codes mirror the transfer return_reason and report why the counterparty institution returned the verification transfer: non_existing_account, blocked_account, canceled_account, wrong_currency, account_not_from_receiving_institution, missing_information, wrong_payment_type, wrong_operation_type, account_type_does_not_correspond, invalid_character, exceeds_account_limit, exceeds_account_monthly_payments_limit, non_registered_mobile_phone, does_not_accept_non_banxico_payments, invalid_additional_information, missing_payment_instruction_due_to_balance_limit_reached, sender_client_protection_agreement, optional_payment_not_accepted_by_recipient_institution, codi_payment_without_quick_credit_notification, duplicated_tracking_key, and expired_sender_institution_certificate. In Chile, the codes mirror the transfer error_reason and report why the receiving bank rejected the verification transfer: recipient_account_disabled_for_tef, recipient_institution_timeout, recipient_institution_unavailable, invalid_recipient_account, recipient_account_closed, invalid_recipient_holder_id, invalid_holder_id_account_relationship, account_type_not_enabled, recipient_account_not_found, product_account_not_enabled, recipient_account_credit_restricted, recipient_institution_amount_limit_exceeded, system_amount_limit_exceeded, and unknown. In Chile, recipient_institution_timeout also covers transfers reversed because Fintoc could not determine whether the receiving bank approved the verification transfer. You can retry the verification. A reversal caused by a late bank approval or a failure to deliver the approval still results in a succeeded verification.
transfer_fail, cep_unavailable, non_existing_account, blocked_account, canceled_account, wrong_currency, account_not_from_receiving_institution, missing_information, wrong_payment_type, wrong_operation_type, account_type_does_not_correspond, invalid_character, exceeds_account_limit, exceeds_account_monthly_payments_limit, non_registered_mobile_phone, does_not_accept_non_banxico_payments, invalid_additional_information, missing_payment_instruction_due_to_balance_limit_reached, sender_client_protection_agreement, optional_payment_not_accepted_by_recipient_institution, codi_payment_without_quick_credit_notification, duplicated_tracking_key, expired_sender_institution_certificate, recipient_account_disabled_for_tef, recipient_institution_timeout, recipient_institution_unavailable, invalid_recipient_account, recipient_account_closed, invalid_recipient_holder_id, invalid_holder_id_account_relationship, account_type_not_enabled, recipient_account_not_found, product_account_not_enabled, recipient_account_credit_restricted, recipient_institution_amount_limit_exceeded, system_amount_limit_exceeded, unknown, null null
URL of the verification receipt, or null. Always null in Chile.
null
Status of the verification. One of pending (in progress), succeeded (verification completed), or failed (could not be completed). In Chile, succeeded means the receiving bank accepted the transfer with the Chilean tax ID (RUT) you provided. Some banks accept transfers without validating the RUT.
pending, succeeded, failed "pending"
Date and time when the verification was performed, as an ISO 8601 datetime in UTC, or null.
null
Identifier of the transfer issued to verify the account, or null.
"tr_2daFu0zqqDtZGJaSi2TGI2Mm1nN"
Was this page helpful?