ฉันใช้ Braintree's v2 drop-in ui
android ในการชำระเงิน และเซิร์ฟเวอร์แบ็กเอนด์ของฉันอยู่ใน node.js
ฉันใช้งานส่วนการชำระเงินสำเร็จแล้ว แต่ตอนนี้ฉันต้องจัดเก็บ card details
และหักจำนวนเงินโดยอัตโนมัติจาก debit/credit card
หรือ paypal account
ที่เก็บไว้นั้นโดยอัตโนมัติ
ฉันกำลังสร้างโทเค็นไคลเอ็นต์และจัดเก็บโทเค็นนั้นไว้ในฐานข้อมูลของฉัน การใช้โทเค็นนั้นฉันกำลังสร้าง nonce จากนั้น ฉันกำลังส่ง nonce ไปยังเซิร์ฟเวอร์แบ็กเอนด์สำหรับ transaction.sale()
นี่คือข้อมูลโค้ดสำหรับส่วนการชำระเงิน
if (!TextUtils.isEmpty(braintreeClientToken)) {
DropInRequest dropInRequest = new DropInRequest()
.clientToken(braintreeClientToken);
startActivityForResult(dropInRequest.getIntent(this), REQUEST_CODE);
}
OnActivityResult
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == REQUEST_CODE) {
if (resultCode == Activity.RESULT_OK) {
DropInResult result = data.getParcelableExtra(DropInResult.EXTRA_DROP_IN_RESULT);
PaymentMethodNonce paymentMethodNonce = result.getPaymentMethodNonce();
String nonce = "";
if (paymentMethodNonce != null)
nonce = paymentMethodNonce.getNonce();
// use the result to update your UI and send the payment method nonce to your server
if (!TextUtils.isEmpty(nonce)) {
NonceRequest obj = new NonceRequest("ANDROID", "1",
"DRIVER-SAVE-PAYMENT", "1", nonce);
Call<NonceResponse> call = RestService.getInstance().restInterface.sendNonceToServer(userId, userToken, obj);
call.enqueue(new Callback<NonceResponse>() {
@Override
public void onResponse(Call<NonceResponse> call, Response<NonceResponse> response) {
}
@Override
public void onFailure(Call<NonceResponse> call, Throwable t) {
}
});
}
} else if (resultCode == Activity.RESULT_CANCELED) {
// the user canceled
} else {
// handle errors here, an exception may be available in
Exception error = (Exception) data.getSerializableExtra(DropInActivity.EXTRA_ERROR);
}
}
}
ใครช่วยบอกขั้นตอนในการจัดเก็บรายละเอียด credit/debit card
หรือ paypal account
และสร้าง nonce จากที่เก็บไว้ payment-method
ได้ไหม