![](/img/trans.png)
[英]Android Paypal SDK Error: Merchant does not Accept payments of this type
[英]paypal system error/merchant not accepting payments of this type
我已经完成了这个项目的一半,但我遇到了一些问题。 我正在尝试使用 paypal 集成在我的 android 应用程序上接受付款。 当我付款的时候,我得到了两个错误。 当我尝试使用我的 paypal 登录信息付款时,我收到系统错误,请稍后再试,然后当我尝试使用卡信息付款时,我收到付款失败:商家不接受此类付款。 我不确定发生了什么。 有人可以帮帮我吗。 提前致谢。 这是我的代码
public class PaymentPageActivity extends AppCompatActivity {
private static final int PAYPAL_REQUEST_CODE=7777;
private static PayPalConfiguration config=new PayPalConfiguration().environment(PayPalConfiguration.ENVIRONMENT_SANDBOX)
.clientId(Config.PAYPAL_CLIENT_ID);
Button btnpaynow;
EditText edtamount;
String amount;
@Override
protected void onDestroy() {
stopService(new Intent(this, PayPalService.class));
super.onDestroy();
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_payment_page);
getWindow().setStatusBarColor(ContextCompat.getColor(this, R.color.black));
//start paypal service
Intent intent=new Intent(this,PayPalService.class);
intent.putExtra(PayPalService.EXTRA_PAYPAL_CONFIGURATION,config);
startService(intent);
btnpaynow=findViewById(R.id.btnPayNow);
edtamount=findViewById(R.id.edtAmount);
btnpaynow.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
processPayment();
}
});
}
private void processPayment() {
amount=edtamount.getText().toString();
PayPalPayment payPalPayment = new PayPalPayment(new BigDecimal("1.75"), "USD", "ad",PayPalPayment.PAYMENT_INTENT_SALE);
Intent intent=new Intent(this, PaymentActivity.class);
intent.putExtra(PayPalService.EXTRA_PAYPAL_CONFIGURATION,config);
intent.putExtra(PaymentActivity.EXTRA_PAYMENT,payPalPayment);
startActivityForResult(intent,PAYPAL_REQUEST_CODE);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
if(requestCode==PAYPAL_REQUEST_CODE){
if(resultCode==RESULT_OK){
PaymentConfirmation confirmation=data.getParcelableExtra(PaymentActivity.EXTRA_RESULT_CONFIRMATION);
if(confirmation!=null){
try {
String paymentDetails=confirmation.toJSONObject().toString(4);
startActivity(new Intent(this, PayPalPaymentDetails.class).
putExtra("Payment Details",paymentDetails)
.putExtra("Amount",amount)
);
} catch (JSONException e) {
e.printStackTrace();
}
}
}else if(resultCode== Activity.RESULT_CANCELED){
Toast.makeText(this, "Cancel", Toast.LENGTH_SHORT).show();
}else if(resultCode==PaymentActivity.RESULT_EXTRAS_INVALID){
Toast.makeText(this, "Invalid", Toast.LENGTH_SHORT).show();
}
}
super.onActivityResult(requestCode, resultCode, data);
}
}
当我尝试使用卡信息付款时,我收到付款失败:商家不接受此类付款。 我不确定发生了什么
正在发生的事情正是如此。 该帐户不接受“卡”类型的付款。 您使用的是非常旧的已弃用 SDK。 不起作用。
If you need to accept PayPal payments via a native SDK, the Braintree Mobile SDK is the only supported one: https://developer.paypal.com/docs/accept-payments/express-checkout/ec-braintree-sdk/get-开始/ . 此集成的服务器端部分需要 Web 服务。
否则,集成非本地 JavaScript PayPal 结帐, https://developer.ZA0A058BAAEEF16E88FZF6BDEE3/checkout3/E88FZF6BD2
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.