SPI Service API
API Endpoint
https://api.dictra.com.brThe SPI (Sistema de Pagamentos Instantâneos) Service handles Brazilian instant payment processing via BACEN (Brazilian Central Bank). This API provides endpoints for creating PIX payments, querying balances, managing batch payments, recurring payments, and return operations.
Version: 1.0.0 Protocol: ISO 20022 (pacs.008, pacs.002, pacs.004, camt.060, pain.009, pain.011, pain.012) TPS Target: 1,500 transactions per second BACEN Reference: SPI Manual v5.11.1
Authentication
All API endpoints (except /health and /ready) require JWT authentication.
Authorization: Bearer <jwt_token>
ISO 20022 Message Flow
Payment Creation
↓
pacs.008 (Credit Transfer) → BACEN
↓
pacs.002 (Status Report) ← BACEN
↓
Payment Settled/Rejected
Payment Initiation Types (LocalInstrument)
| Code | Name | PIX Key | TxId | EndToEndId Source | Token Correlation |
|---|---|---|---|---|---|
| MANU | Manual Entry | No | No | SPI-generated | No |
| DICT | PIX Key Lookup | Required | No | DICT-generated | Yes |
| QRES | QR Code Static | Required | ≤25 chars | SPI-generated | No |
| QRDN | QR Code Dynamic | Required | 26-35 chars | SPI-generated | No |
| INIC | Payment Initiator | Required | ≤25 chars | SPI-generated | No |
| AUTO | PIX Automático | Optional | 26-35 chars | SPI-generated | No |
| APDN | PIX Automático Dynamic | Optional | 26-35 chars | SPI-generated | No |
| APES | PIX Automático Static | Optional | ≤25 chars | SPI-generated | No |
Important: Only DICT-initiated payments trigger token refund correlation with dict-service.
Health Checks ¶
Health and readiness probe endpoints.
Liveness ¶
Headers
Content-Type: application/jsonBody
{
"status": "healthy",
"uptime": "2h30m45s",
"timestamp": "2026-01-24T10:30:00Z"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"status": {
"type": "string"
},
"uptime": {
"type": "string"
},
"timestamp": {
"type": "string"
}
},
"required": [
"status",
"uptime",
"timestamp"
]
}Check LivenessGET/health
Returns service liveness status.
Readiness ¶
Headers
Content-Type: application/jsonBody
{
"status": "healthy",
"services": {
"database": "healthy",
"bacen": "healthy",
"nats": "healthy"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"status": {
"type": "string"
},
"services": {
"type": "object",
"properties": {
"database": {
"type": "string"
},
"bacen": {
"type": "string"
},
"nats": {
"type": "string"
}
},
"required": [
"database",
"bacen",
"nats"
]
}
},
"required": [
"status",
"services"
]
}Headers
Content-Type: application/jsonBody
{
"status": "unhealthy",
"services": {
"database": "healthy",
"bacen": "unhealthy",
"nats": "healthy"
}
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"status": {
"type": "string"
},
"services": {
"type": "object",
"properties": {
"database": {
"type": "string"
},
"bacen": {
"type": "string"
},
"nats": {
"type": "string"
}
}
}
},
"required": [
"status",
"services"
]
}Check ReadinessGET/ready
Returns service readiness status with dependency checks.
Core Payments ¶
PIX payment operations using ISO 20022 pacs.008 messages.
Payments Collection ¶
Headers
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Body
{
"local_instrument": "MANU",
"priority_type": "PAGPRI",
"priority_id": 1,
"purpose": "IPAY",
"amount": 10000,
"currency": "BRL",
"debtor": {
"ispb": "12345678",
"name": "João Silva",
"document": "12345678901",
"account_no": "00001234567",
"account_type": "CACC",
"branch": "0001"
},
"creditor": {
"ispb": "87654321",
"name": "Maria Oliveira",
"document": "98765432100",
"account_no": "00009876543",
"account_type": "CACC",
"branch": "0002",
"proxy": "maria@example.com"
},
"tx_id": "abc123",
"initiating_party": "12345678000199",
"description": "Payment for services",
"dict_end_to_end_id": "E1234567820260124103012345abcde",
"dict_correlation_id": "uuid-v4-correlation",
"origin_system": 1
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"local_instrument": {
"type": "string",
"enum": [
"MANU",
"DICT",
"QRES",
"QRDN",
"INIC",
"AUTO",
"APDN",
"APES"
],
"description": "Initiation type"
},
"priority_type": {
"type": "string",
"enum": [
"PAGPRI",
"PAGFRD",
"PAGAGD"
],
"description": "Payment priority"
},
"priority_id": {
"type": "number",
"description": "Priority ID (1=HIGH, 2=NORMAL)"
},
"purpose": {
"type": "string",
"enum": [
"IPAY",
"GSCB",
"OTHR",
"REFU"
],
"description": "Transaction purpose"
},
"amount": {
"type": "number",
"description": "Amount in cents (R$ 100.00)"
},
"currency": {
"type": "string"
},
"debtor": {
"type": "object",
"properties": {
"ispb": {
"type": "string",
"description": "8-digit ISPB"
},
"name": {
"type": "string"
},
"document": {
"type": "string",
"description": "CPF or CNPJ"
},
"account_no": {
"type": "string"
},
"account_type": {
"type": "string",
"description": "CACC, SVGS, TRAN"
},
"branch": {
"type": "string"
}
},
"required": [
"ispb",
"document",
"account_no",
"account_type"
]
},
"creditor": {
"type": "object",
"properties": {
"ispb": {
"type": "string"
},
"name": {
"type": "string"
},
"document": {
"type": "string"
},
"account_no": {
"type": "string"
},
"account_type": {
"type": "string"
},
"branch": {
"type": "string"
},
"proxy": {
"type": "string",
"description": "PIX key (required for DICT, QRDN, QRES, INIC)"
}
},
"required": [
"ispb",
"document",
"account_no",
"account_type"
]
},
"tx_id": {
"type": "string",
"description": "Transaction ID (required for QR/INIC)"
},
"initiating_party": {
"type": "string",
"description": "Required for INIC"
},
"description": {
"type": "string",
"description": "Max 140 chars"
},
"dict_end_to_end_id": {
"type": "string",
"description": "For DICT payments only"
},
"dict_correlation_id": {
"type": "string",
"description": "For token refund tracking"
},
"origin_system": {
"type": "number"
}
},
"required": [
"local_instrument",
"priority_type",
"priority_id",
"purpose",
"amount",
"currency",
"debtor",
"creditor",
"origin_system"
]
}Headers
Content-Type: application/jsonBody
{
"id": 1,
"end_to_end_id": "E1234567820260124103012345abcde",
"message_id": "M1234567820260124103012345abcde",
"tx_id": "abc123",
"local_instrument": "DICT",
"priority_type": "PAGPRI",
"purpose": "IPAY",
"amount": 10000,
"currency": "BRL",
"debtor": {
"ispb": "12345678",
"name": "João Silva",
"document": "12345678901",
"account_no": "00001234567",
"account_type": "CACC"
},
"creditor": {
"ispb": "87654321",
"name": "Maria Oliveira",
"document": "98765432100",
"account_no": "00009876543",
"account_type": "CACC",
"proxy": "maria@example.com"
},
"status": "ENTRY_RECEIVED",
"operation_datetime": "2026-01-24T10:30:12Z",
"created_at": "2026-01-24T10:30:12Z",
"updated_at": "2026-01-24T10:30:12Z",
"dict_correlation_id": "uuid-v4-correlation",
"token_refunded": false
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "number"
},
"end_to_end_id": {
"type": "string",
"description": "32 chars"
},
"message_id": {
"type": "string",
"description": "32 chars"
},
"tx_id": {
"type": "string"
},
"local_instrument": {
"type": "string"
},
"priority_type": {
"type": "string"
},
"purpose": {
"type": "string"
},
"amount": {
"type": "number"
},
"currency": {
"type": "string"
},
"debtor": {
"type": "object",
"properties": {
"ispb": {
"type": "string"
},
"name": {
"type": "string"
},
"document": {
"type": "string"
},
"account_no": {
"type": "string"
},
"account_type": {
"type": "string"
}
},
"required": [
"ispb",
"document",
"account_no",
"account_type"
]
},
"creditor": {
"type": "object",
"properties": {
"ispb": {
"type": "string"
},
"name": {
"type": "string"
},
"document": {
"type": "string"
},
"account_no": {
"type": "string"
},
"account_type": {
"type": "string"
},
"proxy": {
"type": "string"
}
},
"required": [
"ispb",
"document",
"account_no",
"account_type"
]
},
"status": {
"type": "string"
},
"operation_datetime": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"dict_correlation_id": {
"type": "string"
},
"token_refunded": {
"type": "boolean"
}
},
"required": [
"id",
"end_to_end_id",
"message_id",
"local_instrument",
"priority_type",
"purpose",
"amount",
"currency",
"debtor",
"creditor",
"status",
"operation_datetime",
"created_at",
"updated_at",
"token_refunded"
]
}Headers
Content-Type: application/jsonBody
{
"error": "validation_failed",
"message": "DICT payments require PIX key (CreditorProxy)"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"error": {
"type": "string"
},
"message": {
"type": "string"
}
},
"required": [
"error",
"message"
]
}Create PaymentPOST/api/v1/payments
Creates a new PIX payment. Validation rules apply based on LocalInstrument type.
DICT Payments: EndToEndId must be provided from dict-service (token correlation). Other Types: EndToEndId is auto-generated by SPI.
Headers
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Headers
Content-Type: application/jsonBody
{
"payments": [
{
"id": 1,
"end_to_end_id": "E1234567820260124103012345abcde",
"message_id": "M1234567820260124103012345abcde",
"local_instrument": "DICT",
"amount": 10000,
"currency": "BRL",
"status": "ACSP",
"operation_datetime": "2026-01-24T10:30:12Z",
"created_at": "2026-01-24T10:30:12Z"
}
],
"total": 123,
"limit": 50,
"offset": 0
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"payments": {
"type": "array"
},
"total": {
"type": "number"
},
"limit": {
"type": "number"
},
"offset": {
"type": "number"
}
},
"required": [
"payments",
"total",
"limit",
"offset"
]
}List PaymentsGET/api/v1/payments{?status,limit,offset}
Lists payments with optional status filter.
- status
string(optional) Example: ACSPFilter by status
Choices:
ENTRY_RECEIVEDVALIDATEDPENDING_BACENSENT_TO_BACENACSPACCCRJCTPDNGCANC- limit
number(optional) Example: 50Max results (default: 50)
- offset
number(optional) Example: 0Pagination offset
Payment ¶
Headers
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Headers
Content-Type: application/jsonBody
{
"id": 1,
"end_to_end_id": "E1234567820260124103012345abcde",
"message_id": "M1234567820260124103012345abcde",
"tx_id": "abc123",
"local_instrument": "DICT",
"priority_type": "PAGPRI",
"priority_id": 1,
"purpose": "IPAY",
"amount": 10000,
"currency": "BRL",
"debtor": {
"ispb": "12345678",
"name": "João Silva",
"document": "12345678901",
"account_no": "00001234567",
"account_type": "CACC",
"branch": "0001"
},
"creditor": {
"ispb": "87654321",
"name": "Maria Oliveira",
"document": "98765432100",
"account_no": "00009876543",
"account_type": "CACC",
"branch": "0002",
"proxy": "maria@example.com"
},
"status": "ACSP",
"reason_code": "ACSP",
"operation_datetime": "2026-01-24T10:30:12Z",
"acceptance_datetime": "2026-01-24T10:30:15Z",
"created_at": "2026-01-24T10:30:12Z",
"updated_at": "2026-01-24T10:30:15Z",
"dict_correlation_id": "uuid-v4-correlation",
"token_refunded": true
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "number"
},
"end_to_end_id": {
"type": "string"
},
"message_id": {
"type": "string"
},
"tx_id": {
"type": "string"
},
"local_instrument": {
"type": "string"
},
"priority_type": {
"type": "string"
},
"priority_id": {
"type": "number"
},
"purpose": {
"type": "string"
},
"amount": {
"type": "number"
},
"currency": {
"type": "string"
},
"debtor": {
"type": "object",
"properties": {
"ispb": {
"type": "string"
},
"name": {
"type": "string"
},
"document": {
"type": "string"
},
"account_no": {
"type": "string"
},
"account_type": {
"type": "string"
},
"branch": {
"type": "string"
}
},
"required": [
"ispb",
"document",
"account_no",
"account_type"
]
},
"creditor": {
"type": "object",
"properties": {
"ispb": {
"type": "string"
},
"name": {
"type": "string"
},
"document": {
"type": "string"
},
"account_no": {
"type": "string"
},
"account_type": {
"type": "string"
},
"branch": {
"type": "string"
},
"proxy": {
"type": "string"
}
},
"required": [
"ispb",
"document",
"account_no",
"account_type"
]
},
"status": {
"type": "string"
},
"reason_code": {
"type": "string"
},
"operation_datetime": {
"type": "string"
},
"acceptance_datetime": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"dict_correlation_id": {
"type": "string"
},
"token_refunded": {
"type": "boolean"
}
},
"required": [
"id",
"end_to_end_id",
"message_id",
"local_instrument",
"priority_type",
"priority_id",
"purpose",
"amount",
"currency",
"debtor",
"creditor",
"status",
"operation_datetime",
"created_at",
"updated_at",
"token_refunded"
]
}Headers
Content-Type: application/jsonBody
{
"error": "not_found",
"message": "Payment not found"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"error": {
"type": "string"
},
"message": {
"type": "string"
}
},
"required": [
"error",
"message"
]
}Get PaymentGET/api/v1/payments/{id}
Retrieves payment details by ID or EndToEndId.
- id
string(required) Example: 1Payment ID or EndToEndId
Payment History ¶
Headers
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Headers
Content-Type: application/jsonBody
BACEN balance query operations using ISO 20022 camt.060 messages.Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"payment_id": {
"type": "number"
},
"end_to_end_id": {
"type": "string"
},
"history": {
"type": "array"
}
},
"required": [
"payment_id",
"end_to_end_id",
"history"
]
}Get Payment HistoryGET/api/v1/payments/{id}/history
Retrieves payment status history.
- id
string(required) Example: 1Payment ID or EndToEndId
Current Balance ¶
Headers
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Headers
Content-Type: application/jsonBody
{
"ispb": "12345678",
"available": "1000000.00",
"blocked": "50000.00",
"projected": "950000.00",
"pending_debits": "30000.00",
"pending_credits": "20000.00",
"as_of": "2026-01-24T10:30:00Z",
"source": "bacen"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"ispb": {
"type": "string"
},
"available": {
"type": "string",
"description": "Decimal string"
},
"blocked": {
"type": "string"
},
"projected": {
"type": "string"
},
"pending_debits": {
"type": "string"
},
"pending_credits": {
"type": "string"
},
"as_of": {
"type": "string"
},
"source": {
"type": "string",
"description": "cache, bacen, calculated"
}
},
"required": [
"ispb",
"available",
"blocked",
"projected",
"pending_debits",
"pending_credits",
"as_of",
"source"
]
}Get Current BalanceGET/api/v1/balance{?ispb}
Retrieves current available balance for a participant.
- ispb
string(required) Example: 123456788-digit participant ISPB
Projected Balance ¶
Headers
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Headers
Content-Type: application/jsonBody
{
"current_available": "1000000.00",
"pending_debits": "30000.00",
"pending_credits": "20000.00",
"projected_amount": "990000.00",
"pending_count": 45,
"as_of": "2026-01-24T10:30:00Z"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"current_available": {
"type": "string"
},
"pending_debits": {
"type": "string"
},
"pending_credits": {
"type": "string"
},
"projected_amount": {
"type": "string"
},
"pending_count": {
"type": "number"
},
"as_of": {
"type": "string"
}
},
"required": [
"current_available",
"pending_debits",
"pending_credits",
"projected_amount",
"pending_count",
"as_of"
]
}Get Projected BalanceGET/api/v1/balance/projected{?ispb}
Retrieves projected balance with pending transactions.
- ispb
string(required) Example: 12345678
Previous Day Balance ¶
Headers
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Headers
Content-Type: application/jsonBody
{
"ispb": "12345678",
"date": "2026-01-23",
"opening_balance": "950000.00",
"closing_balance": "1000000.00",
"total_credits": "200000.00",
"total_debits": "150000.00",
"transaction_count": 342
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"ispb": {
"type": "string"
},
"date": {
"type": "string"
},
"opening_balance": {
"type": "string"
},
"closing_balance": {
"type": "string"
},
"total_credits": {
"type": "string"
},
"total_debits": {
"type": "string"
},
"transaction_count": {
"type": "number"
}
},
"required": [
"ispb",
"date",
"opening_balance",
"closing_balance",
"total_credits",
"total_debits",
"transaction_count"
]
}Get Previous Day BalanceGET/api/v1/balance/previous-day{?ispb}
Retrieves previous day’s closing balance.
- ispb
string(required) Example: 12345678
Balance History ¶
Headers
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Headers
Content-Type: application/jsonBody
{
"ispb": "12345678",
"from_date": "2026-01-01",
"to_date": "2026-01-24",
"entries": [
{
"date": "2026-01-23",
"opening_balance": "950000.00",
"closing_balance": "1000000.00",
"total_credits": "200000.00",
"total_debits": "150000.00",
"transaction_count": 342
},
{
"date": "2026-01-24",
"opening_balance": "1000000.00",
"closing_balance": "1050000.00",
"total_credits": "250000.00",
"total_debits": "200000.00",
"transaction_count": 387
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"ispb": {
"type": "string"
},
"from_date": {
"type": "string"
},
"to_date": {
"type": "string"
},
"entries": {
"type": "array"
}
},
"required": [
"ispb",
"from_date",
"to_date",
"entries"
]
}Get Balance HistoryGET/api/v1/balance/history{?ispb,from_date,to_date}
Retrieves historical balance data.
- ispb
string(required) Example: 12345678- from_date
string(required) Example: 2026-01-01ISO 8601 date
- to_date
string(required) Example: 2026-01-24
Balance Query ¶
Headers
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Body
{
"ispb": "12345678",
"query_type": "CURRENT",
"requested_msg": "camt.052",
"balance_type": "CLBD",
"reporting_from": "2026-01-24T00:00:00Z",
"reporting_to": "2026-01-24T23:59:59Z"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"ispb": {
"type": "string"
},
"query_type": {
"type": "string",
"enum": [
"CURRENT",
"PROJECTED",
"PREVIOUS_DAY",
"HISTORY",
"INTRADAY"
]
},
"requested_msg": {
"type": "string",
"enum": [
"camt.052",
"camt.053",
"camt.054"
]
},
"balance_type": {
"type": "string",
"enum": [
"CLBD",
"XPCD",
"OPBD",
"ITAV"
]
},
"reporting_from": {
"type": "string"
},
"reporting_to": {
"type": "string"
}
},
"required": [
"ispb",
"query_type",
"requested_msg",
"balance_type",
"reporting_from"
]
}Headers
Content-Type: application/jsonBody
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"message_id": "M1234567820260124103012345abcde",
"ispb": "12345678",
"query_type": "CURRENT",
"status": "PENDING",
"created_at": "2026-01-24T10:30:12Z"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string"
},
"message_id": {
"type": "string"
},
"ispb": {
"type": "string"
},
"query_type": {
"type": "string"
},
"status": {
"type": "string"
},
"created_at": {
"type": "string"
}
},
"required": [
"id",
"message_id",
"ispb",
"query_type",
"status",
"created_at"
]
}Create Balance QueryPOST/api/v1/balance/query
Creates a new camt.060 balance query request to BACEN.
Balance Queries List ¶
Headers
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Headers
Content-Type: application/jsonBody
{
"queries": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"message_id": "M1234567820260124103012345abcde",
"ispb": "12345678",
"query_type": "CURRENT",
"status": "COMPLETED",
"created_at": "2026-01-24T10:30:12Z",
"updated_at": "2026-01-24T10:30:15Z"
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"queries": {
"type": "array"
}
},
"required": [
"queries"
]
}List Balance QueriesGET/api/v1/balance/queries{?ispb,status}
Lists balance query requests.
- ispb
string(optional) Example: 12345678- status
string(optional) Example: COMPLETEDChoices:
PENDINGPROCESSINGCOMPLETEDFAILED
Balance Query Details ¶
Headers
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Headers
Content-Type: application/jsonBody
Batch payment operations using ISO 20022 pain.001 messages.
**Limits:**Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string"
},
"message_id": {
"type": "string"
},
"ispb": {
"type": "string"
},
"query_type": {
"type": "string"
},
"status": {
"type": "string"
},
"response_data": {
"type": "object",
"properties": {
"message_id": {
"type": "string"
},
"created_at": {
"type": "string"
},
"account_ispb": {
"type": "string"
},
"balances": {
"type": "array"
},
"total_entries": {
"type": "number"
},
"total_credit_sum": {
"type": "string"
},
"total_debit_sum": {
"type": "string"
}
},
"required": [
"message_id",
"created_at",
"account_ispb",
"balances",
"total_entries",
"total_credit_sum",
"total_debit_sum"
]
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": [
"id",
"message_id",
"ispb",
"query_type",
"status",
"created_at",
"updated_at"
]
}Get Balance QueryGET/api/v1/balance/queries/{id}
Retrieves balance query details and response.
- id
string(required) Example: 550e8400-e29b-41d4-a716-446655440000Query ID
Batches ¶
Headers
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Body
{
"batch_id": "BATCH001",
"participant_ispb": "12345678",
"requested_execution_date": "2026-01-24",
"payments": [
{
"local_instrument": "MANU",
"amount": 10000,
"currency": "BRL",
"debtor": {
"ispb": "12345678",
"account_no": "00001234567",
"account_type": "CACC",
"document": "12345678901"
},
"creditor": {
"ispb": "87654321",
"account_no": "00009876543",
"account_type": "CACC",
"document": "98765432100"
}
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"batch_id": {
"type": "string"
},
"participant_ispb": {
"type": "string"
},
"requested_execution_date": {
"type": "string"
},
"payments": {
"type": "array",
"description": "Max 10 items"
}
},
"required": [
"batch_id",
"participant_ispb",
"requested_execution_date",
"payments"
]
}Headers
Content-Type: application/jsonBody
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"batch_id": "BATCH001",
"message_id": "M1234567820260124103012345abcde",
"participant_ispb": "12345678",
"status": "PENDING",
"total_amount": 100000,
"item_count": 10,
"created_at": "2026-01-24T10:30:12Z"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string"
},
"batch_id": {
"type": "string"
},
"message_id": {
"type": "string"
},
"participant_ispb": {
"type": "string"
},
"status": {
"type": "string"
},
"total_amount": {
"type": "number"
},
"item_count": {
"type": "number"
},
"created_at": {
"type": "string"
}
},
"required": [
"id",
"batch_id",
"message_id",
"participant_ispb",
"status",
"total_amount",
"item_count",
"created_at"
]
}Create BatchPOST/api/v1/batches
Creates a new batch payment.
Headers
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Headers
Content-Type: application/jsonBody
{
"batches": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"batch_id": "BATCH001",
"message_id": "M1234567820260124103012345abcde",
"status": "COMPLETED",
"total_amount": 100000,
"item_count": 10,
"created_at": "2026-01-24T10:30:12Z"
}
],
"total": 45
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"batches": {
"type": "array"
},
"total": {
"type": "number"
}
},
"required": [
"batches",
"total"
]
}List BatchesGET/api/v1/batches{?status,limit,offset}
Lists batch payments.
- status
string(optional) Example: COMPLETEDChoices:
PENDINGPROCESSINGCOMPLETEDFAILED- limit
number(optional) Example: 50- offset
number(optional) Example: 0
Batch Details ¶
Headers
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Headers
Content-Type: application/jsonBody
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"batch_id": "BATCH001",
"message_id": "M1234567820260124103012345abcde",
"participant_ispb": "12345678",
"status": "COMPLETED",
"total_amount": 100000,
"item_count": 10,
"requested_execution_date": "2026-01-24",
"created_at": "2026-01-24T10:30:12Z",
"updated_at": "2026-01-24T10:30:20Z",
"processed_at": "2026-01-24T10:30:20Z"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string"
},
"batch_id": {
"type": "string"
},
"message_id": {
"type": "string"
},
"participant_ispb": {
"type": "string"
},
"status": {
"type": "string"
},
"total_amount": {
"type": "number"
},
"item_count": {
"type": "number"
},
"requested_execution_date": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"processed_at": {
"type": "string"
}
},
"required": [
"id",
"batch_id",
"message_id",
"participant_ispb",
"status",
"total_amount",
"item_count",
"requested_execution_date",
"created_at",
"updated_at"
]
}Get BatchGET/api/v1/batches/{id}
Retrieves batch details.
- id
string(required) Example: 550e8400-e29b-41d4-a716-446655440000Batch ID
Batch Items ¶
Headers
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Headers
Content-Type: application/jsonBody
Recurring payment operations (PIX Automático) using ISO 20022 pain messages.Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"batch_id": {
"type": "string"
},
"items": {
"type": "array"
}
},
"required": [
"batch_id",
"items"
]
}Get Batch ItemsGET/api/v1/batches/{id}/items
Retrieves items within a batch.
- id
string(required) Example: 550e8400-e29b-41d4-a716-446655440000Batch ID
Recurrences ¶
Headers
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Body
{
"mandate_id": "MANDATE123456789012345678901234",
"participant_ispb": "12345678",
"debtor": {
"ispb": "12345678",
"account": "00001234567",
"account_type": "CACC",
"name": "João Silva",
"document": "12345678901"
},
"creditor": {
"ispb": "87654321",
"account": "00009876543",
"account_type": "CACC",
"name": "Maria Oliveira",
"document": "98765432100",
"pix_key": "maria@example.com"
},
"amount": "100.00",
"currency": "BRL",
"frequency": "DAILY",
"start_date": "2026-01-24T00:00:00Z",
"end_date": "2027-01-24T00:00:00Z",
"max_executions": 12,
"description": "Monthly subscription"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"mandate_id": {
"type": "string",
"description": "26-35 chars"
},
"participant_ispb": {
"type": "string"
},
"debtor": {
"type": "object",
"properties": {
"ispb": {
"type": "string"
},
"account": {
"type": "string"
},
"account_type": {
"type": "string"
},
"name": {
"type": "string"
},
"document": {
"type": "string"
}
},
"required": [
"ispb",
"account",
"account_type",
"name",
"document"
]
},
"creditor": {
"type": "object",
"properties": {
"ispb": {
"type": "string"
},
"account": {
"type": "string"
},
"account_type": {
"type": "string"
},
"name": {
"type": "string"
},
"document": {
"type": "string"
},
"pix_key": {
"type": "string"
}
},
"required": [
"ispb",
"account",
"account_type",
"name",
"document"
]
},
"amount": {
"type": "string",
"description": "Decimal string"
},
"currency": {
"type": "string"
},
"frequency": {
"type": "string",
"enum": [
"DAILY",
"WEEKLY",
"MONTHLY",
"YEARLY"
]
},
"start_date": {
"type": "string"
},
"end_date": {
"type": "string"
},
"max_executions": {
"type": "number"
},
"description": {
"type": "string"
}
},
"required": [
"mandate_id",
"participant_ispb",
"debtor",
"creditor",
"amount",
"currency",
"frequency",
"start_date"
]
}Headers
Content-Type: application/jsonBody
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"mandate_id": "MANDATE123456789012345678901234",
"participant_ispb": "12345678",
"amount": "100.00",
"frequency": "MONTHLY",
"start_date": "2026-01-24T00:00:00Z",
"end_date": "2027-01-24T00:00:00Z",
"next_execution": "2026-01-24T00:00:00Z",
"execution_count": 0,
"max_executions": 12,
"status": "PENDING_APPROVAL",
"created_at": "2026-01-24T10:30:12Z"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string"
},
"mandate_id": {
"type": "string"
},
"participant_ispb": {
"type": "string"
},
"amount": {
"type": "string"
},
"frequency": {
"type": "string"
},
"start_date": {
"type": "string"
},
"end_date": {
"type": "string"
},
"next_execution": {
"type": "string"
},
"execution_count": {
"type": "number"
},
"max_executions": {
"type": "number"
},
"status": {
"type": "string"
},
"created_at": {
"type": "string"
}
},
"required": [
"id",
"mandate_id",
"participant_ispb",
"amount",
"frequency",
"start_date",
"next_execution",
"execution_count",
"status",
"created_at"
]
}Create RecurrencePOST/api/v1/recurrence
Creates a new recurring payment (pain.009).
Headers
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Headers
Content-Type: application/jsonBody
{
"recurrences": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"mandate_id": "MANDATE123456789012345678901234",
"amount": "100.00",
"frequency": "MONTHLY",
"next_execution": "2026-02-24T00:00:00Z",
"execution_count": 1,
"status": "ACTIVE"
}
],
"total": 23
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"recurrences": {
"type": "array"
},
"total": {
"type": "number"
}
},
"required": [
"recurrences",
"total"
]
}List RecurrencesGET/api/v1/recurrence{?status,limit,offset}
Lists recurring payments.
- status
string(optional) Example: ACTIVEChoices:
PENDING_APPROVALACTIVEPAUSEDCOMPLETEDCANCELLED- limit
number(optional) Example: 50- offset
number(optional) Example: 0
Recurrence Details ¶
Headers
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Headers
Content-Type: application/jsonBody
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"mandate_id": "MANDATE123456789012345678901234",
"participant_ispb": "12345678",
"debtor": {
"ispb": "12345678",
"account": "00001234567",
"account_type": "CACC",
"name": "João Silva",
"document": "12345678901"
},
"creditor": {
"ispb": "87654321",
"account": "00009876543",
"account_type": "CACC",
"name": "Maria Oliveira",
"document": "98765432100"
},
"amount": "100.00",
"frequency": "MONTHLY",
"start_date": "2026-01-24T00:00:00Z",
"end_date": "2027-01-24T00:00:00Z",
"next_execution": "2026-02-24T00:00:00Z",
"execution_count": 1,
"max_executions": 12,
"status": "ACTIVE",
"created_at": "2026-01-24T10:30:12Z",
"updated_at": "2026-01-24T11:30:12Z"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string"
},
"mandate_id": {
"type": "string"
},
"participant_ispb": {
"type": "string"
},
"debtor": {
"type": "object",
"properties": {
"ispb": {
"type": "string"
},
"account": {
"type": "string"
},
"account_type": {
"type": "string"
},
"name": {
"type": "string"
},
"document": {
"type": "string"
}
},
"required": [
"ispb",
"account",
"account_type",
"name",
"document"
]
},
"creditor": {
"type": "object",
"properties": {
"ispb": {
"type": "string"
},
"account": {
"type": "string"
},
"account_type": {
"type": "string"
},
"name": {
"type": "string"
},
"document": {
"type": "string"
}
},
"required": [
"ispb",
"account",
"account_type",
"name",
"document"
]
},
"amount": {
"type": "string"
},
"frequency": {
"type": "string"
},
"start_date": {
"type": "string"
},
"end_date": {
"type": "string"
},
"next_execution": {
"type": "string"
},
"execution_count": {
"type": "number"
},
"max_executions": {
"type": "number"
},
"status": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": [
"id",
"mandate_id",
"participant_ispb",
"debtor",
"creditor",
"amount",
"frequency",
"start_date",
"next_execution",
"execution_count",
"status",
"created_at",
"updated_at"
]
}Get RecurrenceGET/api/v1/recurrence/{id}
Retrieves recurrence details.
- id
string(required) Example: 550e8400-e29b-41d4-a716-446655440000Recurrence ID
Headers
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Body
{
"amount": "150.00",
"frequency": "WEEKLY",
"end_date": "2027-06-24T00:00:00Z"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"amount": {
"type": "string"
},
"frequency": {
"type": "string"
},
"end_date": {
"type": "string"
}
}
}Headers
Content-Type: application/jsonBody
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"mandate_id": "MANDATE123456789012345678901234",
"amount": "150.00",
"frequency": "WEEKLY",
"status": "ACTIVE",
"updated_at": "2026-01-24T11:30:12Z"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string"
},
"mandate_id": {
"type": "string"
},
"amount": {
"type": "string"
},
"frequency": {
"type": "string"
},
"status": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": [
"id",
"mandate_id",
"amount",
"frequency",
"status",
"updated_at"
]
}Update RecurrencePUT/api/v1/recurrence/{id}
Updates recurrence (pain.012 - MandateAmendment).
- id
string(required) Example: 550e8400-e29b-41d4-a716-446655440000Recurrence ID
Recurrence Pause ¶
Headers
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Headers
Content-Type: application/jsonBody
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"status": "PAUSED",
"paused_at": "2026-01-24T11:30:12Z"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string"
},
"status": {
"type": "string"
},
"paused_at": {
"type": "string"
}
},
"required": [
"id",
"status",
"paused_at"
]
}Pause RecurrencePOST/api/v1/recurrence/{id}/pause
Pauses an active recurrence.
- id
string(required) Example: 550e8400-e29b-41d4-a716-446655440000Recurrence ID
Recurrence Resume ¶
Headers
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Headers
Content-Type: application/jsonBody
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"status": "ACTIVE",
"resumed_at": "2026-01-24T12:00:00Z"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string"
},
"status": {
"type": "string"
},
"resumed_at": {
"type": "string"
}
},
"required": [
"id",
"status",
"resumed_at"
]
}Resume RecurrencePOST/api/v1/recurrence/{id}/resume
Resumes a paused recurrence.
- id
string(required) Example: 550e8400-e29b-41d4-a716-446655440000Recurrence ID
Recurrence Cancel ¶
Headers
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Body
{
"reason_code": "CUST",
"reason_description": "Customer request"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"reason_code": {
"type": "string"
},
"reason_description": {
"type": "string"
}
},
"required": [
"reason_code"
]
}Headers
Content-Type: application/jsonBody
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"status": "CANCELLED",
"reason_code": "CUST",
"cancelled_at": "2026-01-24T12:00:00Z"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string"
},
"status": {
"type": "string"
},
"reason_code": {
"type": "string"
},
"cancelled_at": {
"type": "string"
}
},
"required": [
"id",
"status",
"reason_code",
"cancelled_at"
]
}Cancel RecurrencePOST/api/v1/recurrence/{id}/cancel
Cancels a recurrence (pain.011 - MandateCancellation).
- id
string(required) Example: 550e8400-e29b-41d4-a716-446655440000Recurrence ID
Recurrence Executions ¶
Headers
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Headers
Content-Type: application/jsonBody
Payment return operations using ISO 20022 pacs.004 messages.Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"recurrence_id": {
"type": "string"
},
"executions": {
"type": "array"
}
},
"required": [
"recurrence_id",
"executions"
]
}Get Execution HistoryGET/api/v1/recurrence/{id}/executions
Retrieves execution history for a recurrence.
- id
string(required) Example: 550e8400-e29b-41d4-a716-446655440000Recurrence ID
Returns ¶
Headers
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Headers
Content-Type: application/jsonBody
{
"returns": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"return_id": "D1234567820260124103012345abcde",
"original_end_to_end_id": "E8765432120260123103012345abcde",
"amount": "100.00",
"reason_code": "FR01",
"status": "SETTLED",
"requested_at": "2026-01-24T10:30:12Z"
}
],
"total": 34
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"returns": {
"type": "array"
},
"total": {
"type": "number"
}
},
"required": [
"returns",
"total"
]
}List ReturnsGET/api/v1/returns{?status,limit,offset}
Lists return requests.
- status
string(optional) Example: SETTLEDChoices:
REQUESTEDSENTACCEPTEDSETTLEDREJECTEDFAILEDCANCELLED- limit
number(optional) Example: 50- offset
number(optional) Example: 0
Return Details ¶
Headers
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Headers
Content-Type: application/jsonBody
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"return_id": "D1234567820260124103012345abcde",
"message_id": "M1234567820260124103012345abcde",
"original_payment_id": 123,
"original_end_to_end_id": "E8765432120260123103012345abcde",
"original_message_id": "M8765432120260123103012345abcde",
"original_amount": 10000,
"amount": "100.00",
"currency": "BRL",
"reason_code": "FR01",
"reason_text": "Fraud detected",
"requestor": {
"ispb": "12345678",
"account": "00001234567",
"name": "João Silva",
"document": "12345678901"
},
"counterparty": {
"ispb": "87654321",
"account": "00009876543",
"name": "Maria Oliveira",
"document": "98765432100"
},
"status": "SETTLED",
"requested_at": "2026-01-24T10:30:12Z",
"settled_at": "2026-01-24T10:30:20Z",
"created_at": "2026-01-24T10:30:12Z",
"updated_at": "2026-01-24T10:30:20Z"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string"
},
"return_id": {
"type": "string"
},
"message_id": {
"type": "string"
},
"original_payment_id": {
"type": "number"
},
"original_end_to_end_id": {
"type": "string"
},
"original_message_id": {
"type": "string"
},
"original_amount": {
"type": "number"
},
"amount": {
"type": "string"
},
"currency": {
"type": "string"
},
"reason_code": {
"type": "string"
},
"reason_text": {
"type": "string"
},
"requestor": {
"type": "object",
"properties": {
"ispb": {
"type": "string"
},
"account": {
"type": "string"
},
"name": {
"type": "string"
},
"document": {
"type": "string"
}
},
"required": [
"ispb",
"account",
"name",
"document"
]
},
"counterparty": {
"type": "object",
"properties": {
"ispb": {
"type": "string"
},
"account": {
"type": "string"
},
"name": {
"type": "string"
},
"document": {
"type": "string"
}
},
"required": [
"ispb",
"account",
"name",
"document"
]
},
"status": {
"type": "string"
},
"requested_at": {
"type": "string"
},
"settled_at": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": [
"id",
"return_id",
"message_id",
"original_payment_id",
"original_end_to_end_id",
"original_message_id",
"original_amount",
"amount",
"currency",
"reason_code",
"requestor",
"counterparty",
"status",
"requested_at",
"created_at",
"updated_at"
]
}Get ReturnGET/api/v1/returns/{id}
Retrieves return details.
- id
string(required) Example: 550e8400-e29b-41d4-a716-446655440000Return ID
Payment Return ¶
Headers
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Body
{
"amount": "100.00",
"reason_code": "AC03",
"reason_text": "Fraud detected by MED 2.0"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"amount": {
"type": "string",
"description": "Full or partial return"
},
"reason_code": {
"type": "string",
"enum": [
"AC03",
"AC04",
"AC06",
"AM04",
"AM09",
"FR01",
"MD06",
"SL02",
"RR04"
],
"description": "BACEN return reason code"
},
"reason_text": {
"type": "string"
}
},
"required": [
"amount",
"reason_code"
]
}Headers
Content-Type: application/jsonBody
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"return_id": "D1234567820260124103012345abcde",
"original_payment_id": 123,
"original_end_to_end_id": "E8765432120260123103012345abcde",
"amount": "100.00",
"reason_code": "FR01",
"status": "REQUESTED",
"created_at": "2026-01-24T10:30:12Z"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "string"
},
"return_id": {
"type": "string"
},
"original_payment_id": {
"type": "number"
},
"original_end_to_end_id": {
"type": "string"
},
"amount": {
"type": "string"
},
"reason_code": {
"type": "string"
},
"status": {
"type": "string"
},
"created_at": {
"type": "string"
}
},
"required": [
"id",
"return_id",
"original_payment_id",
"original_end_to_end_id",
"amount",
"reason_code",
"status",
"created_at"
]
}Create ReturnPOST/api/v1/payments/{id}/return
Creates a return for a payment.
- id
string(required) Example: 123Original payment ID or EndToEndId
Payment Returns List ¶
Headers
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Headers
Content-Type: application/jsonBody
{
"payment_id": 123,
"original_end_to_end_id": "E8765432120260123103012345abcde",
"returns": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"return_id": "D1234567820260124103012345abcde",
"amount": "50.00",
"reason_code": "AM09",
"status": "SETTLED",
"created_at": "2026-01-24T10:30:12Z"
}
]
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"payment_id": {
"type": "number"
},
"original_end_to_end_id": {
"type": "string"
},
"returns": {
"type": "array"
}
},
"required": [
"payment_id",
"original_end_to_end_id",
"returns"
]
}List Returns by PaymentGET/api/v1/payments/{id}/returns
Lists all returns for a specific payment.
- id
string(required) Example: 123Payment ID or EndToEndId
Payment Return Summary ¶
Headers
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Headers
Content-Type: application/jsonBody
{
"payment_id": 123,
"original_amount": "100.00",
"total_returned": "50.00",
"remaining_amount": "50.00",
"return_count": 1,
"can_return": true,
"last_return_at": "2026-01-24T10:30:12Z"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"payment_id": {
"type": "number"
},
"original_amount": {
"type": "string"
},
"total_returned": {
"type": "string"
},
"remaining_amount": {
"type": "string"
},
"return_count": {
"type": "number"
},
"can_return": {
"type": "boolean"
},
"last_return_at": {
"type": "string"
}
},
"required": [
"payment_id",
"original_amount",
"total_returned",
"remaining_amount",
"return_count",
"can_return"
]
}Get Return SummaryGET/api/v1/payments/{id}/return-summary
Gets return summary for a payment.
- id
string(required) Example: 123Payment ID or EndToEndId
Connectivity ¶
BACEN connectivity test operations.
Echo Test ¶
Headers
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...Body
{
"ispb": "12345678"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"ispb": {
"type": "string"
}
},
"required": [
"ispb"
]
}Headers
Content-Type: application/jsonBody
{
"ispb": "12345678",
"status": "success",
"message_id": "ECHO1234567820260124103012345",
"resource_id": "R1234567820260124103015abcdefgh",
"latency_ms": 85,
"timestamp": "2026-01-24T10:30:12Z"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"ispb": {
"type": "string"
},
"status": {
"type": "string"
},
"message_id": {
"type": "string"
},
"resource_id": {
"type": "string"
},
"latency_ms": {
"type": "number"
},
"timestamp": {
"type": "string"
}
},
"required": [
"ispb",
"status",
"message_id",
"resource_id",
"latency_ms",
"timestamp"
]
}Headers
Content-Type: application/jsonBody
{
"ispb": "12345678",
"status": "failed",
"error": "BACEN service unavailable",
"timestamp": "2026-01-24T10:30:12Z"
}Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"ispb": {
"type": "string"
},
"status": {
"type": "string"
},
"error": {
"type": "string"
},
"timestamp": {
"type": "string"
}
},
"required": [
"ispb",
"status",
"error",
"timestamp"
]
}EchoPOST/api/v1/echo
Sends pibr.001 echo/connectivity test to BACEN.
Generated by aglio on 24 Jan 2026