diff --git a/tenants/acme/96-ingress-garmin-public.yaml b/tenants/acme/96-ingress-garmin-public.yaml index 2af5fec..0a71fc2 100644 --- a/tenants/acme/96-ingress-garmin-public.yaml +++ b/tenants/acme/96-ingress-garmin-public.yaml @@ -15,6 +15,30 @@ spec: - host: acme.athleticmap.influxdigital.com.br http: paths: + # O webhook de PAGAMENTO do Asaas, ANTES do /api/public generico. + # + # Aquele manda tudo de /api/public para o `servico-bff`, e o BFF NAO tem + # controlador para esta rota — so o financeiro tem + # (`WebhookAsaasController`). O BFF relaya o Garmin de proposito; o Asaas, + # nao. Sem esta linha o aviso de pagamento morre no BFF, e o sintoma e o + # pior possivel: **a cobranca e paga e nunca baixada**, sem erro do nosso + # lado — o provedor so registra uma entrega recusada. + # + # O Traefik ordena por TAMANHO do prefixo, entao esta (26 caracteres) vence + # `/api/public` (11) sozinha. Fica escrita primeiro mesmo assim, para + # ninguem reordenar sem perceber. + # + # `servico-financeiro` e o Service; num tenant consolidado ele aponta para + # o `runtime-operacao`, que e onde o financeiro roda de verdade. + # + # Quem autentica e o cabecalho `asaas-access-token`, no controlador. + - path: /api/public/webhooks/asaas + pathType: Prefix + backend: + service: + name: servico-financeiro + port: + number: 80 - path: /api/public pathType: Prefix backend: diff --git a/tenants/demo/96-ingress-garmin-public.yaml b/tenants/demo/96-ingress-garmin-public.yaml index ae8abf6..efe7fa6 100644 --- a/tenants/demo/96-ingress-garmin-public.yaml +++ b/tenants/demo/96-ingress-garmin-public.yaml @@ -15,6 +15,30 @@ spec: - host: demo.athleticmap.influxdigital.com.br http: paths: + # O webhook de PAGAMENTO do Asaas, ANTES do /api/public generico. + # + # Aquele manda tudo de /api/public para o `servico-bff`, e o BFF NAO tem + # controlador para esta rota — so o financeiro tem + # (`WebhookAsaasController`). O BFF relaya o Garmin de proposito; o Asaas, + # nao. Sem esta linha o aviso de pagamento morre no BFF, e o sintoma e o + # pior possivel: **a cobranca e paga e nunca baixada**, sem erro do nosso + # lado — o provedor so registra uma entrega recusada. + # + # O Traefik ordena por TAMANHO do prefixo, entao esta (26 caracteres) vence + # `/api/public` (11) sozinha. Fica escrita primeiro mesmo assim, para + # ninguem reordenar sem perceber. + # + # `servico-financeiro` e o Service; num tenant consolidado ele aponta para + # o `runtime-operacao`, que e onde o financeiro roda de verdade. + # + # Quem autentica e o cabecalho `asaas-access-token`, no controlador. + - path: /api/public/webhooks/asaas + pathType: Prefix + backend: + service: + name: servico-financeiro + port: + number: 80 - path: /api/public pathType: Prefix backend: diff --git a/tenants/escolinha/96-ingress-garmin-public.yaml b/tenants/escolinha/96-ingress-garmin-public.yaml index 6cd8389..3479650 100644 --- a/tenants/escolinha/96-ingress-garmin-public.yaml +++ b/tenants/escolinha/96-ingress-garmin-public.yaml @@ -15,6 +15,30 @@ spec: - host: escolinha.athleticmap.influxdigital.com.br http: paths: + # O webhook de PAGAMENTO do Asaas, ANTES do /api/public generico. + # + # Aquele manda tudo de /api/public para o `servico-bff`, e o BFF NAO tem + # controlador para esta rota — so o financeiro tem + # (`WebhookAsaasController`). O BFF relaya o Garmin de proposito; o Asaas, + # nao. Sem esta linha o aviso de pagamento morre no BFF, e o sintoma e o + # pior possivel: **a cobranca e paga e nunca baixada**, sem erro do nosso + # lado — o provedor so registra uma entrega recusada. + # + # O Traefik ordena por TAMANHO do prefixo, entao esta (26 caracteres) vence + # `/api/public` (11) sozinha. Fica escrita primeiro mesmo assim, para + # ninguem reordenar sem perceber. + # + # `servico-financeiro` e o Service; num tenant consolidado ele aponta para + # o `runtime-operacao`, que e onde o financeiro roda de verdade. + # + # Quem autentica e o cabecalho `asaas-access-token`, no controlador. + - path: /api/public/webhooks/asaas + pathType: Prefix + backend: + service: + name: servico-financeiro + port: + number: 80 - path: /api/public pathType: Prefix backend: diff --git a/tenants/piloto/96-ingress-garmin-public.yaml b/tenants/piloto/96-ingress-garmin-public.yaml index f3db6b4..96678c1 100644 --- a/tenants/piloto/96-ingress-garmin-public.yaml +++ b/tenants/piloto/96-ingress-garmin-public.yaml @@ -15,6 +15,30 @@ spec: - host: piloto.athleticmap.influxdigital.com.br http: paths: + # O webhook de PAGAMENTO do Asaas, ANTES do /api/public generico. + # + # Aquele manda tudo de /api/public para o `servico-bff`, e o BFF NAO tem + # controlador para esta rota — so o financeiro tem + # (`WebhookAsaasController`). O BFF relaya o Garmin de proposito; o Asaas, + # nao. Sem esta linha o aviso de pagamento morre no BFF, e o sintoma e o + # pior possivel: **a cobranca e paga e nunca baixada**, sem erro do nosso + # lado — o provedor so registra uma entrega recusada. + # + # O Traefik ordena por TAMANHO do prefixo, entao esta (26 caracteres) vence + # `/api/public` (11) sozinha. Fica escrita primeiro mesmo assim, para + # ninguem reordenar sem perceber. + # + # `servico-financeiro` e o Service; num tenant consolidado ele aponta para + # o `runtime-operacao`, que e onde o financeiro roda de verdade. + # + # Quem autentica e o cabecalho `asaas-access-token`, no controlador. + - path: /api/public/webhooks/asaas + pathType: Prefix + backend: + service: + name: servico-financeiro + port: + number: 80 - path: /api/public pathType: Prefix backend: