Tanta dor, tanta dor, caixa registradora como 2: 0

No artigo anterior , falamos sobre como o Anti-Plágio escolheu "nuvens" para si. Nesta palestra, sobre um componente importante da vida de qualquer empresa comercial - receber dinheiro dos clientes.

Para receber pagamentos de clientes particulares, sempre usamos os serviços de agregadores. Primeiro, queríamos diversificar os serviços de aceitação de pagamento, e havia requisitos para a emissão de cheques eletrônicos ... Em uma palavra, havia muitos desejos e requisitos de hotéis, tanto da nossa parte como do estado. Neste artigo, compartilharemos nossa experiência e falaremos sobre o ancinho na grama alta que tivemos que pisar e que conseguimos evitar. Penso que a experiência descrita pode ser útil para todos aqueles que ainda estão no início do caminho de integrar pagamentos em seu sistema.

Scrooge McDuck banha em ouro

Imagem de giphy.com

Havia dois caixas alegres na vovó ...


Nossos clientes particulares verificam documentos três vezes mais corporativos. Desde o início de nossos negócios e até agora, preservamos cuidadosamente a possibilidade de uma busca gratuita de empréstimos na Internet. Os serviços pagos têm as seguintes vantagens:
  • maior prioridade ao verificar
  • falta de restrições quanto ao número de documentos verificados por unidade de tempo;
  • a disponibilidade de uma ampla seleção de módulos de pesquisa para conectar.


O custo de um serviço pago consiste em deduções de provedores de conteúdo e os custos de manutenção de uma infraestrutura de auditoria (incluindo gratuitas) para clientes particulares.

Agora, uma verificação na coleção conjunta (OK), que inclui todos os módulos de pesquisa possíveis, custa 270 rublos. As verificações únicas são suficientes para usuários comuns e, para usuários comuns, a verificação não é muito cara. Aqueles que verificam massivamente, dividimos condicionalmente para nós mesmos em duas classes: honesto e desonesto. Se esta é uma organização que se dedica à educação ou precisa de um serviço de verificador de empréstimos para controlar a qualidade do trabalho científico ou outro trabalho textual, oferecemos-nos nossos clientes corporativos, o que reduz os custos do cliente em termos de um cheque. Para "sintonizadores" e gravadores personalizados (adivinhe a que categoria eles pertencem), o caminho para o segmento corporativo está fechado. Esse é o nosso princípio, não concluímos contratos com empresas duvidosas, em nossa opinião. Também controlamos as atividades de nossos clientes para impedir o uso de contas corporativas para fins "comerciais" (heurística, aprendizado de máquina, isso é tudo). Em nossa história, houve várias rescisões de contratos depois que descobrimos que o cliente não era o que ele alegava ser. Infelizmente, não podemos concluir um contrato com cada usuário particular; portanto, uma oferta é usada para eles. Isso é conveniente para usuários particulares, mas, ao mesmo tempo, não podemos controlar quem usa o acesso pago, pois uma loja não pode proibir a compra de mercadorias em exibição dele. O custo das inspeções em massa para clientes particulares aumentará constantemente. Assim, fazemos o trabalho de escrever para pedir um prazer caro e aderimos à nossa missão de melhorar a educação na Rússia e no mundo.

Como tudo começou


Nosso serviço transferiu alguns dos serviços anteriormente gratuitos para clientes particulares para a categoria de serviços pagos em 4 de maio de 2010. Até o momento, toda a funcionalidade estava totalmente disponível, apenas verificações de coleções externas eram pagas, pelas quais, por sua vez, pagamos os próprios provedores de conteúdo. Fizemos um serviço pago a formação de um relatório completo. Obviamente, os usuários ficaram insatisfeitos e calcularam com facilidade nossas receitas fabulosas.


Capturas de tela das declarações de abril a maio de 2010 do nosso fórum.

Infelizmente, ainda não tenho imóveis em Chipre, apesar de ter escrito a primeira versão do faturamento.

Primeiro toque do robô


Para lançar pagamentos em massa, usamos uma solução já comprovada - integração com Robokassa (RK). Até 4 de maio de 2010, aceitávamos pagamentos para exames de dissertações e documentos legais. O serviço RK nos convinha. A integração era tão simples quanto as botas de feltro; do nosso lado, tínhamos que fazer o mínimo: basta redirecionar para o site do checkout e o manipulador de retorno de chamada sobre o status do pagamento. O cenário de ação padrão do usuário foi o seguinte:
  1. O usuário seleciona um produto no site e clica no botão pagar.
  2. O site (com a participação do serviço de cobrança, mas isso não é tão importante no contexto atual) é redirecionado para o serviço Robokassa, indicando o identificador da loja, o produto e o valor do pagamento.
  3. O usuário no site paga pelos produtos.
  4. O serviço de caixa eletrônico aceita o dinheiro e nos notifica do pagamento por meio de uma chamada de retorno (retorno de chamada, em russo).
  5. ... mágica está acontecendo aqui ...
  6. Lucro !!! O dinheiro é transferido para a conta da empresa menos a comissão.


Tudo foi configurado e funcionou por anos. E como você sabe: funciona - não toque! Não poderia durar para sempre, eu tive que mudar alguma coisa.

Y (et) a (outro)


Vivemos um tempo turbulento de mudança e oportunidade. No final de dezembro de 2015, o processo de revogação de licenças dos bancos estava em pleno andamento e, como qualquer sistema de pagamento está vinculado a um banco, decidimos que precisávamos de uma opção de backup. O plano B não nos permitirá, em algum momento, permanecer sem a capacidade de aceitar pagamentos. Dos agregadores de pagamentos mais ou menos grandes, a escolha recaiu sobre o Yandex.Kassa (Yak). A tarefa foi realizada em tempo recorde, nos últimos 3 dias de dezembro, e saímos de férias com a traseira coberta. A propósito, os riscos em relação ao Cazaquistão não foram realizados, mas temos um sistema de pagamento alternativo. Não jogue fora! Desde então, eles trabalham juntos. Dois gansos engraçados!

Experiência ainda não aplicada


Como já escrevi, queremos desenvolver o Anti-Plágio e ser menos distraídos com as coisas paralelas. Serviços pagos para clientes particulares é uma oportunidade para continuar a fornecer serviços gratuitos.
Aconteceu que implementamos a integração da maneira mais simples possível que cada um dos agregadores de pagamento ofereceu. Portanto, temos uma página de pagamento muito clara com dois mecanismos diferentes para duas mesas de dinheiro diferentes.


Para a República do Cazaquistão, a escolha do método de pagamento ocorre após acessar a página do agregador, para UC - em nossa página, antes da transição. Para entender a correlação do perfil de pagamento com a carga abaixo, azul é a parcela do dinheiro recebido pelo Cazaquistão e laranja é o número de cheques pagos.


Portanto, sem realmente nos preocuparmos com a implementação, testamos a usabilidade de duas opções para interfaces de pagamento. Parece que os usuários preferem a opção de UC. Explosões acima de 50% são características do início do uso da UC e períodos do ano com pouco carregamento, quando o número de pagamentos é menor. Aparentemente, neste momento, o fato de o RC estar localizado mais alto e ser selecionado por padrão é mais afetado.

Atol de Babusya FF Dekhovna


Faça imediatamente uma reserva: não violamos as leis da física e a Federação Russa. Portanto, juntamente com todos, começaram a procurar uma solução para emitir cheques a partir de 1º de julho de 2017, de acordo com a Lei Federal nº 290 . Pesquisado com antecedência, apenas durante a próxima sessão da primavera. Imediatamente ficou óbvio que não estaríamos colocando o caixa e sacando os cheques manualmente.
No prazo estabelecido pelo estado, nós, como muitas empresas do país, não cumprimos o prazo. Isso aconteceu pelo motivo prosaico da falta de um escritório de reservas on-line como um serviço. Naquela época, muitos ofereceram várias outras opções. Por exemplo, em Robokassa, havia uma opção com a venda de seus produtos em sua loja. De alguma forma, não parecia muito. Acima de tudo, ficamos impressionados com a abordagem KaaS - checkout como um serviço. Um dos primeiros (se não o primeiro) tal serviço foi oferecido pela Atol.
Apesar da empolgação, rapidamente concluímos um contrato, compramos e registramos uma unidade fiscal - uma unidade flash especial para armazenar todas as transações que foram eliminadas pela caixa registradora.
Era indicativo que nossos gansos quase imediatamente começaram a apoiar a integração com o Babusey-Atol. Como a história diz: começamos a viver, viver e fazer as coisas boas.

Transição para o FFD 1.05


Todo mundo sabe que é necessário começar uma nova vida em 1º de janeiro (assim que você acordar, sim). É verdade que esse claramente não é o melhor momento para introduzir alterações legislativas. No entanto, a partir de 1º de janeiro de 2019, todos tivemos que mudar para a nova versão do formato de documento fiscal (FFD) 1.05. As mudanças são baratas, mas ainda tremo com as lembranças dos eventos desta atualização.

O estudo da questão mostrou que é necessário adicionar apenas dois parâmetros aos valores transferidos: o objeto de cálculo (payment_object, payment_subject) e o método de cálculo (payment_method, payment_mode). Para o nosso único produto, a pontuação do Anti-Plágio, indicando que este par de parâmetros não custa nada. Aqui está um esboço simples do plano para alcançar a meta Go to FFD Support v1.05:
  1. Refine o site para que ele passe algumas novas constantes nas solicitações;
  2. Verifique com os agregadores que eles entendem e aceitam tudo isso;
  3. Alterne no formato Atole FFD para a versão 1.05;
  4. ... mágica está acontecendo aqui ...
  5. Lucro !!!


Os parâmetros não mudam no tempo e não dependem de nada, definido uma vez - e isso é tudo, um brinde. Então eles pensaram que, de fato, tudo acabou não sendo tão fácil ... O que poderia ter dado errado?
  1. O departamento de desenvolvimento finalizou o site do Anti-Plágio, nós o lançamos no prod. Verificamos com nosso suporte técnico e especialistas dos dois agregadores se tudo funciona e que os novos dados são transmitidos corretamente.
  2. No processo de mudança, um dos agregadores viu novas informações: o valor do campo "site" deve coincidir simbolicamente com o valor especificado em Atola (WTF 1 - por que o requisito para essa coincidência, porque existe um INN e todo o tipo de outras coisas?) muito importante
  3. Ok, vamos mudar. No Atola, em uma página da sua conta, há um campo com o endereço do site e uma atualização sobre a transição para o FFD versão 1.05. Ótimo! Estou mudando o site para www.antiplagiat.ru (removi o http que estava lá antes, adicionei o www) e dei um pulo na transição para a versão 1.05 do FFD. Três dias úteis para uma mudança (WTF 2 - é realmente que um engenheiro vai pessoalmente para lá e muda o firmware do caixa?)! Nuuuuu aprox. Até agora, exporemos os mesmos valores de site nos agregadores. Changed. É isso, estamos aguardando a alteração na 1.05.
  4. Na manhã seguinte, recebo informações de que os cheques não foram vencidos. O atol conseguiu mais de três dias úteis e alterou a versão do FFD, mas não mudou o endereço do site: antiplagiat.ru (WTF 3 - como está?!?! Você muda o site com as mãos em algum lugar?). Ao alterar o endereço do site, a própria RK adicionou discretamente "http: //": www.antiplagiat.ru (WTF 4 - Queria que o cheque fosse menor e sem protocolo, mas não funcionaria por causa de um agregador). Yak como bem feito, tudo funcionou como deveria www.antiplagiat.ru . Total - as verificações não são gravadas em nenhum dos agregadores, porque em todo lugar existe um nome diferente para o site. Mas eu fiz especificamente o mesmo no dia anterior!
  5. Juro com todos no telefone, o Atol é bonito, eles têm uma taxa por qualquer solicitação: 3 dias úteis. Eu desligo o RK, porque eles não podem mudar o site para o que está atualmente registrado no Atola, porque o site deve estar com http ou https. Estou mudando o site na UC para o que está agora em Atola (o benefício está mudando rapidamente para lá e não há requisito de http). Viva, cheques começam a ser escritos! O atol acabou motivado pelo meu discurso no telefone e em meia hora muda o site para www.antiplagiat.ru (este formato é adequado para a República do Cazaquistão). Neste momento, o cancelamento dos cheques da UC deixa de funcionar, porque lá o site antigo é registrado. Eu mudo através da minha conta pessoal, não muda, ligo para TP, eles mudam. Ligue o RK.
  6. Parece que funciona em todos os lugares. Resta lidar com cheques não escritos. Existem várias centenas deles. RK - a pedido do telefone, executa todos os seus com o novo valor do site, eles passam. YAK:
    Gato do nosso funcionário
    Explicação: enviamos o cheque ao Atoll, ele retornou para nós, dizem eles, o cheque está incorreto. Armazenamos essas informações conosco e agora nada pode ser feito com elas (WTF 5 - ainda me mata, como se o sistema deles não fosse o seu). 29 de dezembro - um sábado de trabalho (WTF 6 - mas já é um hábito, dezembro foi bem-sucedido para a dor, lembre-se do artigo anterior, a ação com nuvens ocorre paralelamente), não é o melhor dia para os procedimentos. O que fazer com os cheques sem carimbo, vamos pensar em janeiro.
  7. Tudo funciona bem, com uma alma calma, vamos comemorar o ano novo. 29 de dezembro, às 20 horas, traiçoeiramente, sem declarar guerra, a UC muda o endereço do site para outro. Os cheques através deles deixam de ser escritos.


Por que eles fizeram isso, eles não conseguiram explicar. Eles disseram algo sobre uma carta de Atola. Aparentemente, esse casal queria fazer o melhor. A Atol cuidou daqueles que não estavam cientes desse requisito, pois o endereço do site no agregador de pagamentos e na caixa eletrônica não correspondia. Apenas os dados eram antigos, pelo menos a partir da manhã de 29 de dezembro.

Na manhã de 10 de janeiro, temos um monte de cartas em uma caixa com mensagens da UC sobre erros na execução de cheques. Grande começo de ano! Eles não podem reconhecer e se (!) Encaminhar esses cheques para o Atol (bem, eles podem, quando querem). Além deste caso, não foi possível reenviar cheques UC mais de uma vez. Pelo contrário, eles me convenceram de que era impossível! O que precisa ser feito para ainda preencher um cheque? Certo, dirija com as mãos! Em Atola, chegamos a uma página com uma dúzia de campos que precisam ser preenchidos. Cheio, bem, bem, um cheque nocauteado. Na próxima verificação, você precisará preencher tudo da mesma maneira (exceto alguns campos) novamente!
Temos um monte de cartas com erros, precisamos eliminar os cheques. Escrevemos um script que recebe cartas da UC e bate no cheque no Atoll usando-as. Coloque na máquina. Um pouco, mas se o cheque não for vencido, isso é uma violação da lei. Eu tive que descobrir como tudo funciona em Athol. Por que a UC não pode enviar o cheque de lado não está claro. O script está em nosso repositório público recém-criado no Github.

Yandex.Documentation contraditório


Há muita documentação na UC, é com belas fotos e capturas de tela. Parece, use e se alegrará. Vamos ver o que está escrito sobre a interação com as bilheterias:


Captura de tela realizada em 30/10/2019.

Na etapa 5, algumas vezes o Atol informa que nem tudo está bem com o cheque e, em nossa conta, o pagamento com o status "Aceito" é exibido, mas sem um cheque. Isso ocorre porque a maneira recomendada de enviar cheques com "3 dias de antecedência" está selecionada.


Configurações de pagamento on-line, opção "Com a nossa ajuda". Captura de tela realizada em 30/10/2019.

E, novamente, o quinto ponto, cuja descrição não funciona exatamente como descrito. Pressionar um botão na sua conta pessoal não altera nada no status do cheque (consultado com o suporte técnico, ela confirmou). O cheque ainda não está quebrado. Pode ser eliminado manualmente. Talvez escolha "5 minutos"? Vamos ver o que está escrito na ajuda da sua conta.


Captura de tela da sua conta pessoal.

Acontece que para nós o método "Por 3 dias" não é apenas recomendado, é obrigatório!

Conclusões


Atol. Nem tudo é automatizado, muito é feito à mão. Podemos ver quão lenta, mas seguramente, a interface da conta pessoal está ficando rica. A taxa padrão para qualquer alteração é de 3 dias úteis. Às vezes, eles oferecem cheques para nós, mas por algum motivo eles nunca os dirigiram. Para acelerar a solução da solicitação em resposta à mensagem sobre a criação do ticket, você precisa enviar o TIN para a organização (mesmo que já esteja no corpo do recurso), eles têm um aumento de prioridade automatizado, aparentemente dessa maneira.

Yandex.Cash. Eles não podem reenviar a verificação em caso de problemas do lado do Atol. Outros podem, não querem, mas na realidade podem, mas provavelmente não querem. Eu tive que escrever um roteiro para eles. Há muita documentação e, provavelmente, é inconsistente.

Robokassa. Por alguma razão, eles melhoram o endereço da web da loja, enquanto fazem isso completamente despercebido. O resto são caras adoráveis.

STF. Hora original para implementação das mudanças. Leis e requisitos não bem pensados. Agora, as caixas registradoras eletrônicas são idênticas às físicas comuns. Se em um pagamento da loja offline e em um cheque for efetuado por um dispositivo e esses dois procedimentos passam quase como uma única transação, então no mundo online tudo é diferente. O pagamento é aceito por um serviço, mas o cheque é eliminado por outro. Por analogia com as caixas registradoras offline para eliminar um cheque, é concedido não mais que 5 minutos. Mais detalhes podem ser lidos, por exemplo, aqui .

Lições aprendidas


Parece insignificante, mas por causa desses insignificantes, eu tive que gastar cerca de 60 horas no exposto acima e no desenvolvimento / depuração do script. Mesmo dois grandes agregadores de pagamento nacionais, juntamente com um grande provedor KaaS, não podem prestar um serviço no qual um usuário comum receberá o serviço, entendendo minimamente a área de assunto. É muito triste que, com qualquer alteração, mesmo que insignificante, você tenha que estar em alerta no formato e, como resultado, fazer backup de tudo com suas próprias muletas escritas à mão.

A propósito, na rotina usual, ambas as empresas fornecem suporte técnico de alta qualidade e o próprio serviço. É fácil ficar ao telefone com um técnico por uma hora, depurando algo ou descobrindo as causas de certas falhas devido à falha dos sistemas de pagamento. Tudo está bem com a documentação, com confiabilidade. O Yandex.Kassa alerta cuidadosamente sobre todas as falhas nos sistemas de pagamento e sobre o seu próprio trabalho programado. O caixa não foi visto nessas correspondências, mas há menos reclamações de nossos clientes sobre pagamentos problemáticos por meio dele, o que significa que também não há períodos de inatividade.

O que fazer depois? No horizonte, apareceu o retorno do projeto para otimizar a escolha do agregador, dependendo da forma de pagamento escolhida pelo usuário. Talvez, nesse contexto, seja possível conectar-se a vários outros provedores (espero novos "OMG! Por que isso é feito?!" E razões para artigos sobre a dor). Devido à forte desigualdade do volume de pagamentos ao longo de um ano, uma tarefa interessante pode surgir para otimizar a coleta de várias mochilas: qual usuário deve ser enviado para onde pagar, a fim de minimizar perdas em comissões e descontos para pagamentos mensais. Se alguém já teve essa experiência e se o jogo vale a pena, compartilhe nos comentários!

Source: https://habr.com/ru/post/pt473978/


All Articles