Confirma pagos SPEI automáticamente en tu tienda de flores en línea y entrega a tiempo con apiCEP
El pedido llega el miércoles. La boda es el sábado.
Una cliente ordena arreglos florales para su boda el sábado. Elige pagar por transferencia bancaria porque no tiene tarjeta o prefiere no usarla en línea. Hace la transferencia, llena el formulario de "Notificar pago", sube la fecha y el monto — y espera.
El equipo de la florería recibe decenas de notificaciones similares ese día. Alguien tiene que revisar cada una: abrir el formulario, verificar que el monto corresponde al pedido, confirmar con el banco, actualizar el estado del pedido y dar la señal para que el equipo de producción empiece a preparar el arreglo.
Si esa revisión tarda 3 horas, el equipo de producción arranca 3 horas tarde. Y en un pedido con fecha de entrega fija — una boda, un cumpleaños, un velorio — esas horas importan.
Con apiCEP, la confirmación ocurre en segundos. El equipo de producción arranca sola.
Por qué los pagos por transferencia son especialmente críticos en florerías online
Los negocios de flores tienen una característica que los hace distintos de cualquier otro eCommerce: los productos tienen fecha de caducidad y fecha de entrega simultáneas. Un arreglo floral para el 14 de febrero no puede prepararse el 12 ni entregarse el 15.
Esa restricción hace que la confirmación del pago no sea solo un trámite administrativo — es el punto de partida del proceso productivo.
Los pedidos urgentes son los más comunes. Coronas fúnebres, arreglos de último momento para cumpleaños olvidados, flores para un hospital — son pedidos donde el comprador hace la transferencia esperando que la florería confirme y prepare en cuestión de horas.
Los pedidos de alta fecha tienen tolerancia cero. Bodas, XV años, graduaciones, eventos corporativos — el cliente pagó semanas antes, pero si la confirmación del pago no se procesa a tiempo, la preparación se retrasa y la entrega también.
El volumen de pedidos por transferencia sube en temporadas pico. San Valentín, Día de las Madres, Día de Muertos — los días donde los compradores son más, el equipo está más ocupado y la revisión manual de comprobantes tarda más.
Cómo funciona apiCEP en una florería online con WooCommerce o cualquier CMS
apiCEP valida el comprobante SPEI contra Banxico en menos de 10 segundos. Para una tienda de flores en línea, la integración puede ser tan simple como conectar el formulario de notificación de pago con una sola llamada a la API.
El flujo automatizado:
- El cliente completa su pedido en la tienda y elige pagar por transferencia bancaria.
- La tienda muestra la CLABE y los datos bancarios para la transferencia.
- El cliente hace la transferencia y sube el comprobante en el formulario de notificación de pago.
- El sistema envía automáticamente la imagen a apiCEP.
- apiCEP valida contra Banxico: el pago es real, el monto corresponde al pedido.
- Si el pago es válido:
- El pedido cambia de estado a "Pago confirmado" automáticamente.
- Se envía confirmación por correo al cliente.
- Se notifica al equipo de producción que puede comenzar a preparar el arreglo.
- Si el comprobante no se confirma: el cliente recibe aviso para verificar su comprobante o intentar de nuevo.
Sin que nadie tenga que revisar nada manualmente.
La integración técnica: el endpoint de validación
curl -X POST https://api.apicep.cloud/validate-transfer \\
-H \"Authorization: Bearer TU_API_KEY\" \\
-H \"Content-Type: application/json\" \\
-d '{
\"imageUrl\": \"https://tufloreria.com/uploads/comprobante-pedido-2847.jpg\",
\"beneficiary\": {
\"clabe\": \"TU_CLABE_18_DIGITOS\",
\"bank\": \"HSBC\",
\"name\": \"Florería Económica S.A. de C.V.\"
}
}'
La respuesta llega en segundos con todo lo que el sistema necesita para confirmar el pedido:
{
\"validationId\": \"b2c3d4e5-f6a7-8901-bcde-f12345678901\",
\"status\": \"valid\",
\"confidence\": 0.97,
\"extracted\": {
\"amount\": 1850.00,
\"senderName\": \"Gabriela Torres Medina\",
\"date\": \"2026-05-03\"
},
\"validation\": {
\"banxicoConfirmed\": true,
\"cepStatus\": \"LIQUIDADA\"
},
\"cepDetails\": {
\"operationDate\": \"2026-05-03T10:14:33\",
\"trackingKey\": \"2026HSBC0000227811\",
\"amount\": 1850.00
},
\"downloads\": {
\"cepPdf\": \"https://api.apicep.cloud/files/cep-xxx.pdf\",
\"cepXml\": \"https://api.apicep.cloud/files/cep-xxx.xml\"
}
}
Regla crítica: verificar siempre status === \"valid\", validation.banxicoConfirmed === true y que extracted.amount >= total del pedido antes de confirmar.
Documentación completa en apicep.cloud/documentacion.
Lógica de confirmación automática de pedido
async function confirmarPedidoConPago(pedidoId, imageUrl) {
const pedido = await getPedido(pedidoId);
const result = await fetch('https://api.apicep.cloud/validate-transfer', {
method: 'POST',
headers: { 'Authorization': `Bearer ${process.env.APICEP_API_KEY}` },
body: JSON.stringify({
imageUrl,
beneficiary: {
clabe: process.env.TU_CLABE,
bank: process.env.TU_BANCO,
name: process.env.TU_NOMBRE
}
})
}).then(r => r.json());
const pagoValido =
result.status === 'valid' &&
result.validation?.banxicoConfirmed === true &&
result.extracted?.amount >= pedido.total;
if (pagoValido) {
// Actualizar estado del pedido
await actualizarEstadoPedido(pedidoId, 'pago_confirmado', {
validationId: result.validationId,
cepStatus: result.validation.cepStatus, // \"LIQUIDADA\"
trackingKey: result.cepDetails?.trackingKey,
amount: result.extracted.amount
});
// Iniciar producción del arreglo
await notificarEquipoProduccion(pedidoId, {
producto: pedido.items,
fechaEntrega: pedido.fechaEntrega,
urgente: pedido.esUrgente
});
// Confirmación al cliente
await enviarConfirmacionCliente(pedido.email, pedidoId, pedido.fechaEntrega);
// Guardar CEP oficial como respaldo del cobro
await guardarCEP(pedidoId, result.downloads);
} else if (result.status === 'pending') {
await notificarCliente(pedido.email,
'⏳ Tu transferencia está en proceso. Te confirmaremos en cuanto Banxico la liquide.'
);
await programarReintento(pedidoId, imageUrl, 300); // reintento en 5 min
} else {
await notificarCliente(pedido.email,
'❌ No pudimos verificar tu comprobante. Por favor revisa que sea el comprobante correcto.'
);
}
}
El caso de los pedidos urgentes: coronas fúnebres y entregas express
En una florería, no todos los pedidos son iguales en términos de urgencia. Las coronas fúnebres son probablemente el tipo de pedido más sensible al tiempo de cualquier eCommerce en México:
- El cliente llama o pide en línea con pocas horas de margen.
- La entrega tiene que ocurrir antes del velorio, con hora fija.
- Un retraso en la confirmación del pago es un retraso directo en la entrega.
Con verificación manual, ese proceso puede tardar horas si el equipo está ocupado con otros pedidos. Con apiCEP, el pago se confirma en segundos y el equipo de producción arranca inmediatamente — sin importar si son las 10am o las 10pm.
Temporadas pico: cuando la revisión manual colapsa
San Valentín, Día de las Madres, Día de Muertos — en una florería online, esas fechas representan el mayor volumen de pedidos del año. Son también los días donde el equipo está más presionado y tiene menos tiempo para revisar comprobantes.
El riesgo no es solo el tiempo de revisión: es que un comprobante falso pase desapercibido entre el volumen, o que pedidos legítimos se retrasen porque nadie llegó a revisar a tiempo.
Con apiCEP, el volumen de comprobantes no afecta el tiempo de confirmación. El sistema valida cada uno en segundos sin importar cuántos lleguen simultáneamente.
Formularios de notificación de pago: integrar apiCEP sin rediseñar la tienda
Si tu florería ya tiene un formulario de "Notificar pago" — ya sea en WooCommerce, Shopify, una landing personalizada o un formulario de Contact Form 7 — integrar apiCEP no requiere rediseñar nada. Solo se agrega la llamada a la API en el backend del formulario cuando llega la imagen del comprobante.
Para WooCommerce específicamente:
add_action('wpcf7_mail_sent', 'procesar_notificacion_pago');
function procesar_notificacion_pago($contact_form) {
$submission = WPCF7_Submission::get_instance();
$data = $submission->get_posted_data();
$upload = $submission->uploaded_files();
$pedido_id = sanitize_text_field($data['nro-pedido'] ?? '');
$comprobante_url = obtener_url_temporal($upload['comprobante'][0] ?? '');
if (!$comprobante_url || !$pedido_id) return;
// Llamada a apiCEP
$response = wp_remote_post('https://api.apicep.cloud/validate-transfer', [
'headers' => [
'Authorization' => 'Bearer ' . APICEP_API_KEY,
'Content-Type' => 'application/json',
],
'body' => json_encode([
'imageUrl' => $comprobante_url,
'beneficiary' => [
'clabe' => TU_CLABE,
'bank' => 'HSBC',
'name' => get_bloginfo('name')
]
])
]);
$result = json_decode(wp_remote_retrieve_body($response), true);
if ($result['status'] === 'valid' && $result['validation']['banxicoConfirmed'] === true) {
wc_update_order_item_meta($pedido_id, '_pago_spei_validado', $result['validationId']);
wc_create_order_note($pedido_id, 'Pago SPEI confirmado por Banxico. CEP: ' . $result['cepDetails']['trackingKey']);
wc_update_order_status($pedido_id, 'processing', 'Pago verificado automáticamente por apiCEP');
}
}
Confianza del comprador: confirmación inmediata en lugar de esperas
Cuando un comprador hace una transferencia y recibe confirmación inmediata de que su pago fue verificado contra Banxico, la experiencia es radicalmente diferente a esperar horas para saber si "ya lo revisaron".
Para compras emocionales — flores para una boda, para un cumpleaños, para un velorio — esa incertidumbre de esperar confirmación tiene un peso especial. La confirmación inmediata cierra el loop de ansiedad del comprador y refuerza la confianza en la tienda.
El campo cepStatus: \"LIQUIDADA\" que devuelve apiCEP es el estatus oficial de Banxico — puedes mostrárselo al cliente directamente como prueba de que su pago fue procesado.
Comparativa: notificación manual vs. confirmación automática con apiCEP
| Aspecto | Notificación manual | Con apiCEP |
|---|---|---|
| Tiempo entre comprobante y pedido confirmado | 1–6 horas | Menos de 15 segundos |
| Riesgo de comprobante falso | Alto | Eliminado — Banxico lo confirma |
| Pedidos nocturnos o de fin de semana | Represados hasta el día hábil | En tiempo real, 24/7 |
| Temporadas pico (14 feb, Día de las Madres) | Cuello de botella crítico | Sin diferencia operativa |
| Experiencia del comprador | Incertidumbre de horas | Confirmación instantánea |
| Inicio de producción del arreglo | Después de la revisión manual | Automático al confirmar pago |
| CEP oficial como respaldo del cobro | No disponible | XML + PDF por cada pago |
| cepStatus: \"LIQUIDADA\" visible al cliente | No | Sí — estatus oficial Banxico |
Planes sin contratos ni mensualidades forzosas
| Plan | Precio | Validaciones | Costo por pedido |
|---|---|---|---|
| Bienvenida | Gratis | 50 | — |
| Básico | $100 MXN | 200 | $0.50 MXN |
| Premium | $200 MXN | 800 | $0.25 MXN |
| Business | $400 MXN | 1,600 | $0.25 MXN |
Para una florería con 150 pedidos mensuales por transferencia, el plan Premium cubre todos los meses del año a $0.25 MXN por pedido — $37.50 MXN al mes para eliminar completamente la revisión manual.
Empieza con 50 validaciones gratuitas
Si tu florería en línea hoy confirma pagos SPEI esperando que alguien revise el comprobante antes de preparar el pedido, apiCEP puede automatizar ese proceso desde hoy.
Crea tu cuenta en apicep.cloud — las primeras 50 validaciones son sin costo. Sin RFC. Sin contrato. Prueba con pedidos reales antes de comprometerte con cualquier plan.