curl --request GET \
--url https://api.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/piximport requests
url = "https://api.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/pix"
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}/pix', 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}/pix",
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}/pix"
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}/pix")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/pix")
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": "6726a4f1b4d3e80012c9a3f1",
"environment": "LIVE",
"realmId": "f495ff0c-ab54-4f99-8e92-ca8682e4de9b",
"organizationId": "c4bd3f21-dfbd-44e8-8055-68ba15bed410",
"accountId": "66f2a1c7b4d3e80012c9a0b4",
"walletId": "66f2a3d1b4d3e80012c9a0d2",
"initiationType": "DICT",
"transactionType": "TRANSFER",
"status": "REQUESTED",
"txnCurrency": "986",
"txnOriginalAmount": 123000,
"txnDiscountAmount": 0,
"txnFineAmount": 0,
"txnInterestAmount": 0,
"txnPurchaseAmount": 0,
"txnWithdrawalAmount": 0,
"txnUpdatedAmount": 123000,
"additionalInfo": [
{
"key": "Pedido",
"value": "4821",
"_id": "6726a4f1b4d3e80012c9a3f4"
}
],
"processingType": "INSTANT",
"confirmedAmount": 0,
"refundedAmount": 0,
"createdAt": "2026-11-02T13:10:22.000Z",
"updatedAt": "2026-11-02T13:10:22.000Z",
"creditParty": {
"_id": "6726a4f1b4d3e80012c9a3f2",
"name": "Gráfica Aurora Ltda",
"document": "12345678000195",
"bankIspb": "60746948",
"key": "12345678000195",
"keyType": "CNPJ",
"accountType": "CACC",
"branch": "0001",
"accountNumber": "123456",
"street": "Rua das Gráficas, 100",
"city": "São Paulo",
"state": "SP",
"postalCode": "01310100"
},
"debitParty": {
"_id": "6726a4f1b4d3e80012c9a3f3",
"name": "Acme Logística Ltda",
"document": "98765432000110",
"bankIspb": "12345678",
"accountType": "TRAN",
"branch": "0001",
"accountNumber": "9876543",
"key": "98765432000110"
},
"description": "Folders da campanha de novembro",
"direction": "",
"receipt": {
"endToEndId": "E12345678202611021312k7Q2mX9pL4w"
},
"external": {
"pixId": "c7810c30-971f-4e84-8feb-b7819087d4de",
"platformUserId": "e3553bc1-5e20-4e17-b22a-a796fda0aa99"
},
"txnAllowAmountChange": false,
"qrCodeType": "COB",
"pixCopyPaste": "00020101021226870014br.gov.bcb.pix2565qrcode.example.com/v2/cobv/9d36b84f5204000053039865802BR5919GRAFICA AURORA LTDA6009SAO PAULO62070503***6304ABCD",
"dueDate": null,
"expiresAt": null,
"withdrawal": {
"agentType": null,
"serviceProvider": null
},
"pendingConfirmation": {
"amount": 123000,
"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",
"refundedReason": "REFUND_REQUST_BY_END_CUSTOMER",
"refunds": [
{
"external": {
"id": "0f9e8d7c-6b5a-4c3d-8e2f-1a0b9c8d7e6f"
},
"amount": 1230,
"endToEndId": "D12345678202611051030aB3cD4eF5gH",
"effectiveAt": "2026-11-05T10:30:00.000Z",
"reason": "REFUND_REQUST_BY_END_CUSTOMER"
}
],
"linkedPix": "6726a4f1b4d3e80012c9a3f5",
"__v": 0
}
],
"next": "NjcyNmE0ZjFiNGQzZTgwMDEyYzlhM2Yx"
}{
"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 Pix payments
Lists the Pix payments the wallet sent, newest first.
curl --request GET \
--url https://api.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/piximport requests
url = "https://api.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/pix"
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}/pix', 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}/pix",
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}/pix"
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}/pix")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/pix")
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": "6726a4f1b4d3e80012c9a3f1",
"environment": "LIVE",
"realmId": "f495ff0c-ab54-4f99-8e92-ca8682e4de9b",
"organizationId": "c4bd3f21-dfbd-44e8-8055-68ba15bed410",
"accountId": "66f2a1c7b4d3e80012c9a0b4",
"walletId": "66f2a3d1b4d3e80012c9a0d2",
"initiationType": "DICT",
"transactionType": "TRANSFER",
"status": "REQUESTED",
"txnCurrency": "986",
"txnOriginalAmount": 123000,
"txnDiscountAmount": 0,
"txnFineAmount": 0,
"txnInterestAmount": 0,
"txnPurchaseAmount": 0,
"txnWithdrawalAmount": 0,
"txnUpdatedAmount": 123000,
"additionalInfo": [
{
"key": "Pedido",
"value": "4821",
"_id": "6726a4f1b4d3e80012c9a3f4"
}
],
"processingType": "INSTANT",
"confirmedAmount": 0,
"refundedAmount": 0,
"createdAt": "2026-11-02T13:10:22.000Z",
"updatedAt": "2026-11-02T13:10:22.000Z",
"creditParty": {
"_id": "6726a4f1b4d3e80012c9a3f2",
"name": "Gráfica Aurora Ltda",
"document": "12345678000195",
"bankIspb": "60746948",
"key": "12345678000195",
"keyType": "CNPJ",
"accountType": "CACC",
"branch": "0001",
"accountNumber": "123456",
"street": "Rua das Gráficas, 100",
"city": "São Paulo",
"state": "SP",
"postalCode": "01310100"
},
"debitParty": {
"_id": "6726a4f1b4d3e80012c9a3f3",
"name": "Acme Logística Ltda",
"document": "98765432000110",
"bankIspb": "12345678",
"accountType": "TRAN",
"branch": "0001",
"accountNumber": "9876543",
"key": "98765432000110"
},
"description": "Folders da campanha de novembro",
"direction": "",
"receipt": {
"endToEndId": "E12345678202611021312k7Q2mX9pL4w"
},
"external": {
"pixId": "c7810c30-971f-4e84-8feb-b7819087d4de",
"platformUserId": "e3553bc1-5e20-4e17-b22a-a796fda0aa99"
},
"txnAllowAmountChange": false,
"qrCodeType": "COB",
"pixCopyPaste": "00020101021226870014br.gov.bcb.pix2565qrcode.example.com/v2/cobv/9d36b84f5204000053039865802BR5919GRAFICA AURORA LTDA6009SAO PAULO62070503***6304ABCD",
"dueDate": null,
"expiresAt": null,
"withdrawal": {
"agentType": null,
"serviceProvider": null
},
"pendingConfirmation": {
"amount": 123000,
"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",
"refundedReason": "REFUND_REQUST_BY_END_CUSTOMER",
"refunds": [
{
"external": {
"id": "0f9e8d7c-6b5a-4c3d-8e2f-1a0b9c8d7e6f"
},
"amount": 1230,
"endToEndId": "D12345678202611051030aB3cD4eF5gH",
"effectiveAt": "2026-11-05T10:30:00.000Z",
"reason": "REFUND_REQUST_BY_END_CUSTOMER"
}
],
"linkedPix": "6726a4f1b4d3e80012c9a3f5",
"__v": 0
}
],
"next": "NjcyNmE0ZjFiNGQzZTgwMDEyYzlhM2Yx"
}{
"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 ?initiationType=DICT. 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, CONFIRMED, PAID, FAILED, CANCELLED or REFUNDED. PENDING_APPROVAL leaves out payments whose approval deadline passed, which EXPIRED includes. Other values match no payment; each value can have at most 64 characters.
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