我正在尝试使用braintree的自定义ui实现paypal
,服务器端代码位于node.js
但始终未找到商家帐户错误。我正在描述使用braintree实现paypal的步骤:
braintree vault
生成客户端令牌和客户ID。以下是代码段
清单
<activity android:name="com.braintreepayments.api.BraintreeBrowserSwitchActivity"
android:launchMode="singleTask">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<data android:scheme="${applicationId}.braintree" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
</intent-filter>
</activity>
摇篮
compile ('com.braintreepayments.api:drop-in:3.+') {
exclude group: 'com.android.support', module: 'support-v4'
exclude group: 'com.android.support', module: 'appcompat-v7'
exclude group: 'com.android.support', module: 'cardview-v7'
exclude group: 'com.android.support', module: 'customtabs'
exclude group: 'com.android.support', module: 'design'
}
compile 'com.braintreepayments:browser-switch:0.1.4'
在onCreate
我从服务器初始化client token
这样的客户端令牌后,我正在请求我的服务器BraintreeFragment
mBraintreeFragment = BraintreeFragment.newInstance(context, braintreeToken);
在按钮中单击我正在使用此代码
if (mBraintreeFragment != null) {
PayPalRequest request = new PayPalRequest().localeCode("US").billingAgreementDescription("Your agreement description");
PayPal.requestBillingAgreement(mBraintreeFragment, request);
PayPal.authorizeAccount(mBraintreeFragment);
}
之后我收到了错误,并没有重定向到webview。如果我使用静态客户端令牌(来自braintree的网站的演示令牌),那么它工作正常。
注意:我已经在Braintree的帐户中链接了paypal商户帐户 在实现客户端之前,使用了Braintree控制面板中的pulic key,私钥。
生成客户端令牌代码
gateway.clientToken.generate({}, function (err, response) {
if (!err) {
if (response.clientToken.length > 0) {
gateway.customer.create({
id: statusData.response_data._id
},function(err,result) {
if(!err){
}
})
}
}
});