Crea y consulta un informe de fraude e identidad.
curl --request POST \
--url https://api.qbank.cl/platform/v1/qscore/fraud/reports \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"country": "CL",
"doc_id": "76.123.456-0",
"subject_type": "company",
"purpose": "identity_verification",
"lang": "en",
"idempotency_key": "fraud-check-2026-09-06-001"
}
'import requests
url = "https://api.qbank.cl/platform/v1/qscore/fraud/reports"
payload = {
"country": "CL",
"doc_id": "76.123.456-0",
"subject_type": "company",
"purpose": "identity_verification",
"lang": "en",
"idempotency_key": "fraud-check-2026-09-06-001"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
country: 'CL',
doc_id: '76.123.456-0',
subject_type: 'company',
purpose: 'identity_verification',
lang: 'en',
idempotency_key: 'fraud-check-2026-09-06-001'
})
};
fetch('https://api.qbank.cl/platform/v1/qscore/fraud/reports', 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.qbank.cl/platform/v1/qscore/fraud/reports",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'country' => 'CL',
'doc_id' => '76.123.456-0',
'subject_type' => 'company',
'purpose' => 'identity_verification',
'lang' => 'en',
'idempotency_key' => 'fraud-check-2026-09-06-001'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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.qbank.cl/platform/v1/qscore/fraud/reports"
payload := strings.NewReader("{\n \"country\": \"CL\",\n \"doc_id\": \"76.123.456-0\",\n \"subject_type\": \"company\",\n \"purpose\": \"identity_verification\",\n \"lang\": \"en\",\n \"idempotency_key\": \"fraud-check-2026-09-06-001\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.post("https://api.qbank.cl/platform/v1/qscore/fraud/reports")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"country\": \"CL\",\n \"doc_id\": \"76.123.456-0\",\n \"subject_type\": \"company\",\n \"purpose\": \"identity_verification\",\n \"lang\": \"en\",\n \"idempotency_key\": \"fraud-check-2026-09-06-001\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.qbank.cl/platform/v1/qscore/fraud/reports")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"country\": \"CL\",\n \"doc_id\": \"76.123.456-0\",\n \"subject_type\": \"company\",\n \"purpose\": \"identity_verification\",\n \"lang\": \"en\",\n \"idempotency_key\": \"fraud-check-2026-09-06-001\"\n}"
response = http.request(request)
puts response.read_body{
"report_id": "9f1c2d3e-4a5b-4c6d-8e7f-0a1b2c3d4e5f",
"kind": "qscore_fraud",
"subject_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"country": "CL",
"doc_id": "76123456-0",
"subject_type": "company",
"purpose": "identity_verification",
"status": "ready",
"model_version": "qscore-fraud-v1",
"lang": "en",
"score": 280,
"band": "B",
"reason_codes": [
{
"code": "NEW_SUBJECT",
"direction": "negative",
"weight": "high"
}
],
"verify_code": "F9f1c2d3e4a5b6c7d8e9f00112233445566778899aabbccddeeff0011223344",
"verify_url": "https://business.cbpayapp.com/verify/qscore-fraud/F9f1c2d3e4a5b6c7d8e9f00112233445566778899aabbccddeeff0011223344",
"pdf_url": "/v1/qscore/fraud/reports/9f1c2d3e-4a5b-4c6d-8e7f-0a1b2c3d4e5f/pdf",
"created_at": "2026-09-06T15:04:12Z"
}{
"error": "invalid_purpose",
"message": "purpose must be one of fraud_prevention, identity_verification, onboarding or other"
}{
"error": "service_disabled",
"message": "the fraud and identity service is not enabled for your account"
}{
"error": "generation_failed",
"message": "the fraud report could not be generated"
}Crea y consulta un informe de fraude e identidad.
POST
/
v1
/
qscore
/
fraud
/
reports
Crea y consulta un informe de fraude e identidad.
curl --request POST \
--url https://api.qbank.cl/platform/v1/qscore/fraud/reports \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"country": "CL",
"doc_id": "76.123.456-0",
"subject_type": "company",
"purpose": "identity_verification",
"lang": "en",
"idempotency_key": "fraud-check-2026-09-06-001"
}
'import requests
url = "https://api.qbank.cl/platform/v1/qscore/fraud/reports"
payload = {
"country": "CL",
"doc_id": "76.123.456-0",
"subject_type": "company",
"purpose": "identity_verification",
"lang": "en",
"idempotency_key": "fraud-check-2026-09-06-001"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
country: 'CL',
doc_id: '76.123.456-0',
subject_type: 'company',
purpose: 'identity_verification',
lang: 'en',
idempotency_key: 'fraud-check-2026-09-06-001'
})
};
fetch('https://api.qbank.cl/platform/v1/qscore/fraud/reports', 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.qbank.cl/platform/v1/qscore/fraud/reports",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'country' => 'CL',
'doc_id' => '76.123.456-0',
'subject_type' => 'company',
'purpose' => 'identity_verification',
'lang' => 'en',
'idempotency_key' => 'fraud-check-2026-09-06-001'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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.qbank.cl/platform/v1/qscore/fraud/reports"
payload := strings.NewReader("{\n \"country\": \"CL\",\n \"doc_id\": \"76.123.456-0\",\n \"subject_type\": \"company\",\n \"purpose\": \"identity_verification\",\n \"lang\": \"en\",\n \"idempotency_key\": \"fraud-check-2026-09-06-001\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.post("https://api.qbank.cl/platform/v1/qscore/fraud/reports")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"country\": \"CL\",\n \"doc_id\": \"76.123.456-0\",\n \"subject_type\": \"company\",\n \"purpose\": \"identity_verification\",\n \"lang\": \"en\",\n \"idempotency_key\": \"fraud-check-2026-09-06-001\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.qbank.cl/platform/v1/qscore/fraud/reports")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"country\": \"CL\",\n \"doc_id\": \"76.123.456-0\",\n \"subject_type\": \"company\",\n \"purpose\": \"identity_verification\",\n \"lang\": \"en\",\n \"idempotency_key\": \"fraud-check-2026-09-06-001\"\n}"
response = http.request(request)
puts response.read_body{
"report_id": "9f1c2d3e-4a5b-4c6d-8e7f-0a1b2c3d4e5f",
"kind": "qscore_fraud",
"subject_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"country": "CL",
"doc_id": "76123456-0",
"subject_type": "company",
"purpose": "identity_verification",
"status": "ready",
"model_version": "qscore-fraud-v1",
"lang": "en",
"score": 280,
"band": "B",
"reason_codes": [
{
"code": "NEW_SUBJECT",
"direction": "negative",
"weight": "high"
}
],
"verify_code": "F9f1c2d3e4a5b6c7d8e9f00112233445566778899aabbccddeeff0011223344",
"verify_url": "https://business.cbpayapp.com/verify/qscore-fraud/F9f1c2d3e4a5b6c7d8e9f00112233445566778899aabbccddeeff0011223344",
"pdf_url": "/v1/qscore/fraud/reports/9f1c2d3e-4a5b-4c6d-8e7f-0a1b2c3d4e5f/pdf",
"created_at": "2026-09-06T15:04:12Z"
}{
"error": "invalid_purpose",
"message": "purpose must be one of fraud_prevention, identity_verification, onboarding or other"
}{
"error": "service_disabled",
"message": "the fraud and identity service is not enabled for your account"
}{
"error": "generation_failed",
"message": "the fraud report could not be generated"
}Autorizaciones
JWT de sesión (de register/login) o llave de API (pk_...).
X-API-Key: <token> se acepta como header alternativo.
Encabezados
Use this header when the body field is omitted.
Cuerpo
application/json
Ejemplo:
"CL"
Ejemplo:
"76.123.456-0"
Opciones disponibles:
fraud_prevention, identity_verification, onboarding, other Opciones disponibles:
person, company Opciones disponibles:
en, es, zh Respuesta
Report ready or an idempotent replay.
Última modificación el 6 de septiembre de 2026