Кто-нибудь реализовывал PayPal API через приложение для iPhone? - PullRequest
36 голосов
/ 23 апреля 2009

Кажется, что единственный способ остаться "в приложении" - это дать им UIWebView мобильного сайта PayPal и позволить им завершить транзакцию там, в противном случае пользователю потребуется использовать свой ключ API.

Это звучит правильно, и кто-нибудь получил или видел какой-либо пример кода? Я должен думать, что это обычный кусок кода.

UPDATE: Apple позволит это? Это благотворительное приложение, поэтому я полагаю, что нет никаких проблем.

Re-UPDATE: Я предположил, что неправильно. Apple не будет разрешать платежи непосредственно в приложениях, использующих PayPal. Вы должны перенаправить на веб-интерфейс.

Ответы [ 6 ]

23 голосов
/ 12 мая 2009

Re-Update: Как показано ниже, этот код все еще может быть полезен для покупки физических товаров


Обновление:

Хотя этот код работает, условия App Store не позволяют вам использовать этот код в приложении.


Оригинальный ответ:

Я понял это после некоторых серьезных исследований API. Ниже приведен метод, который создает HTTP POST для отправки в Paypal и выполняет NSURLRequest. Вы можете заполнить соответствующие строковые переменные формата. Я использовал HTTP-клиент , чтобы проверить, что я делал.

- (void)sendPayPalRequestPOST{

perfomingSetMobileCheckout=YES;
recordResults = FALSE;

NSString *parameterString = [NSString stringWithFormat:@"USER=%@&PWD=%@&SIGNATURE=%@&VERSION=57.0&METHOD=SetMobileCheckout&AMT=%.2f&CURRENCYCODE=USD&DESC=%@&RETURNURL=%@", userName, password, signature, self.donationAmount, @"Some Charge", returnCallURL];

NSLog(parameterString);

NSURL *url = [NSURL URLWithString:paypalUrlNVP];
NSMutableURLRequest *theRequest = [NSMutableURLRequest requestWithURL:url];
NSString *msgLength = [NSString stringWithFormat:@"%d", [parameterString length]];

[theRequest addValue: msgLength forHTTPHeaderField:@"Content-Length"];
[theRequest setHTTPMethod:@"POST"];
[theRequest setHTTPBody: [parameterString dataUsingEncoding:NSUTF8StringEncoding]];


NSURLConnection *theConnection = [[NSURLConnection alloc] initWithRequest:theRequest delegate:self];

if( theConnection ){
    webData = [[NSMutableData data] retain];
    [self displayConnectingView];

}else{
    NSLog(@"theConnection is NULL");
}
}

После этого вам нужно проанализировать ответ, захватить ключ сеанса и создать UIWebView, чтобы перенести их на мобильный сайт PayPal. Paypal позволяет вам указать «обратный URL», который вы можете сделать что угодно. Просто продолжайте проверять UIWebview в методе делегата для этого адреса, и тогда вы узнаете, что транзакция завершена.

Затем вы отправляете еще одну HTTP-запись (аналогичную приведенной выше) в Paypal для завершения транзакции. Вы можете найти информацию об API в документации Paypal Mobile Checkout API.

3 голосов
/ 17 февраля 2010

Попробуйте перейти по этой ссылке. Я верю, что это поможет вам.

Это очень просто понять. Ссылка имеет очень простой поток и простые имена переменных

http://helpmesolve.blogspot.com/

3 голосов
/ 10 декабря 2009

Apple разрешит индивидуальные заказы для физических покупок. Я разговаривал с ними на iPhone Tech Talks в Лондоне, и они сказали, что они не будут поддерживать физические покупки с помощью In App Purchase, поскольку им придется иметь дело с возвратами и т. Д. Они также ссылались на существующие приложения, в которых есть пользовательские проверки.

1 голос
/ 12 марта 2013

В зависимости от сложности ваших потребностей, PayPal для iOS SDK (выпущенный в марте 2013 года) может быть билетом.

1 голос
/ 10 августа 2010

Разве невозможно использование библиотеки мобильных платежей Paypal?

https://www.x.com/community/ppx/xspaces/mobile/mep?view=overview

1 голос
/ 29 июля 2009

Когда вы говорите «Я ошибся» относительно того, что Apple разрешает благотворительные пожертвования в приложении, можете ли вы предоставить больше информации? Я работаю над приложением, и есть требование разрешать благотворительные пожертвования ... Я не смог найти что-то от Apple, строго запрещающее это, но я не смог найти приложение, которое позволяет благотворительные пожертвования в магазин, либо.

(Я боролся с тем, стоит ли публиковать это здесь, а не как новый вопрос верхнего уровня, но вы - первый человек, с которым я столкнулся с непосредственными знаниями о благотворительности в вопросе приложения iPhone).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...