pagseguro_smart 1.0.2+2 copy "pagseguro_smart: ^1.0.2+2" to clipboard
pagseguro_smart: ^1.0.2+2 copied to clipboard

Plugin em Flutter para integração com o PlugPagServiceWrapper da PagSeguro.

pagseguro_smart #

pub package likes pub points popularity

[PagSeguro]

pagseguro_smart é um plugin Flutter para integração completa com as maquininhas PagSeguro Smart (P2 A7, P2 A11 e GPOS A11).
Permite pagamentos, estornos, callbacks de transação, reimpressão de recibos e comunicação direta com o PlugPagServiceWrapper no Android.

⚠️ Plugin não oficial — Compatível somente com Android.


📘 Sumário #


🎯 Sobre #

O objetivo do plugin é oferecer uma interface simples, segura e moderna para comunicação com o SDK PagSeguro PlugPagServiceWrapper diretamente de projetos Flutter.

Compatível apenas com máquinas POS Smart P2 A7, P2 A11 e GPOS A11.


📦 Instalação #

No pubspec.yaml:

dependencies:
  pagseguro_smart: ^1.0.1

Execute:

flutter pub get

⚙️ Configuração Android #

1️⃣ Permissão necessária #

Adicione ao AndroidManifest.xml:

<uses-permission android:name="br.com.uol.pagseguro.permission.MANAGE_PAYMENTS"/>

2️⃣ Intent-Filter #

Dentro da <activity> principal:

<intent-filter>
  <action android:name="br.com.uol.pagseguro.PAYMENT"/>
  <category android:name="android.intent.category.DEFAULT"/>
</intent-filter>

🚀 Uso #

Importação #

import 'package:pagseguro_smart/pagseguro_smart.dart';

🔌 Inicialização #

Ativando o PinPad #

final PagSeguroService pagSeguro = PagSeguroService();

Future<void> ativarPinPad(String codigoAtivacao) async {
  final result = await pagSeguro.initPinPad(codigoAtivacao);

  if (result['success']) {
    print('PinPad ativado!');
  } else {
    print('Erro: ${result['message']}');
  }
}

💳 Pagamentos #

final result = await pagSeguro.doPayment(
  type: PagSeguroType.credit,
  value: 50.00,
  userReference: 'pedido123',
  printReceipt: true,
);

if (result['success']) {
  final transaction = TransactionModel.fromJsonToModel(result['data']);
  print('Pagamento aprovado!');
} else {
  print('Falha: ${result['message']}');
}

⛔ Estorno #

final estorno = await pagSeguro.voidPayment(
  transactionCode: '123456',
  transactionId: '987654',
  voidType: PagSeguroVoid.common,
  printReceipt: true,
);

🧾 Reimpressão & Recibos #

Reimprimir via Cliente:

await pagSeguro.reprintCustomerReceipt();

Reimprimir via Loja:

await pagSeguro.reprintEstablishmentReceipt();

Enviar recibo via SMS:

await pagSeguro.sendReceiptSMS(
  transactionCode: '123456',
  phoneNumber: '11999999999',
);

📡 Callbacks #

O plugin envia mensagens de progresso durante o pagamento, recomendado colocar no initState:

@override
void initState() {
  super.initState();

  _pagSeguro.onPaymentProgress = (message, canAbort) {
    print('Status: $message');

    if (canAbort) {
      print('Permitido Cancelar Pagamento.');
    }
  };
}

🔧 Constantes #

Tipos de Pagamento #

  • PagSeguroType.credit
  • PagSeguroType.debit
  • PagSeguroType.pix
  • PagSeguroType.voucher

Parcelamento #

  • PagSeguroInstallment.singlePay
  • PagSeguroInstallment.forMerchant
  • PagSeguroInstallment.forCustomer

Estorno #

  • PagSeguroVoid.common
  • PagSeguroVoid.qrCode

📄 Models #

Inclui:

  • UserDataModel
  • TransactionModel

Todos com fromJsonToModel() para parse automático.


📝 Notas Importantes #

  • O plugin funciona somente em Android.
  • A maquininha deve estar vinculada a um usuário ativo na PagSeguro e com o aplicativo configurado (salvo maquininha debug).
  • Callbacks dependem do texto da maquininha — o comportamento pode variar por modelo.
  • Recomenda-se testar em dispositivo físico real.

⚖️ Licença #

MIT © 2025 Fernando Takeo Miyaji
https://github.com/takeodev

1
likes
0
points
316
downloads

Publisher

unverified uploader

Weekly Downloads

Plugin em Flutter para integração com o PlugPagServiceWrapper da PagSeguro.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

flutter

More

Packages that depend on pagseguro_smart

Packages that implement pagseguro_smart