Apple Pay с помощью Stripe отправляет токен на сервер и взимает плату за покупку

Я использую Apple Pay в своем приложении для iPhone с поставщиком платежей Stripe.

Я реализовал Apple Pay с помощью test_key, он возвращает токен и получает PKPaymentAuthorizationStatusSuccess в симуляторе.

На самом деле, я не знаю, когда оплата будет произведена в реальном времени с реального устройства.

У меня вопрос: нужно ли мне отправлять Token на сервер, чтобы взимать плату за этот платеж, или он будет взимать плату с приложения iPhone после получения токена?

Согласно приведенному ниже методу они отправляют токен на сервер, поэтому он будет взиматься только на сервере?

- (void)createBackendChargeWithToken:(STPToken *)token
                      completion:(void (^)(PKPaymentAuthorizationStatus))completion {
NSURL *url = [NSURL URLWithString:@"https://example.com/token"];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:url];
request.HTTPMethod = @"POST";
NSString *body     = [NSString stringWithFormat:@"stripeToken=%@", token.tokenId];
request.HTTPBody   = [body dataUsingEncoding:NSUTF8StringEncoding];
NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration];
NSURLSession *session = [NSURLSession sessionWithConfiguration:configuration];
NSURLSessionDataTask *task =
[session dataTaskWithRequest:request
           completionHandler:^(NSData *data,
                               NSURLResponse *response,
                               NSError *error) {
               if (error)
               {
                   completion(PKPaymentAuthorizationStatusFailure);
                   ;
               }
               else
               {
                   completion(PKPaymentAuthorizationStatusSuccess);
               }
           }];
[task resume];
}

Пожалуйста, предложите ли мы взимать плату только с сервера?

Спасибо


person Niks    schedule 15.01.2016    source источник


Ответы (1)


Вам необходимо отправить токен на свой сервер.

Для создания платежа требуется ваш секретный ключ API, который никогда не должен быть доступен из вашего приложения для iPhone.

person Matthew Arkin    schedule 15.01.2016