msitef_payment_tech

MSitef Payment Tech

Sobre   |   Funcionalidades   |   Tecnologias   |   Requisitos   |   Start   |   Autor


Github Badge


🚨 Aviso

Este plugin é não oficial e foi desenvolvido de forma independente para facilitar a integração de pagamentos via SDK do MSitef em dispositivos Android.

⚠️⚠️⚠️ Esse plugin não funciona com PROXY!!! ⚠️⚠️⚠️

:dart: Sobre

Plugin Flutter para facilitar integração com o TEF do MSitef. Necessário ter instalado o MSitef para que funcione corretamente. Para obter o .apk é necessário entrar em contato com a sua distribuidora do TEF.

🔐 Licenciamento

Para adquirir uma licença, cadastre-se no site Licença JY Labtech.
Cada licença é válida por terminal. Após a compra, você receberá duas chaves:

  • licenceKey: identificação pública da licença do terminal.
  • licenceInternalKey: endereço seguro usado pelo módulo nativo para validação.

Importante: as chaves devem ser fornecidas em tempo de execução ao chamar MSitefPaymentTech.I.initPayment. Não armazene as chaves em local.properties ou em arquivos de código-fonte versionados. Prefira buscar os valores de um backend seguro, variáveis de ambiente criptografadas ou serviços de configuração remota.

Inicialização do plugin

Antes de utilizar qualquer operação de TEF, inicialize o plugin informando as chaves:

import 'package:msitef_payment_tech/msitef_payment_tech.dart';

Future<void> bootstrapMSitef() async {
  await MSitefPaymentTech.I.initPayment(
    licenceKey: 'SUA_LICENCE_KEY',
    licenceInternalKey: 'SUA_LICENCE_INTERNAL_KEY',
  );
}

Execute a inicialização uma única vez (por exemplo, no main() ou no initState do seu Widget raiz). O módulo nativo valida, criptografa e armazena a licença com EncryptedSharedPreferences para reutilizações futuras no dispositivo.

:sparkles: Funcionalidades

:heavy_check_mark: Cartão de crédito :heavy_check_mark: Cartão de débito :heavy_check_mark: PIX :heavy_check_mark: Cancelamento :heavy_check_mark: Reimpressão

:rocket: Tecnologias

Para que o plugin funcione corretamente é necessário ter o aplicativo MSitef instalado na máquina. Este é fornecido pela própria empresa que está lhe fornecendo o TEF.

:white_check_mark: Requisitos

Para que o plugin funcione corretamente é necessário ter o aplicativo MSitef instalado na máquina.

:checkered_flag: Starting

  1. Inicialize o plugin com as chaves de licença:
Future<void> main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await MSitefPaymentTech.I.initPayment(
    licenceKey: 'SUA_LICENCE_KEY',
    licenceInternalKey: 'SUA_LICENCE_INTERNAL_KEY',
  );
  runApp(const MyApp());
}
  1. Dispare a transação desejada usando o objeto payment:

    MSitefPaymentTech.I.payment.mSitefTransaction(
      transactionParams: TransactionParams(
        modalidade: MSitefType.debit,
        value: '10',
        couponNumber: DateTime.now().toIso8601String(),
        dateFiscal: '2021-09-01',
        hourFiscal: '12:00:00',
        operador: 'teste',
        ipSitef: '192.168.0.165',
        storeId: '00000000',
        terminalId: '00000001',
        companyDocument: '00000000000000',
        automationDocument: '00000000000000',
      ),
    );
    
    • Para crédito, altere modalidade para MSitefType.credit.
    • Para PIX, utilize MSitefType.pix.
    • Para cancelamentos, utilize SitefModalityMSitef.cancellation e informe os campos obrigatórios do comprovante.
  2. Consuma o retorno através do objeto TefTransactionResponseMSitef, contendo códigos, comprovantes e metadados da transação.


Imagem do M-Sitef
MSitef


JY Labtech

Feito por Jhonathan Queiroz

Back to top