clearsale 1.0.0-dev.2

Dart native js
Flutter Android iOS web

Package para conectar uma aplicação Dart com a Clearsale

clearsale #

Esse package é a de integração com a aplicação Total - Total Garantido da Clearsale. Código baseado na documentação oficial.

Arquitetura #

O código desse package segue o padrão do Clean Dart, uma proposta de implementação do Clean Architeture para Dart [doc]

import #

pubspec.yaml

dependencies:
  clearsale: <last version>
import 'package:clearsale/clearsale.dart';

Autenticação #

A autenticação é baseada em dois parâmetros, name e password; Esses parâmetros são recebidos no construtor da classe ClearSale:

final clearsale = ClearSale(
    userName: "username", 
    password: "password",
);

É possível realizar a autenticação de duas maneiras:

  • No construtor
final clearsale = ClearSale(
    userName: "username", 
    password: "password",
    automaticAuthenticate: true,
);
  • Método authenticate
final clearsale = ClearSale(
    userName: "username", 
    password: "password",
    automaticAuthenticate: false,
);
clearsale.authenticate();

NOTA: A autenticação no construtor é realizada por padrão caso a propriedade automaticAuthenticate não seja informada.

Ações #

O package permite realizar as seguintes ações: |Método|Descrição| |---|---| |analysisRequest|Solicitação de análise| |reanalysisRequest|Solicitação de reanálise| |chargebackMarking|Marcação de estorno| |statusConsult|Consulta de status de uma solicitação| |statusUpdate|Alteração de status de uma solicitação. Importante: Os status de atualização devem ser combinados com a equipe de integração.|

Fingerprint #

O campo sessionID do objeto AnalisysRequestModel (utilizado nas ações de Análise e Reanálise) deve ser preenchido com a fingerprint do dispositivo.

O package para gerar esse código está sendo desenvolvido.

Resiliência de autenticação #

Esse é o fluxo de autenticação executado em todas as ações:

image

Erros Tratados #

Todos os erros recebem por herança a estrutura da classe Failure, que tem 3 propriedades principais:

  • code: Código para identificar o erro;
  • message: Mensagem padrão do erro;
  • innerException: Exceção que causou o erro;

Esses são os erros tratados: #

Validação de parâmetros #

CódigoErroMensagemDescrição
null-token-failureNullTokenFailureÉ necessário preencher o token para continuar.Token nulo
empty-token-failureEmptyTokenFailureÉ necessário preencher o token para continuar.Token vazio
invalid-field-${fieldName}-failureInvalidFieldFailureÉ necessário preencher o campo $fieldName para continuar.Algum parâmetro informado está vazio ou nulo

<br/>

Tratamento retorno Clearsale #

CódigoErroMensagemDescrição
empty-datasource-responseEmptyDatasourceResponseFailureEndereço não encontradoMaplink não encontrou nenhum endereço
null-datasource-responseNullDatasourceResponseFailurenullMaplink não retornou nada no body do response
endpoint-message-failureEndpointMessageFailureMensagem de erro retornada pelo endpointErro tratado pela Clearsale. Tem a propriedade status com o status do erro.
endpoint-invalid-statuscode-failureEndpointInvalidStatusCodeFailurenullResposta não tratada pelo package. Tem as propriedades int statusCode e String body.
1
likes
80
pub points
0%
popularity

Package para conectar uma aplicação Dart com a Clearsale

Homepage
Repository (GitHub)
View/report issues

Documentation

API reference

Uploader

davidsdearaujo@gmail.com

License

MIT (LICENSE)

Dependencies

collection, dartz, http, meta

More

Packages that depend on clearsale