使用 Stripe 的 Apple Pay 将令牌发送到服务器并收取购买费用

Apple Pay using Stripe send token to server and charge for purchase

我在我的 iPhone 应用程序中使用 Apple Pay 与付款提供商 Stripe

我使用 test_key 实现了 Apple Pay,它 returns 令牌并在模拟器中获得 PKPaymentAuthorizationStatusSuccess

实际上,我不知道什么时候可以从真实设备完成实时付款。

I have a question is Do I need to send Token to server to charge for that payment or will charge itself withing iPhone application once get token?

按照以下方法,他们正在向服务器发送令牌,因此它只会在服务器上收费?

- (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];
}

请问我们只从服务器收费吗?

谢谢

您需要将令牌发送到您的服务器。

创建费用需要您的 API 密钥,您的 iPhone 应用绝不能访问该密钥。