¿Por qué Elegir MercadoPago?
MercadoPago es la plataforma de pagos más popular en Argentina, con más del 70% de participación de mercado. Integrarla en tu e-commerce es fundamental para maximizar conversiones.
Ventajas de MercadoPago
- Reconocimiento de marca: Los usuarios confían en MercadoPago
- Múltiples métodos de pago: Tarjetas, efectivo, cuenta MercadoPago
- Financiación: Cuotas sin interés o con interés
- Liberación automática: El dinero se acredita automáticamente
- Seguridad PCI DSS: Máxima seguridad en transacciones
Tipos de Integración
1. Checkout Pro (Redirect)
El usuario es redirigido a una página de MercadoPago:
- ✅ Más fácil de implementar (menos código)
- ✅ MercadoPago maneja todo el flujo de pago
- ✅ Menos responsabilidad PCI DSS
- ❌ Usuario sale de tu sitio
- ❌ Menos control sobre la experiencia
2. Checkout API (On-site)
El pago se procesa sin salir de tu sitio:
- ✅ Usuario nunca sale de tu tienda
- ✅ Experiencia totalmente personalizada
- ✅ Mayor confianza del usuario
- ❌ Más complejo de implementar
- ❌ Mayor responsabilidad de seguridad
3. Checkout Bricks (Modular)
Componentes pre-construidos que puedes integrar:
- ✅ Balance entre facilidad y control
- ✅ Componentes listos para usar
- ✅ Personalización CSS
- ✅ Responsive por defecto
Implementación con Laravel
Paso 1: Instalar SDK
composer require mercadopago/dx-php
Paso 2: Configurar Credenciales
// .env
MERCADOPAGO_PUBLIC_KEY=APP_USR-xxxxxx
MERCADOPAGO_ACCESS_TOKEN=APP_USR-xxxxxx
Paso 3: Crear Preferencia de Pago
use MercadoPago\SDK;
use MercadoPago\Preference;
SDK::setAccessToken(config('services.mercadopago.access_token'));
$preference = new Preference();
$preference->items = array(
array(
'title' => $cart->product_name,
'quantity' => $cart->quantity,
'unit_price' => $cart->price
)
);
$preference->back_urls = array(
"success" => route('payment.success'),
"failure" => route('payment.failure'),
"pending" => route('payment.pending')
);
$preference->auto_return = "approved";
$preference->save();
Webhooks: Notificaciones Automáticas
Los webhooks son fundamentales para actualizar el estado del pedido automáticamente.
Configurar Webhook
- Ir a tu cuenta de MercadoPago
- Configuraciones → Webhooks
- Agregar URL: https://tusitio.com/webhook/mercadopago
- Eventos: payment
Procesar Webhook en Laravel
public function webhook(Request $request)
{
$payment_id = $request->input('data.id');
SDK::setAccessToken(config('services.mercadopago.access_token'));
$payment = Payment::find_by_id($payment_id);
if($payment->status == 'approved') {
// Marcar pedido como pagado
Order::where('payment_id', $payment_id)
->update(['status' => 'paid']);
}
return response()->json(['success' => true]);
}
Manejo de Estados
| Estado | Descripción | Acción |
|---|---|---|
| approved | Pago aprobado | Confirmar pedido, enviar email |
| pending | Pago pendiente (ej: Rapipago) | Esperar confirmación |
| in_process | En proceso de revisión | Esperar aprobación |
| rejected | Pago rechazado | Notificar al usuario, liberar stock |
| refunded | Devuelto al comprador | Actualizar estado, registrar devolución |
| cancelled | Cancelado | Liberar stock, notificar |
Cuotas y Financiación
Cuotas Sin Interés
Ofrecer cuotas sin interés aumenta conversión hasta 40%:
$preference->payment_methods = array(
"installments" => 12,
"default_installments" => 3
);
Descuentos por Método de Pago
$preference->differential_pricing = array(
"id" => 123456 // ID de campaña
);
Testing
Tarjetas de Prueba
- VISA aprobada: 4509 9535 6623 3704
- MASTERCARD aprobada: 5031 7557 3453 0604
- VISA rechazada: 4304 8304 3333 3333
Usuarios de Prueba
Crear en: https://www.mercadopago.com.ar/developers/panel/test-users
Seguridad
Validar Webhooks
$signature = $request->header('x-signature');
$id = $request->header('x-request-id');
// Validar firma
$expected = hash_hmac('sha256', $id . $data, config('services.mercadopago.webhook_secret'));
if($signature !== $expected) {
return response()->json(['error' => 'Invalid signature'], 403);
}
Nunca Exponer Access Token
- Solo usar en backend
- No incluir en JavaScript
- No commitear en Git
- Rotar periódicamente
Errores Comunes y Soluciones
Error: "Invalid credentials"
Causa: Access Token incorrecto o expirado
Solución: Verificar credenciales en .env, usar las de producción no las de test
Error: "amount must be greater than 0"
Causa: Precio en formato incorrecto
Solución: Enviar como float/decimal, no como string
Webhook no llega
Causa: URL no accesible o HTTPS inválido
Solución: Verificar SSL válido, probar con https://webhook.site primero
Optimización de Conversión
1. Mostrar Métodos de Pago
Muestra los logos de MercadoPago en el producto
2. Destacar Cuotas Sin Interés
"Hasta 12 cuotas sin interés" aumenta conversión 35%
3. Mensaje de Seguridad
"Pago 100% seguro con MercadoPago" genera confianza
4. Proceso de Checkout Rápido
Menos pasos = más conversión
Nuestra Implementación
En SofihaCloud incluimos:
- Checkout Pro y API integrados
- Webhooks configurados y probados
- Manejo automático de todos los estados
- Notificaciones por email
- Panel de administración de pagos
- Reportes de transacciones
- Reconciliación automática
Conclusión
MercadoPago es fundamental para cualquier e-commerce en Argentina. Una integración bien hecha puede marcar la diferencia entre una venta exitosa y un carrito abandonado.
¿Necesitás integrar MercadoPago? Contactanos para una implementación profesional.