Como ler os avisos do módulo
Onde o aviso tem %s, %(country)s, %(countries)s, %(refunded)s ou %(total)s, no ecrã aparece o dado do seu caso: um nome, o valor que escreveu, um país, uns montantes ou o motivo indicado pelo seQura. Leia-o antes de tentar de novo.
Exemplo Caso ilustrativo: a empresa e os seus dados são inventados para explicar o fluxo.
A Cerámicas Brisa é uma loja inventada que vende louça em Espanha e quer oferecer pagamento fracionado com o seQura a partir do seu Odoo. A Marta, da administração, liga a conta, prepara os widgets, cobra por link e trata de um reembolso. Estas são as mensagens que encontra, pela ordem em que lhe aparecem.
Ligar a conta através do FlexigoTech Cloud

Ao guardar as credenciais, o primeiro aviso é Before saving the seQura username and password, an administrator has to accept that they and the calls to seQura go through FlexigoTech Cloud. Nothing was sent. Um administrador tem de aceitar que o utilizador, a palavra-passe e as chamadas ao seQura passam pelo FlexigoTech Cloud, e não foi enviado nada. A Marta pede essa aceitação a quem administra o Odoo.
Depois escreve só o utilizador e aparece Type both the seQura username and the password: they are saved together. Nothing was sent.: guardam-se juntos, por isso é preciso escrever os dois. Se tentar ligar antes de os guardar, o aviso é Type your seQura username and password for FlexigoTech Cloud and save before connecting. ou Add your seQura username and password before connecting.: escrever, guardar e ligar. Se mais tarde aparecer The seQura username and password of %s are not saved in FlexigoTech Cloud: type them again., volte a escrevê-los. E Connect a seQura account first. indica que antes é preciso uma conta seQura ligada.
Já ligada, a Marta vê seQura accepted the credentials but reported no merchant account for a country Odoo knows. Ask seQura which countries your account covers. As credenciais são válidas, mas o seQura não devolveu nenhuma conta de comerciante para um país que o Odoo reconheça. O passo seguinte é dado pela própria mensagem: perguntar ao seQura que países a conta cobre.

Passar de sandbox para live
Ao deixar os testes aparece To go live with %s on FlexigoTech Cloud, type the username and password of your live seQura account: sandbox and live are different accounts. Sandbox e live são contas diferentes, por isso escrevem-se as credenciais da conta live.
Para mudar a implementação com credenciais guardadas, o aviso é Delete the seQura credentials of %s from FlexigoTech Cloud before changing its deployment: the saved ones belong to the current deployment.: primeiro apagam-se do FlexigoTech Cloud. E o tipo de ligação não muda: The connection of a seQura provider does not change: a new provider goes through FlexigoTech Cloud and the ones bought before keep the direct connection.
As definições completas estão em a configuração do seQura.
Widgets, durações e países
Nos widgets promocionais, a Marta escreve a aparência à mão e recebe The widget appearance must be the JSON produced by seQura's widget simulator. %s É preciso usar o JSON gerado pelo simulador de widgets do seQura, e o %s dá o detalhe. Se o valor não for um objeto, o aviso é The widget appearance must be a JSON object.

Para as durações, %s is not a valid service duration. Use an ISO-8601 duration such as P15D, P3M or P1Y6M. pede uma duração ISO-8601, e %s is neither an ISO-8601 duration (P3M, P1Y6M) nor a date (2027-06-30). aceita também uma data no formato 2027-06-30. Em ambos, o %s é o que escreveu.
Com um país que não encaixa aparece seQura does not sell in %(country)s. It operates in %(countries)s., que já enumera os países onde o seQura opera.

Cobrar com link de pagamento
Com a encomenda vazia, ao enviar o link a Marta vê Add something to the order before sending a payment link. Adiciona as linhas e aparece A mobile number is needed: seQura sends the link by SMS.: o cliente precisa de um telemóvel. seQura cannot finance this order: %s e seQura could not send the link: %s trazem o motivo do seQura no %s. seQura could not be reached: %s indica que não foi possível contactar o seQura, e This transaction has not reached seQura yet., que a transação ainda não chegou ao seQura.
Ao tratar o pagamento, Only a seQura payment that is waiting can be confirmed this way. aparece se o pagamento não estiver em espera. seQura refused the capture: %s e seQura refused the void: %s dão o motivo da rejeição da captura ou da anulação.
Com uma encomenda antiga, a Marta vê This order was created in seQura's test environment and this account is now live, so seQura has never seen it here. There is nothing to do on seQura's side: no real money moved. Cancel the order in Odoo instead. A encomenda foi criada em testes, não se moveu dinheiro real e cancela-se no Odoo.
Reembolsar uma encomenda com uma nota de crédito
Uma cliente devolve um prato. A partir da fatura, a Marta recebe Only a credit note can be refunded through seQura.: o reembolso faz-se por nota de crédito. Com a nota de crédito por validar: Post the credit note first.
Se não houver um pagamento liquidado ligado ao documento, aparece No settled seQura payment is linked to this document. Sem montante pendente, o aviso é There is nothing left to refund on this seQura order. ou There is nothing left to refund on this seQura order: %(refunded)s of %(total)s has already been returned., que mostra o reembolsado face ao total. Se o seQura o rejeitar, seQura did not accept the refund. See the transaction %s for the reason. remete para essa transação para ver o motivo.
Liquidações e encomendas sem correspondência
seQura could not report your payouts: %s indica que o seQura não conseguiu informar das liquidações, com o motivo no %s. No Odoo sales order matches %s. diz que nenhuma ordem de vendas do Odoo coincide com o dado do %s. Para ver o percurso de cada registo, leia como funciona o módulo por dentro.
O que se aprende com o caso
- Sandbox e live são contas diferentes: as credenciais não se reutilizam e uma encomenda de teste cancela-se no Odoo.
- O utilizador e a palavra-passe guardam-se juntos no FlexigoTech Cloud, após a aceitação de um administrador.
- Nas rejeições, o motivo está no
%sou na transação indicada. - Os reembolsos saem de uma nota de crédito validada e ligada a um pagamento liquidado.
- A aparência dos widgets é o JSON do simulador; as durações, ISO-8601 ou uma data.
Como a FlexigoTech ajuda
A ligação passa pelo FlexigoTech Cloud, que guarda as credenciais cifradas, vigia a sincronização e avisa por e-mail se falhar; se o seQura mudar a API, o módulo e o serviço são adaptados. O módulo custa 9 € sem IVA por versão do Odoo, pagamento único, para 17, 18, 19 e 20 na Odoo Apps, e a ligação funciona com o plano Conector, disponível na página do módulo. Se também precisar de implementar o Odoo ou de uma integração à medida, também tratamos disso.
Continue a ler
Verificado no código do conector (versão 20.0) e nas fontes indicadas
Fontes
- Código do módulo: flexigo_sequra_bnpl 20.0 (f94d334a): models/account_move.py
- Código do módulo: flexigo_sequra_bnpl 20.0 (f94d334a): models/payment_provider.py
- Código do módulo: flexigo_sequra_bnpl 20.0 (f94d334a): models/payment_transaction.py
- Código do módulo: flexigo_sequra_bnpl 20.0 (f94d334a): models/product_template.py
- Código do módulo: flexigo_sequra_bnpl 20.0 (f94d334a): models/sequra_country_config.py
- Código do módulo: flexigo_sequra_bnpl 20.0 (f94d334a): models/sequra_disbursement.py
- Código do módulo: flexigo_sequra_bnpl 20.0 (f94d334a): models/sequra_fgt_cloud.py
- Código do módulo: flexigo_sequra_bnpl 20.0 (f94d334a): wizards/sequra_send_link.py
- apps.odoo.com/apps/modules/20.0/flexigo_sequra_bnpl
- apps.odoo.com/apps/modules/17.0/flexigo_sequra_bnpl
- apps.odoo.com/apps/modules/18.0/flexigo_sequra_bnpl
- apps.odoo.com/apps/modules/19.0/flexigo_sequra_bnpl
- flexigotech.com/en/services.html
- flexigotech.com/precios.html
