在我的iOS應用程序的非美國開發商,我已經集成使用貝寶SDK中的自適應支付從https://www.x.com/developers/paypal/documentation-tools/paypal-sdk-index貝寶沙盒工作不使用貝寶的iOS SDK
的PayPal改變了他們的網站後,我不能夠進行交易使用上面的庫。
這裏是我的代碼
-(void)processSplitPaymentWithFacebuyAdminPayPalId:(NSString*)adminId sellerPayPalId:(NSString*)sellerId withAdminPercentage:(NSNumber*)adminPercentage forTotalAmount:(NSNumber*)totalAmount andShippingCharges:(NSNumber*)shippingCharges
{
NSLog(@"!!!--------------------------------------");
NSLog(@"AdminID: %@",adminId);
NSLog(@"SellerID: %@",sellerId);
NSLog(@"Admin Percentage: %@",adminPercentage);
NSLog(@"Total Amount: %@",totalAmount);
NSLog(@"Shipping Charges: %@",shippingCharges);
NSLog(@"!!!--------------------------------------");
PayPal *ppMEP = [PayPal getPayPalInst];
ppMEP.shippingEnabled = TRUE;
ppMEP.dynamicAmountUpdateEnabled = TRUE;
ppMEP.feePayer = FEEPAYER_EACHRECEIVER;
PayPalAdvancedPayment *payment = [[[PayPalAdvancedPayment alloc] init] autorelease];
payment.paymentCurrency = @"AUD";
payment.receiverPaymentDetails = [NSMutableArray array];
NSArray *emails = [[NSArray alloc]initWithObjects:adminId,sellerId, nil];
for (int i = 0; i < emails.count; i++)
{
PayPalReceiverPaymentDetails *details = [[[PayPalReceiverPaymentDetails
alloc] init] autorelease];
details.invoiceData = [[[PayPalInvoiceData alloc] init] autorelease];
float adminAmount = [adminPercentage floatValue];
float sellerAmount = [totalAmount floatValue] - adminAmount;
switch (i) {
case 0:
// Admin commission
details.subTotal = [NSDecimalNumber decimalNumberWithString:[NSString stringWithFormat:@"%f",adminAmount]];
details.description = @"Amount payed to Admin as a Commission";
details.merchantName = [NSString stringWithFormat:@"%@",ADMIN];
break;
case 1:
// Seller amount
details.invoiceData.totalShipping = [NSDecimalNumber decimalNumberWithString:[NSString stringWithFormat:@"%@",shippingCharges]];
details.subTotal = [NSDecimalNumber decimalNumberWithString:[NSString stringWithFormat:@"%f",sellerAmount]];
details.description = @"Amount payed to Seller";
details.merchantName = [NSString stringWithFormat:@"%@ : %@",SELLER,@"Seller Name"];
break;
default:
break;
}
details.recipient = [emails objectAtIndex:i];
[payment.receiverPaymentDetails addObject:details];
}
[ppMEP advancedCheckoutWithPayment:payment];
[emails release];
}
但每次我嘗試進行交易,我得到以下錯誤
errorId: 580022
message: The receiver is based in a country that isn't enabled to receive payments
我的測試帳戶澳大利亞創建。我的應用程序將只在澳大利亞提供。
現在我的問題是 1)即使我的iOS應用程序進入生產,這有什麼關係嗎? 2)我們是否也可以使用上述鏈接中提供的iOS SDK或者我們是否需要使用最新的SDK?
我看到一些links但我不清楚發生了什麼問題。
任何形式的幫助,高度讚賞。謝謝。
UPDATE:
如果我使用美國測試帳戶,然後仍然是我的交易沒有完成。
- (void)paymentFailedWithCorrelationID:(NSString *)correlationID
以上方法被調用&這裏是響應
severity: None
category: Application
errorId: 0
message: None
下面是截圖
啊注意到你正試圖在澳大利亞使用它。目前僅在美國支持新的移動支付庫。讓我聯繫團隊,看看他們是否可以幫助解決發生的問題。 – Praveen
感謝Praveen的回覆。我無法切換到新圖書館,原因有兩個: 1)我需要在澳大利亞使用應用程序 2)我需要自適應付款 如果您從團隊獲得任何信息,請讓我知道。 謝謝 – iOSAppDev
看起來舊的MPL庫不再支持了。您可以將自適應付款API與webview集成(而不是移動支付庫)一起使用嗎? – Praveen