cURL
curl --request GET \
--url https://www.pierre.finance/tools/api/get-open-finance-connection-flow \
--header 'Authorization: Bearer <token>'import requests
url = "https://www.pierre.finance/tools/api/get-open-finance-connection-flow"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://www.pierre.finance/tools/api/get-open-finance-connection-flow', 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://www.pierre.finance/tools/api/get-open-finance-connection-flow",
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: 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://www.pierre.finance/tools/api/get-open-finance-connection-flow"
req, _ := http.NewRequest("GET", 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.get("https://www.pierre.finance/tools/api/get-open-finance-connection-flow")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://www.pierre.finance/tools/api/get-open-finance-connection-flow")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"status": "accepted",
"message": "WhatsApp flow sent successfully"
}
Open Finance
Get Open Finance Connection Flow
Inicia o fluxo de conexão Open Finance via WhatsApp. Para usuários Premium, envia um fluxo interativo com lista de bancos. Para usuários Basic/Pro, envia notificação de acesso limitado. Requer API key para autenticação e assinatura ativa.
GET
/
tools
/
api
/
get-open-finance-connection-flow
cURL
curl --request GET \
--url https://www.pierre.finance/tools/api/get-open-finance-connection-flow \
--header 'Authorization: Bearer <token>'import requests
url = "https://www.pierre.finance/tools/api/get-open-finance-connection-flow"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://www.pierre.finance/tools/api/get-open-finance-connection-flow', 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://www.pierre.finance/tools/api/get-open-finance-connection-flow",
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: 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://www.pierre.finance/tools/api/get-open-finance-connection-flow"
req, _ := http.NewRequest("GET", 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.get("https://www.pierre.finance/tools/api/get-open-finance-connection-flow")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://www.pierre.finance/tools/api/get-open-finance-connection-flow")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"status": "accepted",
"message": "WhatsApp flow sent successfully"
}
Este endpoint inicia o fluxo de conexão Open Finance via WhatsApp com funcionalidades baseadas no plano do usuário.
Descrição
O endpointGET /tools/api/get-open-finance-connection-flow permite que usuários conectem suas contas bancárias através do Open Finance diretamente pelo WhatsApp. A experiência varia conforme o plano:
- Premium: Fluxo interativo completo com lista de bancos disponíveis
- Basic/Pro: Notificação sobre limitações do plano e sugestão de upgrade
Autenticação
Este endpoint requer autenticação via Bearer token.string
required
Bearer token com a API key do usuário. Formato:
Bearer sk-your-api-key-hereParâmetros de Query
string
required
Parâmetro interno para indicar requisições via MCP. Use
s=s para requisições MCP.Resposta
Sucesso (200)
{
"status": "accepted",
"message": "WhatsApp flow sent successfully"
}
Erro de Dados Incompletos (400)
{
"error": "User phone number is required for WhatsApp operations"
}
Erro de Autenticação (401)
{
"error": "Invalid or inactive API key",
"message": "Please check your API key and try again",
"type": "invalid_api_key"
}
Campos da Resposta
string
required
Status da operação:
accepted indica que a mensagem foi aceita pelo WhatsAppstring
required
Mensagem descritiva sobre o status da operação
Exemplos de Uso
cURL
# Iniciar fluxo de conexão
curl -X GET 'https://www.pierre.finance/tools/api/get-open-finance-connection-flow' \
-H 'Authorization: Bearer sk-your-api-key-here'
JavaScript
const API_KEY = 'sk-your-api-key-here';
const BASE_URL = 'https://www.pierre.finance/tools/api';
async function initiateConnectionFlow() {
const response = await fetch(`${BASE_URL}/get-open-finance-connection-flow`, {
headers: {
'Authorization': `Bearer ${API_KEY}`,
'Content-Type': 'application/json'
}
});
return await response.json();
}
// Exemplo de uso
initiateConnectionFlow()
.then(result => console.log('Fluxo iniciado:', result.message))
.catch(error => console.error('Erro:', error));
Python
import requests
API_KEY = 'sk-your-api-key-here'
BASE_URL = 'https://www.pierre.finance/tools/api'
headers = {
'Authorization': f'Bearer {API_KEY}',
'Content-Type': 'application/json'
}
def initiate_connection_flow():
response = requests.get(f'{BASE_URL}/get-open-finance-connection-flow',
headers=headers)
return response.json()
# Exemplo de uso
try:
result = initiate_connection_flow()
print(f'Fluxo iniciado: {result["message"]}')
except Exception as error:
print(f'Erro: {error}')
Códigos de Status
200: Sucesso - Fluxo WhatsApp enviado400: Dados do usuário incompletos (número de telefone não cadastrado)401: Erro de autenticação ou assinatura500: Erro interno do servidor
Experiência por Plano
Plano Premium
Usuários Premium recebem um fluxo interativo completo via WhatsApp contendo:- Lista de bancos disponíveis para conexão
- Interface de seleção integrada
- Instruções passo a passo
- Conexão direta com as instituições financeiras
Planos Basic e Pro
Usuários Basic e Pro recebem uma notificação via WhatsApp informando:- Que a funcionalidade está disponível apenas no plano Premium
- Benefícios do upgrade para Premium
- Link para fazer upgrade
- Informações de contato para suporte
Requisitos
Configuração Necessária
Para usar este endpoint, o usuário precisa ter:- Número de telefone cadastrado e verificado
- WhatsApp Business API configurado para a conta
- Assinatura ativa (qualquer plano)
Bancos Suportados (Premium)
O fluxo Premium oferece conexão com os principais bancos brasileiros via Open Finance:- Nubank
- Itaú
- Bradesco
- Banco do Brasil
- Santander
- Caixa Econômica Federal
- Inter
- E outros participantes do Open Finance
Casos de Uso
Onboarding de Usuários
Integre este endpoint no fluxo de onboarding para facilitar a conexão de contas bancárias.Reconexão de Contas
Use quando contas precisarem ser reconectadas devido a vencimento de tokens ou mudança de credenciais.Adicionar Novas Contas
Permita que usuários adicionem novas contas bancárias a qualquer momento.Chatbot de Suporte
Integre em chatbots para permitir que usuários iniciem a conexão através de conversas.O fluxo é enviado via WhatsApp Business API. O usuário precisa ter um número de telefone válido cadastrado em sua conta Pierre Finance.
Para uma melhor experiência do usuário, certifique-se de que o número de telefone está cadastrado e verificado antes de chamar este endpoint.
Este endpoint dispara uma mensagem via WhatsApp. Evite chamadas excessivas para não gerar spam para o usuário. Implemente debouncing ou rate limiting no seu código.
Segurança
Open Finance
A conexão via Open Finance é segura e regulamentada pelo Banco Central do Brasil:- Autenticação forte (multi-fator)
- Criptografia end-to-end
- Consentimento explícito do usuário
- Prazo de validade dos acessos
- Auditoria completa de acessos
Privacidade
- Credenciais bancárias nunca são armazenadas
- Tokens de acesso são temporários e renováveis
- Dados são criptografados em repouso e em trânsito
- Conformidade com LGPD
Upgrade para Premium
Para acessar o fluxo completo de conexão:- Acesse pierre.finance/plans
- Selecione o plano Premium
- Complete o upgrade
- Reinicie o fluxo de conexão
- ✅ Conexão via Open Finance integrada
- ✅ Até 30 lembretes de pagamento
- ✅ Até 30 alertas de gastos
- ✅ Suporte prioritário
- ✅ Análises avançadas

