getnet_payments 1.0.0 copy "getnet_payments: ^1.0.0" to clipboard
getnet_payments: ^1.0.0 copied to clipboard

PlatformAndroid

getnet_payments é um plugin que fornece integração com as máquinas de pagamento da empresa Getnet.

Getnet Payments - Plugin Flutter para Pagamentos Getnet (Não Oficial) #

Buy Me A Coffee

Github Badge LinkedIn Badge

getnet_payments é um plugin Flutter (Não Oficial) para integração de pagamentos com a Getnet utilizando deeplinks. Ele permite abrir o Intent do deeplink diretamente do aplicativo Flutter e retornar um objeto Transaction com o resultado da transação.

Recursos #

  • Realize pagamentos via Getnet utilizando deeplinks.
  • Suporte a pagamentos nos modos crédito, débito, voucher e PIX.
  • Configuração de parcelamentos.
  • Retorno estruturado da transação com detalhes como calledId, authorizationCode e outros.

Recomendações #

Recomendamos que você leia a documentação oficial da Getnet para obter mais informações sobre a integração de pagamentos.

Instalação #

Adicione o plugin ao seu arquivo pubspec.yaml:

dependencies:
  getnet_payments: any

Em seguida, execute o comando:

flutter pub get

Configuração #

Android #

  1. Certifique-se de que o pacote contém a permissão para acesso à internet.
<uses-permission android:name="android.permission.INTERNET" />
  1. Altere o minSdkVersion para 22 ou superior no arquivo android/app/build.gradle.
android {
    defaultConfig {
        minSdkVersion 22
        targetSdkVersion 33 // Recomendado para o Android 13
    }
}

Uso #

Importação #

import 'package:getnet_payments/getnet_payments.dart';

Inicialização #

Utilize a classe principal GetnetPayments para iniciar pagamentos. Veja o exemplo abaixo:

import 'package:getnet_payments/getnet_payments.dart';

void realizarPagamento() async {
  try {
    final transaction = await GetnetPayments.deeplink.payment(
      amount: 150.00,
      paymentType: PaymentTypeEnum.credit,
      callerId: Uuid().v4(), // Identificador único da transação
      installment: 1, // Número de parcelas
    );

    if (transaction != null && transaction.result == "0") {
      print("Pagamento realizado com sucesso!");
      print("ID da Transação: ${transaction.callerId}");
    } else {
      print("Pagamento cancelado ou falhou.");
    }
  } catch (e) {
    print("Erro ao processar pagamento: $e");
  }
}

Parâmetros do Método payment #

Parâmetro Tipo Descrição
amount double Valor do pagamento (deve ser maior que zero).
paymentType PaymentTypeEnum Tipo de pagamento (PaymentTypeEnum.credit, PaymentTypeEnum.debit, PaymentTypeEnum.voucher ou PaymentTypeEnum.pix)
callerId String Identificador único do cliente.
installment int Número de parcelas. Apenas 1 para pagamentos no débito.

Retorno #

O método payment retorna um objeto Transaction contendo as informações da transação.

Exemplo de Objeto Transaction

{
  "result": "0",
  "resultDetails": "TRANSACAO APROVADA",
  "amount": "000000018975",
  "callerId": "d68d27af-b830-41ab-876e-3ffe7b903504",
  "nsu": "000000048",
  "nsuLastSuccesfullMessage": "0212117132457",
  "cvNumber": "000000048",
  "receiptAlreadyPrinted": false,
  "type": "11",
  "inputType": "051",
  "installments": null,
  "gmtDateTime": "0122114101",
  "nsuLocal": "000090",
  "authorizationCode": "164550",
  "cardBin": "123456",
  "cardLastDigits": "1234",
  "extraScreensResult": null,
  "splitPayloadResponse": null,
  "cardholderName": null,
  "automationSlip": {
    "mandatory_all_receipts_fields": {
      "authorizationCode": "008532",
      "brand": "MASTERCARD",
      "cardLastDigits": "4283",
      "city": "PORTO ALEGRE",
      "ecDocument": "42.130.708/0001-07",
      "ecName": "GETNET DEVELOPERS ESTAB",
      "ecNumber": "000000000034567",
      "letterTypeTransaction": "C",
      "version": "XXX57.0005.0024",
      "getnetLogo": "iVBORw0KGgoAAAANSUhEUgAAAPAAAAA...",
      "dateTime": "09/15/21 17:35:59",
      "nsu": "000000637",
      "terminal": "10001593"
    },
    "mandatory_client_fields": {
      "clientBody": "CREDITO A VISTA VALOR:         1,00",
      "receiptTypeClient": "Via Cliente"
    },
    "mandatory_ec_fields": {
      "aid": "A0000000041010",
      "arqc": "77EE7FFDACF51DB9",
      "ecBody": "CREDITO A VISTA VALOR:         1,00 TRANSACAO APROVADA MEDIANTE USO DE SENHA PESSOAL",
      "nsuLocal": "000302",
      "receiptTypeEc": "Via Estabelecimento"
    }
  },
  "printMerchantPreference": true,
  "orderId": null,
  "pixPayloadResponse": null
}

Enumerador PaymentTypeEnum #

Valor Descrição
credit Pagamento no crédito.
debit Pagamento no débito.
voucher Pagamento com voucher.
pix Pagamento com PIX.

Enumerador TransactionResultEnum #

Valor Descrição
0 Sucesso
1 Negada
2 Cancelada
3 Falha
4 Desconhecido
5 Pendente

Contribuição #

Contribuições são bem-vindas! Para reportar problemas ou sugerir melhorias, utilize a página de issues.

Licença #

Este projeto está licenciado sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.

6
likes
160
points
109
downloads

Publisher

unverified uploader

Weekly Downloads

getnet_payments é um plugin que fornece integração com as máquinas de pagamento da empresa Getnet.

Repository (GitHub)

Documentation

API reference

License

BSD-3-Clause (license)

Dependencies

flutter, intl, plugin_platform_interface

More

Packages that depend on getnet_payments