Tendencia de Ingresos
Recepciones Recientes (En Vivo)
Base de Datos de Pagos
| Fecha y Hora | Nro. Referencia / User | Origen | Monto Recibido | Estado | Acciones |
|---|
Crecimiento del Monto Acumulado
Central de Integración Automática
Conecta PagoListo con tu banco o aplicaciones externas.
Configuración Definitiva de MacroDroid para PagoListo
Sigue estos pasos exactamente en este orden. Está diseñado para ser rápido, a prueba de errores y compatible con el sistema multimoneda.
-
1
Crear la Macro y las Variables Locales
Es fundamental crear las variables antes de configurar las acciones para que aparezcan en los menús desplegables.
1. Abre MacroDroid y toca en Añadir Macro.
2. Arriba del todo, en "Introducir nombre", escribe:PagoListo BDV.
3. Ve a la sección de Variables locales y toca el botón +:
• Nombre:var_monto| Tipo: Cadena (String). Acepta.
• Nombre:var_referencia| Tipo: Cadena (String). Acepta. -
2
Configurar el Disparador (Panel Rojo)
Esto le dirá a MacroDroid cuándo debe actuar.
Para App Bancaria (Notificaciones):
1. Toca el + en el panel rojo de Disparadores.
2. Ve a Eventos de dispositivo -> Notificación -> Notificación recibida.
3. Selecciona la app de tu banco (ej: BDV en línea). Acepta.
4. En "Coincidencia de texto", déjalo en Cualquiera y acepta.Para Pagos por SMS (Provincial/Mercantil):
1. Toca el + en el panel rojo.
2. Ve a Eventos de llamadas/SMS -> SMS Recibido.
3. Selecciona Seleccionar Número(s) y añade el número del banco (ej:77107para Provincial). Acepta.
4. En "Contenido del SMS", déjalo en Cualquiera y acepta. -
3
Configurar las Acciones (Panel Azul)
Acción 1 (Extraer Monto): Toca + -> Manipulación de texto -> Extraer texto.
- Texto original: Toca [...] -> Notificación -> Texto de la notificación[not_text](Para SMS usa `sms_message`).
- Expresión regular:(?<=Bs\.\s?)[0-9,.]+
*SMS Provincial (77107) o Mercantil:(?<=Bs\s?)[0-9,.]+
- Guardar en: Seleccionavar_monto.Acción 2 (Extraer Referencia): Toca + -> Manipulación de texto -> Extraer texto.
- Texto original:[not_text](o `sms_message`)
- Expresión regular:(?<=Ref[a-zA-Z:\. ]{0,4})[0-9]{4,}
*SMS Mercantil:(?<=referencia\s)[0-9]+| Provincial:(?<=Ref\.\s)[0-9]+
- Guardar en: Seleccionavar_referencia.Acción 3 (Enviar a Supabase): Toca + -> Aplicaciones -> Petición HTTP.
- Método: POST
- URL:Configura Supabase en Ajustes
- Pestaña Cabecera: AñadeapikeyyAuthorization(Bearer + Tu Key).
- Pestaña Cuerpo: Tipo Personalizado (JSON). Pega esto:{ "referencia": "[lv=var_referencia]", "monto": "[lv=var_monto]", "moneda": "Bs" } -
4
Guardar
En la esquina inferior derecha, toca el botón circular con el ícono de Check (✔️) para guardar la macro completa. ¡Listo!
Automatización en la Nube con Google Apps Script
Como los navegadores web bloquean la lectura directa de correos por seguridad, la forma más profesional y 100% gratuita de registrar pagos de Binance es usando un Script en tu Gmail. Este código se ejecutará automáticamente en los servidores de Google cada vez que llegue un correo, extrayendo el monto y el usuario remitente.
-
1
Abre Google Apps Script
Ve a script.google.com e inicia sesión con el Gmail donde recibes las notificaciones de Binance. Haz clic en "Nuevo Proyecto".
-
2
Pega el Código de Integración
Borra el código que aparece por defecto, copia el siguiente script y pégalo.
¡Importante! Si ya conectaste tu base de datos en Configuración, tus credenciales ya están inyectadas automáticamente en este código.function checkBinanceEmails() { var supabaseUrl = "URL_DE_TU_SUPABASE/rest/v1/pagos"; var supabaseKey = "TU_API_KEY"; // Bucle agresivo: Escanea varias veces dentro del minuto permitido por Google for (var loop = 0; loop < 5; loop++) { var threads = GmailApp.search('subject:"[Binance] Payment Receive Successful" is:unread newer_than:1d'); for (var i = 0; i < threads.length; i++) { var messages = threads[i].getMessages(); for (var j = 0; j < messages.length; j++) { var msg = messages[j]; if (msg.isUnread()) { // Filtro estricto: ignorar correos con más de 60 segundos de antigüedad var msgDate = msg.getDate(); var diffSeconds = (new Date().getTime() - msgDate.getTime()) / 1000; if (diffSeconds > 60) { msg.markRead(); continue; } var body = msg.getPlainBody(); var amountMatch = body.match(/Amount:[\s\S]*?([0-9.]+)\s*USDT/i); var monto = amountMatch ? parseFloat(amountMatch[1]) : 0; var fromMatch = body.match(/From:[\s\*]*([\s\S]*?)[\s\*]*Amount:/i); var referencia = fromMatch ? fromMatch[1].replace(/[\r\n\*_]/g, '').trim() : "BIN-" + msg.getId().substring(0, 8).toUpperCase(); if(monto > 0) { var payload = { "referencia": referencia, "monto": monto, "moneda": "USDT", "estado": "pending" }; try { UrlFetchApp.fetch(supabaseUrl, { "method": "post", "headers": { "apikey": supabaseKey, "Authorization": "Bearer " + supabaseKey, "Content-Type": "application/json" }, "payload": JSON.stringify(payload) }); } catch (e) {} } msg.markRead(); } } } // Pausa de 10 segundos antes de volver a escanear (hace la recepción casi instantánea) if (loop < 4) Utilities.sleep(10000); } } -
3
Crear el Disparador (Automatización)
1. Guarda el proyecto (icono de disquete).
2. En el menú izquierdo, haz clic en el ícono de reloj (Disparadores).
3. Añadir disparador -> Selecciona la funcióncheckBinanceEmails-> Fuente del evento: Basado en el tiempo -> Tipo: Minutos -> Cada minuto.
4. Guarda y acepta los permisos de Google. ¡Listo! Tu sistema procesará USDT automáticamente.
Ajustes Financieros y Visuales
Moneda de Visualización
Moneda en la que se calculan los totales
Margen P2P USDT (%)
Aumenta la tasa automática para igualar anuncios más altos (Ej: 1.04)
Tasa Manual (USDT / USD)
Ignorar APIs y usar tasa fija en Bs.
Alerta Sonora
Sonido al sincronizar nuevos ingresos
Modo Oscuro
Cambiar apariencia de la interfaz
Notificaciones de Escritorio
Recibir alertas nativas de Windows/Mac
Mantenimiento
Estas acciones son destructivas y no se pueden deshacer.