curl --request GET \
--url https://api.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/boletoimport requests
url = "https://api.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/boleto"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/boleto', 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.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/boleto",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$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.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/boleto"
req, _ := http.NewRequest("GET", url, nil)
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.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/boleto")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/boleto")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"items": [
{
"_id": "6726b1c2b4d3e80012c9a4a1",
"environment": "LIVE",
"realmId": "f495ff0c-ab54-4f99-8e92-ca8682e4de9b",
"organizationId": "c4bd3f21-dfbd-44e8-8055-68ba15bed410",
"accountId": "66f2a1c7b4d3e80012c9a0b4",
"walletId": "66f2a3d1b4d3e80012c9a0d2",
"barcode": "34194162600001500001790010104351004791020150",
"status": "REQUESTED",
"payee": "Gráfica Aurora Ltda",
"payeeDocument": "12345678000195",
"payer": "Acme Comércio Ltda",
"payerDocument": "98765432000110",
"txnCurrency": "986",
"txnOriginalAmount": 150000,
"txnDiscountAmount": 0,
"txnFineAmount": 0,
"txnInterestAmount": 0,
"txnUpdatedAmount": 150000,
"txnMinAmount": 0,
"txnMaxAmount": 0,
"processingType": "INSTANT",
"confirmedAmount": 0,
"createdAt": "2026-11-02T13:10:22.000Z",
"updatedAt": "2026-11-02T13:10:22.000Z",
"type": "GENERIC",
"issuer": "Itaú Unibanco S.A.",
"dueDate": "2026-11-10T00:00:00.000Z",
"expiresAt": "2026-12-10T00:00:00.000Z",
"settlesAt": "2026-11-02T00:00:00.000Z",
"receipt": {
"authentication": null,
"authenticationApi": null,
"receipt": null
},
"external": {
"boletoId": "2f8d6c1a-4b3e-4a5d-9c7b-1e0f2a3b4c5d",
"platformUserId": "e3553bc1-5e20-4e17-b22a-a796fda0aa99"
},
"pendingConfirmation": {
"amount": 150000,
"category": "FLEX_INTERNATIONAL",
"description": "Folders da campanha de novembro"
},
"customFields": {
"cost-center": "CC-1020"
},
"requester": {
"userId": "e3553bc1-5e20-4e17-b22a-a796fda0aa99",
"name": "Mariana Costa",
"email": "mariana.costa@acme.com.br"
},
"scheduledAt": "2026-11-10T00:00:00.000Z",
"scheduledTimeZone": "America/Sao_Paulo",
"scheduleId": "8c1d2e3f-4a5b-4c6d-8e7f-9a0b1c2d3e4f",
"policyRequestId": "4d2c1b0a-9f8e-4d7c-8b6a-5f4e3d2c1b0a",
"approvalExpiresAt": "2026-11-03T00:00:00.000Z",
"autoResolutionRequestedAt": "2026-11-02T13:12:05.000Z",
"autoResolutionInFlightUntil": "2026-11-02T13:13:35.000Z",
"confirmedAt": "2026-11-02T13:12:07.000Z",
"confirmedBalanceCategory": "FLEX_INTERNATIONAL",
"failReason": "INSUFFICIENT_FUNDS",
"canceledAt": "2026-11-02T15:40:00.000Z",
"refundedAt": "2026-11-05T10:30:00.000Z",
"__v": 0
}
],
"next": "NjcyNmIxYzJiNGQzZTgwMDEyYzlhNGEx"
}{
"traceId": "1-68ee2a1b-3c4d5e6f7a8b9c0d1e2f3a4b",
"code": "ACCOUNT_NOT_FOUND",
"origin": "BANKING",
"message": "Account not found"
}{
"traceId": "1-68ee2a1b-3c4d5e6f7a8b9c0d1e2f3a4b",
"code": "BAD_REQUEST",
"origin": "BANKING",
"message": "Bad Request: Your request is invalid or incomplete. Please make sure you are requesting with the right fields.",
"fields": [
{
"field": "limit",
"message": "Invalid input: expected integer, received string",
"code": "LIMIT_TYPE_ERROR"
}
]
}List a wallet's boleto payments
Lists the boleto payments made from the wallet, newest first.
curl --request GET \
--url https://api.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/boletoimport requests
url = "https://api.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/boleto"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/boleto', 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.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/boleto",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$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.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/boleto"
req, _ := http.NewRequest("GET", url, nil)
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.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/boleto")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/boleto")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"items": [
{
"_id": "6726b1c2b4d3e80012c9a4a1",
"environment": "LIVE",
"realmId": "f495ff0c-ab54-4f99-8e92-ca8682e4de9b",
"organizationId": "c4bd3f21-dfbd-44e8-8055-68ba15bed410",
"accountId": "66f2a1c7b4d3e80012c9a0b4",
"walletId": "66f2a3d1b4d3e80012c9a0d2",
"barcode": "34194162600001500001790010104351004791020150",
"status": "REQUESTED",
"payee": "Gráfica Aurora Ltda",
"payeeDocument": "12345678000195",
"payer": "Acme Comércio Ltda",
"payerDocument": "98765432000110",
"txnCurrency": "986",
"txnOriginalAmount": 150000,
"txnDiscountAmount": 0,
"txnFineAmount": 0,
"txnInterestAmount": 0,
"txnUpdatedAmount": 150000,
"txnMinAmount": 0,
"txnMaxAmount": 0,
"processingType": "INSTANT",
"confirmedAmount": 0,
"createdAt": "2026-11-02T13:10:22.000Z",
"updatedAt": "2026-11-02T13:10:22.000Z",
"type": "GENERIC",
"issuer": "Itaú Unibanco S.A.",
"dueDate": "2026-11-10T00:00:00.000Z",
"expiresAt": "2026-12-10T00:00:00.000Z",
"settlesAt": "2026-11-02T00:00:00.000Z",
"receipt": {
"authentication": null,
"authenticationApi": null,
"receipt": null
},
"external": {
"boletoId": "2f8d6c1a-4b3e-4a5d-9c7b-1e0f2a3b4c5d",
"platformUserId": "e3553bc1-5e20-4e17-b22a-a796fda0aa99"
},
"pendingConfirmation": {
"amount": 150000,
"category": "FLEX_INTERNATIONAL",
"description": "Folders da campanha de novembro"
},
"customFields": {
"cost-center": "CC-1020"
},
"requester": {
"userId": "e3553bc1-5e20-4e17-b22a-a796fda0aa99",
"name": "Mariana Costa",
"email": "mariana.costa@acme.com.br"
},
"scheduledAt": "2026-11-10T00:00:00.000Z",
"scheduledTimeZone": "America/Sao_Paulo",
"scheduleId": "8c1d2e3f-4a5b-4c6d-8e7f-9a0b1c2d3e4f",
"policyRequestId": "4d2c1b0a-9f8e-4d7c-8b6a-5f4e3d2c1b0a",
"approvalExpiresAt": "2026-11-03T00:00:00.000Z",
"autoResolutionRequestedAt": "2026-11-02T13:12:05.000Z",
"autoResolutionInFlightUntil": "2026-11-02T13:13:35.000Z",
"confirmedAt": "2026-11-02T13:12:07.000Z",
"confirmedBalanceCategory": "FLEX_INTERNATIONAL",
"failReason": "INSUFFICIENT_FUNDS",
"canceledAt": "2026-11-02T15:40:00.000Z",
"refundedAt": "2026-11-05T10:30:00.000Z",
"__v": 0
}
],
"next": "NjcyNmIxYzJiNGQzZTgwMDEyYzlhNGEx"
}{
"traceId": "1-68ee2a1b-3c4d5e6f7a8b9c0d1e2f3a4b",
"code": "ACCOUNT_NOT_FOUND",
"origin": "BANKING",
"message": "Account not found"
}{
"traceId": "1-68ee2a1b-3c4d5e6f7a8b9c0d1e2f3a4b",
"code": "BAD_REQUEST",
"origin": "BANKING",
"message": "Bad Request: Your request is invalid or incomplete. Please make sure you are requesting with the right fields.",
"fields": [
{
"field": "limit",
"message": "Invalid input: expected integer, received string",
"code": "LIMIT_TYPE_ERROR"
}
]
}status, which takes its values comma-separated (?status=PAID,FAILED), and page with limit + next. Any other query parameter filters by the exact value of that field of the payment — for example ?type=UTILITY_BILL. Payments of the other environment are not listed, so send x-environment: LIVE for production payments. A payment waiting for approval whose deadline passed is listed as EXPIRED. Use default as walletId for the organization’s main wallet.
Any member of the organization can list them.Headers
Environment whose payments you list: LIVE (production) or TEST (sandbox). When you omit it, you get the TEST payments; any other value is rejected.
LIVE, TEST Path Parameters
ID of your realm.
Format: UUID
ID of the organization.
Format: UUID
ID of the organization's account (24 hexadecimal characters).
^[0-9a-fA-F]{24}$ID of the wallet (24 hexadecimal characters), or default for the organization's main wallet.
^([0-9a-fA-F]{24}|default)$Query Parameters
Only payments in these statuses (case-insensitive): REQUESTED, PENDING_APPROVAL, EXPIRED, SCHEDULED, PAID, FAILED, CANCELLED or REFUNDED. PENDING_APPROVAL leaves out payments whose approval deadline passed, which EXPIRED includes. Other values match no payment.
Example (comma-separated list): ?status=PAID,FAILED
64Cursor returned as next by the previous page. Omit it for the first page.
Page size. Defaults to 15.
x > 0