clearsale 1.0.0-dev.15 copy "clearsale: ^1.0.0-dev.15" to clipboard
clearsale: ^1.0.0-dev.15 copied to clipboard

outdated

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 AnalysisRequestModel (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ódigo Erro Mensagem Descrição
null-token-failure NullTokenFailure É necessário preencher o token para continuar. Token nulo
empty-token-failure EmptyTokenFailure É necessário preencher o token para continuar. Token vazio
invalid-field-${fieldName}-failure InvalidFieldFailure É necessário preencher o campo $fieldName para continuar. Algum parâmetro informado está vazio ou nulo

Tratamento retorno Clearsale #

Código Erro Mensagem Descrição
empty-datasource-response EmptyDatasourceResponseFailure Endereço não encontrado Clearsale não encontrou nenhum endereço
null-datasource-response NullDatasourceResponseFailure null Clearsale não retornou nada no body do response
endpoint-message-failure EndpointMessageFailure Mensagem de erro retornada pelo endpoint Erro tratado pela Clearsale. Tem a propriedade status com o status do erro.
endpoint-invalid-statuscode-failure EndpointInvalidStatusCodeFailure null Resposta não tratada pelo package. Tem as propriedades int statusCode e String body.
3
likes
0
pub points
0%
popularity

Publisher

unverified uploader

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

Homepage
Repository (GitHub)
View/report issues

License

unknown (LICENSE)

Dependencies

collection, dartz, http, meta

More

Packages that depend on clearsale