FLUTTER ECOSYSTEM

DeligenceTechnologies/Braintree-Payment-Gateway-for-Flutter

來自 Deligence Technologies 的適用於 Flutter 應用的 Braintree 支付外掛程式。此外掛程式可讓您僅透過 4 個簡單步驟整合 Braintree Drop In 支付介面。

適用於Flutter的Braintree支付網關 專案封面
Stars
35
Forks
26
最近推送(UTC)
2021年1月28日
專案狀態
未封存
Deligence Technologies Inc. - co-creating digital solutions GitHub avatar
GITHUB Organization

Deligence Technologies Inc. - co-creating digital solutions ↗

Salesforce Consulting Partner & Great Place to Work Certified

語言Objective-CJavaDartRubyShell

此儲存庫發佈的套件

使用的依賴

依賴清單 2 項
  • flutter{"sdk":"flutter"}
  • flutter_test開發依賴{"sdk":"flutter"}

原始 README

以下為英文專案原文快照,最新內容請造訪 GitHub。

展開 / 收合專案 README

Braintree Payment

Available for Android and IOS

https://apps.oscommerce.com/public/sites/Apps/schokoladenseite/0/0o/0oEmU-NcKOp.png https://media.licdn.com/dms/image/C4D0BAQH109445BY2gA/company-logo_200_200/0?e=2159024400&v=beta&t=dbU_2Y_ULhxJ1a2Q3mBmCKNbgVeqPjcL_g5CKsmy4CY

Braintree Payment plugin for Flutter apps by Deligence Technologies. This plugin lets you integrate Braintree DropIn payment UI in just 4 easy steps.

Table of Content

Supported Features

The plugin allows to use the Drop-In UI provided by braintree on android and iOS for following payment flows through braintree

  • credit card payment
  • paypal payment
  • google Pay (on Android only)

Note: Apple pay is not supported right now

Additionally a direct Paypal-Checkout Flow is supported (without using the drop-in UI). This is only handy in situations where you just want to provide a paypal only payment flow.

Otherwise the drop-in UI should be your prefered usage scenario.

Minimum Requirements

Android : To use this plugin you must migrate to AndroidX and set your minSdkVersion to at least 21.

Steps to Enable Payment

Step 1- To enable the payment support follow below given steps:

Paypal
Android:

To add support for Paypal Payment add below lines inside AndroidManifest.xml.

    <activity android:name="com.braintreepayments.api.BraintreeBrowserSwitchActivity"
        android:launchMode="singleTask">
        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
            <data android:scheme="${applicationId}.braintree" />
        </intent-filter>
    </activity>
IOS:
To add support for Paypal Payment on IOS. 

Basic insturctions from braintree:

1. Register URL Type
2. Update application delegate to setReturnUrlScheme
3. Update application delegate to pass the payment authorization URL to Braintree for finalization

For Detailed instuction follow steps here :- https://developers.braintreepayments.com/guides/paypal/client-side/ios/v4
Google Pay

To add support for Google Pay add below lines inside AndroidManifest.xml.

<meta-data android:name="com.google.android.gms.wallet.api.enabled" android:value="true"/>

Step 2- Import the plugin:

import 'package:braintree_payment/braintree_payment.dart';

Step 3- Create a object of BraintreePayment and pass Client nonce.

String clientNonce = " GET YOUR CLIENT NONCE FROM YOUR SERVER";

BraintreePayment braintreePayment = new BraintreePayment();
var data = await braintreePayment.showDropIn(
        nonce: clientNonce, amount: "2.0", enableGooglePay: true);

Step 4- Variable data will have the payment nonce. Send the paymne nonce to the server for further processing of the payment:

var data = await braintreePayment.showDropIn(
        nonce: clientNonce, amount: "2.0", enableGooglePay: true);
print("Response of the payment $data");

// In case of success
//{"status":"success","message":"Payment successful. Send the payment nonce to the server for the further processing.":"paymentNonce":"jdsfhedbyq772_34dfsf"}

// In case of Failure
//{"status":"fail","message":"User canceled the payment"}
Screenshot
https://drive.google.com/uc?authuser=0&id=1ZN0057InSjNATdlJBVt-0kmMXZ72DZLU&export=download

License

BSD 3-Clause License

Copyright (c) 2019, Deligence Technologies Pvt. Ltd. (Meteor & MongoDB Official Partner)
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this
   list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice,
   this list of conditions and the following disclaimer in the documentation
   and/or other materials provided with the distribution.

3. Neither the name of the copyright holder nor the names of its
   contributors may be used to endorse or promote products derived from
   this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.