Files
shopit-back/app/Domains/Integration/documentacion/README.md
ncoronel 02cf3f3773 Add tests for ticket validity and event date formatting
- Create TicketValiditySchemaTest to verify database schema for ticket validity.
- Update CatalogModelsTest to include tests for event date attributes and selection options.
- Introduce EventDateTextFormatterTest for formatting event dates in Spanish.
- Refactor EventModelsTest to include validity time relationships.
- Add SaleDetailResourceTest to ensure correct serialization of purchase items.
- Enhance TicketTest with validity time checks and status management.
- Implement ValidityTimeResourceTest to validate resource output for different validity types.
- Add ValidityTimeTest to verify casting and validity checks for validity time types.
2026-08-11 12:41:35 -03:00

1.3 KiB

Dominio Integration

Propósito

Gestiona integraciones externas disponibles y su configuración por tenant. Incluye correo y pagos mediante Telepagos.

Modelo y seguridad

  • Integration: definición global de una integración.
  • TenantIntegration: configuración y credenciales de una integración para un tenant.
  • EncryptedIntegrationData: cast que protege los datos sensibles persistidos.
  • TenantIntegrationService: consulta y configura integraciones del tenant.

Servicios externos

  • BaseIntegrationService: base para resolver configuración, URL y cliente del tenant.
  • MailService: envío de correo usando la integración configurada.
  • TelepagosIntegrationService: autenticación, caché de token, generación de QR y consulta de cobros.
  • TelepagosWebhookService: procesa notificaciones recibidas desde Telepagos.

Endpoints

  • CRUD global bajo /integrations.
  • Consulta y configuración por tenant bajo /{tenant_code}/integrations.
  • POST /webhooks/telepagos/{tenant_codigo} para notificaciones del proveedor.

Dependencias y reglas

Se integra con Tenant y con el checkout de Purchase. Notification utiliza MailService. Las credenciales no deben exponerse en respuestas ni logs; los webhooks deben validar su contrato antes de alterar una compra.