Creating Bre-B Keys
Overview
Bre-B is Colombia’s immediate payment system (Sistema de Pagos Inmediatos - SPI), enabling real-time transfers between individuals, businesses, and financial entities. At the heart of this system lies Key Management, it revolves on the unique identifier to simplify payments.
Core Concepts
In Bre-B, a Key (or “alias”) serves as a simplified, human-readable identifier for a user’s bank account. Instead of sharing long account numbers, users register a key that can be used to send or receive payments instantly.
Each key is mapped to a specific account and must be globally unique within the Bre-B ecosystem.
The relationship type between an account and key is 1:M, which means an account may have one or more keys associated.
Business Value
Bre-B key management provides a standardized, interoperable layer that benefits all participants in the financial ecosystem:
For Entities
- Enhances customer experience and adoption through easier onboarding and simplified transfers.
- Increases operational efficiency with lower errors.
For Users
- Enables real-time payments using simple identifiers.
- Avoids errors related to entering long account numbers.
- Makes payment experiences more intuitive, ideal for mobile-first scenarios.
For Regulators
- Promotes financial inclusion and broader access to digital payments.
- Provides centralized traceability of key ownership and transfers.
- Aligns with regional interoperability goals across Latin America.
Benefits of Key-Based Transfers
Benefit | Description |
---|---|
Simplified UX | Customers initiate transfers with one of the supported Key Types, not an account number. |
Speed & Reliability | Payments occur in real time, with instant confirmation. |
Interoperability | Keys are usable across participating banks and entities. |
Security & Privacy | Minimizes the exposure of sensitive financial data. |
Multiple Keys per Account | A single account may have multiple identifiers. |
Example of Use Cases
Peer-to-Peer (P2P) Transfers
A customer sends money to a friend using their email address or cellphone. No need to ask for or store account details.
Person-to-Merchant (P2M) Payments
A small merchant registers a key (tiendaelalcalde@correo.com
) and receives instant customer payments directly into their business account.
Key Lifecycle
- Create a Key: Map a
key_value
to an account (account_id
) with the Create Keys endpoint. - Update a Key: Change the associated account (e.g., if the user switches financial entities).
- Suspend a Key: Block key temporarily for security reasons.
- Delete a Key: Unlink the key from the associated customer account.
- Resolve a Key: Search the registry to resolve keys into accounts.
Create a Key
For more information about the endpoint details, please refer to Create Keys page.
Key Types and Key Value
The key_type
field defines the format and purpose of the key used to identify a bank deposit account within the Bre-B system. These keys reduce friction, enabling fast, secure payments between customers (Individual and Business), across financial entities, without the need for traditional account information.
Key Type (Code) | Description | Key Value |
---|---|---|
NRIC | Document Number | 7922089 |
M | Mobile Phone Number | +573001234567 |
E | user@example.com | |
O | Custom Alias | @client_alias_123 |
B | Entity Commercial Code | 0012345678 |
The combination of key_type
and key_value
must be unique across the entire Bre-B infrastructure.
Request Example
Parameter | Description |
---|---|
account_id | ID of the account to link the key to. |
key_type | Type of key. see 'Key Types and Key Value' section above for valid values. |
key_value | Unique identifier for the key. Must match the format of the given type. |
The account_id
relates to the ID
generated in the Link Account endpoint. You may refer to the Product Guide Customer Onboarding, to review the Onboarding process.
Request Body
curl --location 'https://bre-b-sandbox.api.visionamos.passportfintech.com/v1/paas/entities/customers/accounts/keys' \
--header 'Content-Type: application/json' \
--header 'Authorization: YOUR_ACCESS_TOKEN' \
--data-raw '{
"account_id": "7472937f-cbe2-4e34-8b5e-6067e196325c",
"key_type": "E",
"key_value": "jimmyjohns22000@passportfintech.com"
}'
Response Example
Parameter | Description |
---|---|
id | Unique ID of the key in the system. |
key_value | The value registered for this key. |
account_id | The account this key is linked to. |
key_type | The type of key created (e.g., E for email). |
Response Body
{
"key_value": "jimmyjohns22000@passportfintech.com",
"account_id": "7472937f-cbe2-4e34-8b5e-6067e196325c",
"id": "56188354-18be-412d-9e0b-64c8e0f54541",
"key_type": "E"
}
Support and Resources
- Visit the Postman Collection for practical examples.
- Contact your Passport representative or technical support for further guidance.