curl --request POST \
--url https://api.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/pix/{pixId}/request \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"customFields": "<unknown>"
}
'import requests
url = "https://api.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/pix/{pixId}/request"
payload = { "customFields": "<unknown>" }
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({customFields: '<unknown>'})
};
fetch('https://api.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/pix/{pixId}/request', 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/{pixId}/request",
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([
'customFields' => '<unknown>'
]),
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.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/pix/{pixId}/request"
payload := strings.NewReader("{\n \"customFields\": \"<unknown>\"\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.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/pix/{pixId}/request")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"customFields\": \"<unknown>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/pix/{pixId}/request")
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 \"customFields\": \"<unknown>\"\n}"
response = http.request(request)
puts response.read_body{
"_id": "<string>",
"environment": "LIVE",
"realmId": "<string>",
"organizationId": "<string>",
"accountId": "<string>",
"walletId": "<string>",
"creditParty": {
"bankIspb": "<string>",
"accountType": "CACC",
"document": "<string>",
"keyType": "PHONE",
"key": "<string>",
"name": "<string>",
"street": "<string>",
"city": "<string>",
"state": "<string>",
"postalCode": "<string>",
"branch": "<string>",
"accountNumber": 123
},
"debitParty": {
"bankIspb": "<string>",
"accountType": "CACC",
"document": "<string>",
"keyType": "PHONE",
"key": "<string>",
"name": "<string>",
"street": "<string>",
"city": "<string>",
"state": "<string>",
"postalCode": "<string>",
"branch": "<string>",
"accountNumber": 123
},
"description": "<string>",
"direction": "<string>",
"receipt": {
"endToEndId": "<string>"
},
"initiationType": "MANUAL",
"status": "REQUESTED",
"transactionType": "TRANSFER",
"txnCurrency": "784",
"txnAllowAmountChange": true,
"txnOriginalAmount": 123,
"txnDiscountAmount": 123,
"txnFineAmount": 123,
"txnInterestAmount": 123,
"txnPurchaseAmount": 123,
"txnWithdrawalAmount": 123,
"txnUpdatedAmount": 123,
"external": {
"pixId": "<string>"
},
"policyRequest": {
"id": "<string>",
"realmId": "<string>",
"organizationId": "<string>",
"accountId": "<string>",
"walletId": "<string>",
"context": "PAYMENT",
"subjectType": "<string>",
"subjectId": "<string>",
"requester": {
"userId": "<string>",
"name": "<string>",
"email": "<string>"
},
"body": {},
"policyId": "<string>",
"status": "REQUESTED",
"executionStatus": "WAITING",
"approvalDeadline": "<string>",
"approvalHierarchy": true,
"approvals": [
{
"type": "USER",
"id": "<string>",
"name": "<string>",
"status": "WAITING",
"users": [
{
"userId": "<string>",
"userName": "<string>",
"userEmail": "<string>",
"status": "WAITING"
}
],
"createdAt": "<string>",
"requestedAt": "<string>",
"decisionAt": "<string>",
"decisionReason": "<string>"
}
],
"walletName": "<string>",
"denialReason": "<string>",
"resolution": "AUTO",
"executionMode": "MOVE_BALANCE_ONLY",
"executionFailReason": "<string>",
"executionMoveBalance": {
"addBalance": true,
"fromAccountId": "<string>",
"fromWalletId": "<string>"
},
"createdAt": "<string>",
"updatedAt": "<string>"
},
"confirmedAt": "<string>",
"confirmedAmount": 123,
"confirmedBalanceCategory": "FLEX_NATIONAL",
"dueDate": "<string>",
"expiresAt": "<string>",
"canceledAt": "<string>",
"refundedAt": "<string>",
"scheduledAt": "<string>",
"scheduledTimeZone": "<string>",
"scheduleId": "<string>",
"policyRequestId": "<string>",
"approvalExpiresAt": "<string>",
"pendingConfirmation": {
"amount": 123,
"category": "FLEX_NATIONAL",
"description": "<string>"
},
"autoResolutionRequestedAt": "<string>",
"autoResolutionInFlightUntil": "<string>",
"requester": {
"userId": "<string>",
"name": "<string>",
"email": "<string>"
},
"qrCodeType": "STATIC",
"pixCopyPaste": "<string>",
"qrQrCodeActive": true,
"additionalInfo": [
{
"key": "<string>",
"value": "<string>"
}
],
"withdrawal": {
"agentType": "AGTEC",
"serviceProvider": "<string>"
},
"customFields": {},
"processingType": "INSTANT",
"createdAt": "<string>",
"updatedAt": "<string>"
}/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/pix/{pixId}/request
curl --request POST \
--url https://api.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/pix/{pixId}/request \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"customFields": "<unknown>"
}
'import requests
url = "https://api.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/pix/{pixId}/request"
payload = { "customFields": "<unknown>" }
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({customFields: '<unknown>'})
};
fetch('https://api.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/pix/{pixId}/request', 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/{pixId}/request",
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([
'customFields' => '<unknown>'
]),
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.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/pix/{pixId}/request"
payload := strings.NewReader("{\n \"customFields\": \"<unknown>\"\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.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/pix/{pixId}/request")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"customFields\": \"<unknown>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.banking.v2.portao3.com.br/realms/{realmId}/organizations/{organizationId}/accounts/{accountId}/wallets/{walletId}/pix/{pixId}/request")
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 \"customFields\": \"<unknown>\"\n}"
response = http.request(request)
puts response.read_body{
"_id": "<string>",
"environment": "LIVE",
"realmId": "<string>",
"organizationId": "<string>",
"accountId": "<string>",
"walletId": "<string>",
"creditParty": {
"bankIspb": "<string>",
"accountType": "CACC",
"document": "<string>",
"keyType": "PHONE",
"key": "<string>",
"name": "<string>",
"street": "<string>",
"city": "<string>",
"state": "<string>",
"postalCode": "<string>",
"branch": "<string>",
"accountNumber": 123
},
"debitParty": {
"bankIspb": "<string>",
"accountType": "CACC",
"document": "<string>",
"keyType": "PHONE",
"key": "<string>",
"name": "<string>",
"street": "<string>",
"city": "<string>",
"state": "<string>",
"postalCode": "<string>",
"branch": "<string>",
"accountNumber": 123
},
"description": "<string>",
"direction": "<string>",
"receipt": {
"endToEndId": "<string>"
},
"initiationType": "MANUAL",
"status": "REQUESTED",
"transactionType": "TRANSFER",
"txnCurrency": "784",
"txnAllowAmountChange": true,
"txnOriginalAmount": 123,
"txnDiscountAmount": 123,
"txnFineAmount": 123,
"txnInterestAmount": 123,
"txnPurchaseAmount": 123,
"txnWithdrawalAmount": 123,
"txnUpdatedAmount": 123,
"external": {
"pixId": "<string>"
},
"policyRequest": {
"id": "<string>",
"realmId": "<string>",
"organizationId": "<string>",
"accountId": "<string>",
"walletId": "<string>",
"context": "PAYMENT",
"subjectType": "<string>",
"subjectId": "<string>",
"requester": {
"userId": "<string>",
"name": "<string>",
"email": "<string>"
},
"body": {},
"policyId": "<string>",
"status": "REQUESTED",
"executionStatus": "WAITING",
"approvalDeadline": "<string>",
"approvalHierarchy": true,
"approvals": [
{
"type": "USER",
"id": "<string>",
"name": "<string>",
"status": "WAITING",
"users": [
{
"userId": "<string>",
"userName": "<string>",
"userEmail": "<string>",
"status": "WAITING"
}
],
"createdAt": "<string>",
"requestedAt": "<string>",
"decisionAt": "<string>",
"decisionReason": "<string>"
}
],
"walletName": "<string>",
"denialReason": "<string>",
"resolution": "AUTO",
"executionMode": "MOVE_BALANCE_ONLY",
"executionFailReason": "<string>",
"executionMoveBalance": {
"addBalance": true,
"fromAccountId": "<string>",
"fromWalletId": "<string>"
},
"createdAt": "<string>",
"updatedAt": "<string>"
},
"confirmedAt": "<string>",
"confirmedAmount": 123,
"confirmedBalanceCategory": "FLEX_NATIONAL",
"dueDate": "<string>",
"expiresAt": "<string>",
"canceledAt": "<string>",
"refundedAt": "<string>",
"scheduledAt": "<string>",
"scheduledTimeZone": "<string>",
"scheduleId": "<string>",
"policyRequestId": "<string>",
"approvalExpiresAt": "<string>",
"pendingConfirmation": {
"amount": 123,
"category": "FLEX_NATIONAL",
"description": "<string>"
},
"autoResolutionRequestedAt": "<string>",
"autoResolutionInFlightUntil": "<string>",
"requester": {
"userId": "<string>",
"name": "<string>",
"email": "<string>"
},
"qrCodeType": "STATIC",
"pixCopyPaste": "<string>",
"qrQrCodeActive": true,
"additionalInfo": [
{
"key": "<string>",
"value": "<string>"
}
],
"withdrawal": {
"agentType": "AGTEC",
"serviceProvider": "<string>"
},
"customFields": {},
"processingType": "INSTANT",
"createdAt": "<string>",
"updatedAt": "<string>"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Body
Response
Successful response
Transient, never persisted — the policy-request ruleengine just opened.
LIVE, TEST Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
MANUAL, DICT, STATIC_QRCODE, DYNAMIC_QRCODE, UNDEFINED_QRCODE, COPY_PASTE, FULL_BANK_DETAILS, REVERSAL, AUTOMATIC_PIX, PAYMENT_INITIATOR REQUESTED, PENDING_APPROVAL, CANCELLED, CONFIRMED, PAID, FAILED, REFUNDED, SCHEDULED, EXPIRED TRANSFER, CHANGE, WITHDRAWAL, PAYMENT 784, 971, 008, 051, 973, 032, 036, 533, 944, 977, 052, 050, 048, 108, 060, 096, 068, 984, 986, 044, 064, 072, 933, 084, 124, 976, 947, 756, 948, 990, 152, 156, 170, 970, 188, 192, 132, 203, 262, 208, 214, 012, 818, 232, 230, 978, 242, 238, 826, 981, 936, 292, 270, 324, 320, 328, 344, 340, 332, 348, 360, 376, 356, 368, 364, 352, 388, 400, 392, 404, 417, 116, 174, 408, 410, 414, 136, 398, 418, 422, 144, 430, 426, 434, 504, 498, 969, 807, 104, 496, 446, 929, 480, 462, 454, 484, 979, 458, 943, 516, 566, 558, 578, 524, 554, 512, 590, 604, 598, 608, 586, 985, 600, 634, 946, 941, 643, 646, 682, 090, 690, 938, 752, 702, 654, 925, 706, 968, 728, 930, 222, 760, 748, 764, 972, 934, 788, 776, 949, 780, 901, 834, 980, 800, 840, 997, 940, 858, 927, 860, 926, 928, 704, 548, 882, 396, 950, 961, 959, 955, 956, 957, 958, 951, 532, 960, 952, 964, 953, 962, 994, 963, 965, 999, 886, 710, 967, 924 Show child attributes
Show child attributes
Show child attributes
Show child attributes
FLEX_NATIONAL, FLEX_INTERNATIONAL, FOOD, GAS, MOBILITY, TOLL, FLEX_NATIONAL_WITHOUT_WITHDRAWALS, ADS, SAAS, HOTEL, AIRLINES, TRAVEL, BLOCKED, CASHBACK The payment parameters stored on the payment: what will actually be paid. Set at creation (from the fields the initiating call provided), replaced by PUT .../{id}, and executed by a payload-less confirm/request. A stored set that is missing its category cannot be executed yet — confirm/request answer 422 PAYMENT_PARAMETERS_MISSING until a PUT completes it.
Show child attributes
Show child attributes
When a confirm first asked the policy engine to execute the matched auto-approving policy for this payment. Informational; once set, every later confirm of this payment is reconciled against that execution.
While set and in the future, a confirm is asking the policy engine to execute the matched auto-approving policy for this payment and a cancel is refused (409) until it lapses. Cleared once the payment is settled; it stays while the execution outcome is still uncertain.
Who created this payment — the authenticated user at creation time. Absent on payments created before this field existed.
Show child attributes
Show child attributes
STATIC, COB, COBV Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
INSTANT, DELAYED