Buscar pacotes, repositórios e categorias de apps

Repositório GitHubtharwatsamy/flutter_paypal_payment_checkout

flutter_paypal_payment_checkout

tharwatsamy/flutter_paypal_payment_checkout open-source repository details.

Capa do projeto flutter_paypal_payment_checkout
Estrelas
119
Forks
27
Último push (UTC)
8 de dez. de 2024
Status do projeto
Ativo

README original

Texto original em inglês. Visite o GitHub para a versão atual.

Flutter PayPal Payment Package

The Flutter PayPal Payment Package provides an easy-to-integrate solution for enabling PayPal payments in your Flutter mobile application. This package allows for a seamless checkout experience with both sandbox and production environments.

Features

  • Seamless PayPal Integration: Easily integrate PayPal payments into your Flutter app.
  • Sandbox Mode Support: Test payments in a safe sandbox environment before going live.
  • Customizable Transactions: Define custom transaction details for each payment.
  • Payment Outcome Callbacks: Handle success, error, and cancellation events for payments.

Installation

To install the Flutter PayPal Payment Package, follow these steps

  1. Add the package to your project's dependencies in the pubspec.yaml file:

    dependencies:
      flutter_paypal_payment: ^1.0.7
    
  2. Run the following command to fetch the package:

    flutter pub get
    

Usage

  1. Import the package into your Dart file:

    import 'package:flutter_paypal_payment/flutter_paypal_payment.dart';
    
  2. Navigate to the PayPal checkout view with the desired configuration:

 Navigator.of(context).push(MaterialPageRoute(
                  builder: (BuildContext context) => PaypalCheckoutView(
                    sandboxMode: true,
                    clientId: "",
                    secretKey: "",
                    transactions: const [
                      {
                        "amount": {
                          "total": '70',
                          "currency": "USD",
                          "details": {
                            "subtotal": '70',
                            "shipping": '0',
                            "shipping_discount": 0
                          }
                        },
                        "description": "The payment transaction description.",
                        // "payment_options": {
                        //   "allowed_payment_method":
                        //       "INSTANT_FUNDING_SOURCE"
                        // },
                        "item_list": {
                          "items": [
                            {
                              "name": "Apple",
                              "quantity": 4,
                              "price": '5',
                              "currency": "USD"
                            },
                            {
                              "name": "Pineapple",
                              "quantity": 5,
                              "price": '10',
                              "currency": "USD"
                            }
                          ],

                          // shipping address is not required though
                          //   "shipping_address": {
                          //     "recipient_name": "tharwat",
                          //     "line1": "Alexandria",
                          //     "line2": "",
                          //     "city": "Alexandria",
                          //     "country_code": "EG",
                          //     "postal_code": "21505",
                          //     "phone": "+00000000",
                          //     "state": "Alexandria"
                          //  },
                        }
                      }
                    ],
                    note: "Contact us for any questions on your order.",
                    onSuccess: (Map params) async {
                      print("onSuccess: $params");
                    },
                    onError: (error) {
                      print("onError: $error");
                      Navigator.pop(context);
                    },
                    onCancel: () {
                      print('cancelled:');
                    },
                  ),
                ));

⚡ Donate

If you would like to support me, please consider making a donation through one of the following links:

Thank you for your support!

tharwat samy  GitHub avatar
Autor no GitHub

tharwat samy ↗

software engineer with a nack for teaching others

LinguagensDart

Pacotes publicados por este repositório

Dependências usadas

Lista de dependências 6 itens

Como escolher um repositório para seu projeto?

Filtre pelo caso de uso, compare a atividade e confira o projeto original antes de adotá-lo.

  1. Busque por nome, autor ou descrição e filtre por tema.
  2. Compare estrelas, forks e envios recentes. Estrelas indicam interesse, mas não garantem qualidade.
  3. Confira o README, a licença e as issues no GitHub antes de usar o projeto.

Fontes e manutenção

“A repository is the most basic element of GitHub.”

GitHub Docs — About repositories ↗