Integraciones Con qué se conecta AVEX
Esta página lista únicamente las integraciones verificables contra el código del repositorio. Cada tarjeta activa tiene una referencia (paquete en `package.json`, archivo de servicio, o schema) que un auditor puede abrir para confirmar. Las que están en camino dicen exactamente eso — sin fechas que no podemos cumplir.
Activas hoy
- Emitimos el archivo `.pkpass` con los campos y el diseño configurados por vertical.
- Firmamos con el certificado de AVEX — cadena Apple WWDR verificada por cada dispositivo receptor.
- Actualizaciones push vía APN para cambios de saldo, cuota, período o membresía.
Verificable: package.json → @walletpass/pass-js
- Firmamos JWTs con la cuenta de servicio de AVEX para encolar el pase en el wallet del destinatario.
- Usamos las plantillas oficiales (GenericObject, LoyaltyObject, TicketObject) por vertical.
- Actualizaciones de estado se propagan por `google-wallet-manager.ts` sin relogin del usuario final.
Verificable: backend/services/google-wallet-*
- Aislamiento por cliente a nivel de query (TenantContext) + por tabla donde la RLS pega.
- Drizzle genera migraciones determinísticas desde el schema TypeScript — nada de SQL a mano en producción.
- Connection pooling configurado para 15 conexiones de API + 8 de worker.
Verificable: backend/db/schema/*
- Un solo proveedor para todo el correo saliente — sin SMTP propio que mantener.
- Los templates viven en `backend/services/email/templates/` versionados junto con el código que los dispara.
- Rebotes y quejas se registran en `AuditLogService` para análisis posterior.
Verificable: package.json → resend
- URLs firmadas de corta duración para cada descarga — ningún asset es público.
- Organización por cliente (`client-{id}/`) + carpeta por tipo — sin colisiones entre tenants.
- Las imágenes del pase se normalizan antes de subir (dimensiones, formato) por `backend/services/image/*`.
Verificable: package.json → @aws-sdk/client-s3
- Instancia propia (self-hosted GlitchTip) — los reportes de error no cruzan la frontera de AVEX.
- Source maps se suben en cada build para trazas legibles sin recompilar.
- Release tracking por commit SHA — cada error se mapea al commit que lo introdujo.
Verificable: package.json → @sentry/nextjs
- Resync masivo del wallet (APN push + Google manager) corre como jobs encolados, no bloquea la API.
- Retries con backoff exponencial + deadletter automática.
- Sin broker externo — la cola vive en la misma base, un ops-surface menos que operar.
Verificable: package.json → graphile-worker
En camino
Las siguientes integraciones están en el radar pero aún no tienen código corriendo en producción. Publicamos esta lista para que una conversación comercial arranque con expectativas reales, no con una wishlist disfrazada de roadmap.
- Hoy el webhook de `utility-webhook` recibe eventos de pago, pero el PSP emisor se integra cliente por cliente.
- Queremos consolidar detrás de una pasarela regional (Bold, Wompi, o PayU Colombia) para bajar el set-up time.
- Sin ETA público — depende del primer cliente pagando que la necesite.
- Hoy usamos usuario + contraseña + MFA opcional — funciona pero no escala a organizaciones con IT propio.
- Dependencia directa: el primer cliente que pida SSO lo prioriza en el backlog.
Apple Wallet es una marca registrada de Apple Inc. Google Wallet es una marca registrada de Google LLC. AVEX no está afiliado ni es patrocinado por ninguna de las dos compañías. Las citamos porque son las plataformas sobre las que se distribuyen los pases que emite la plataforma.