Accept Bre-B Payments in Colombia
Enable instant bank-to-bank transfers for Colombian customers. Real-time confirmation, 24/7 availability.
Problem
- Card approval rates in Colombia are 60-70% (international providers even lower)
- PSE only works business hours Monday-Friday
- Customers prefer bank transfers over cards
- Manual bank transfer confirmations take hours
What You’ll Build
- Bre-B instant payment acceptance
- Real-time payment confirmation
- Automatic reconciliation via webhooks
Architecture
Customer → Selects Bre-B → Chooses bank → Authorizes → Instant confirmation
Payment completes in under 60 seconds. Works 24/7 including weekends and holidays.
Steps
1. Get API Credentials
Sign up at console.orangepill.cloud:
- Navigate to Developers → API Keys
- Copy your test key:
sk_test_... - Save webhook secret for later
2. Create Payment Request
const payment = await orangepill.paymentRequests.create({
amount: 50000,
currency: "COP",
payment_method_types: ["bre_b"],
customer_email: "[email protected]",
success_url: "https://example.com/success",
cancel_url: "https://example.com/cancel"
});
// Redirect customer to payment.url
3. Customer Pays
Customer experience:
- Sees list of 20+ Colombian banks
- Selects their bank (Bancolombia, Davivienda, BBVA, etc.)
- Authorizes payment in banking app
- Returns to your site instantly
4. Receive Confirmation
Listen for webhooks:
app.post('/webhooks/orangepill', (req, res) => {
const event = req.body;
if (event.type === 'payment.succeeded') {
const payment = event.data;
// Fulfill order immediately
fulfillOrder(payment.metadata.order_id);
}
res.sendStatus(200);
});
5. Test End-to-End
Use sandbox mode:
# Test payment
curl https://api.orangepill.cloud/v1/payment-requests \
-H "Authorization: Bearer sk_test_..." \
-d amount=50000 \
-d currency=COP \
-d payment_method_types[]=bre_b
Simulate success/failure in test mode.
6. Handle Edge Cases
Set up automatic retries:
const payment = await orangepill.paymentRequests.create({
amount: 50000,
currency: "COP",
payment_method_types: ["bre_b", "pse", "card"],
// Fallback to PSE/cards if Bre-B fails
});
7. Go Live
Switch to production:
- Replace
sk_test_withsk_live_key - Update webhook endpoint to production URL
- Monitor in dashboard
Code Sample
Full integration:
// Create Bre-B payment
async function createBreBPayment(orderAmount, customerEmail, orderId) {
const payment = await orangepill.paymentRequests.create({
amount: orderAmount,
currency: "COP",
payment_method_types: ["bre_b"],
customer_email: customerEmail,
metadata: { order_id: orderId }
});
return payment.url; // Redirect customer here
}
Outcome
Customers pay instantly with their preferred Colombian banks. No card declines, no business hours restrictions.
Typical results:
- 85-95% approval rates (vs 60-70% for cards)
- 60-second average payment time
- 24/7 availability including weekends
- Zero manual reconciliation
What to read next
Bre-B adoption
Full enterprise strategy for Bre-B rollout in your store or app.
Reduce failed payments
Smart routing, retries, and fallbacks to maximize approval rates.
Payments API
Reference for creating Bre-B payments, webhooks, and reconciliation.
Inside Colombia's instant payment rails
How Bre-B is reshaping conversion for LATAM commerce.