[英]iOS PayPal integration with backend chained payments
我正在努力將PayPal集成到我們的iOS應用中。 在我們的后端,我們實現了鏈接支付,並在api上公開了它。 后端負責生成支付密鑰。
在Web應用程序上,庫打開一個燈箱,並注入支付密鑰,供用戶通過登錄批准支付。
我們需要使用paypal sdk或MPL庫在iOS應用上完成同一操作。 我看到了如何在iOS應用程序中從頭到尾進行鏈式付款,但是沒有看到如何使用已經生成的付款密鑰直接跳入批准過程。
我剛剛在iPhone中完成了延遲連鎖付款
首先創建帶有所有參數(例如金額,收據等)的交易,並借助參考貝寶鏈接從后端(PHP,JAVA,RUBY或任何)獲取交易的PAY_KEY:-步驟2: https : //devtools-paypal.com/指南/ ap_chained_payment / php?success = true
然后使用paykey我們只能在webview中付款,因此在ViewController中使用以下URL打開UIWebView
[wbView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:[NSString stringWithFormat:@"https://www.sandbox.paypal.com/webapps/adaptivepayment/flow/pay?paykey=%@&expType=mini",@"[PAY_KEY]"]]]];
和句柄委托方法
#pragma mark - UIWebView Delgate
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:UIWebViewNavigationType)navigationType
{
NSLog(@"\n\n-- %@\n--%@\n\n",request.URL,[request.URL absoluteString]);
if([[request.URL absoluteString] isEqualToString:@"https://www.sandbox.paypal.com/webapps/adaptivepayment/flow/closewindow"])
{
[self validatePayment];
return YES;
}
return YES;
}
- (void)webViewDidStartLoad:(UIWebView *)webView
{
if (!actView.isAnimating) {
[actView startAnimating];
}
NSLog(@"start %@",webView.request);
}
- (void)webViewDidFinishLoad:(UIWebView *)webView
{
NSLog(@"End %@",webView.request);
[actView stopAnimating];
}
- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error
{
[actView stopAnimating];
}
這將打開popwindow,用於登錄和支付給定的PAYKEY交易
登錄並在Paypal Popup中付款
最后關閉彈出窗口,您可以使用PAYKEY驗證付款
從后端https://devtools-paypal.com/guide/ap_chained_payment/php?success=true中的第4步開始
目前,除MPL之外,沒有針對Adaptive Payments的真正本機流程。 MPL的警告是,一旦將自適應流移植到RESTful API中,然后移植到mSDK中,就不建議使用它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.