0

私はiosで承認された.net支払いゲートウェイを使用しています。次の方法で

 (void) createTransaction {
    AuthNet *an = [AuthNet getInstance];

    [an setDelegate:self];

    CreditCardType *creditCardType = [CreditCardType creditCardType];
    creditCardType.cardNumber = @"4111111111111111";
    NSLog(@"babul cardNumber is %@",creditCardType.cardNumber);
    creditCardType.cardCode = @"100";
    NSLog(@"babul cardCode is %@",creditCardType.cardCode);
    creditCardType.expirationDate = @"1212";
    NSLog(@"babul expirationDate is %@",creditCardType.expirationDate);
    PaymentType *paymentType = [PaymentType paymentType];
    paymentType.creditCard = creditCardType;

    ExtendedAmountType *extendedAmountTypeTax = [ExtendedAmountType extendedAmountType];
    extendedAmountTypeTax.amount = @"0";
    extendedAmountTypeTax.name = @"Tax";

    ExtendedAmountType *extendedAmountTypeShipping = [ExtendedAmountType extendedAmountType];
    extendedAmountTypeShipping.amount = @"0";
    extendedAmountTypeShipping.name = @"Shipping";

    LineItemType *lineItem = [LineItemType lineItem];
    lineItem.itemName = @"Soda";
    lineItem.itemDescription = @"Soda";
    lineItem.itemQuantity = @"1";
    lineItem.itemPrice = @"1.00";
    lineItem.itemID = @"1";

    TransactionRequestType *requestType = [TransactionRequestType transactionRequest];
    requestType.lineItems = [NSArray arrayWithObject:lineItem];
    requestType.amount = @"1.00";
    requestType.payment = paymentType;
    requestType.tax = extendedAmountTypeTax;  
    requestType.shipping = extendedAmountTypeShipping;

   CreateTransactionRequest *request = [CreateTransactionRequest createTransactionRequest];
    request.transactionRequest = requestType;
    request.transactionType = AUTH_ONLY;
    request.anetApiRequest.merchantAuthentication.mobileDeviceId =
    [[[UIDevice currentDevice] uniqueGlobalDeviceIdentifier]
     stringByReplacingOccurrencesOfString:@"-" withString:@"_"];
    request.anetApiRequest.merchantAuthentication.sessionToken = sessionToken;
    [an purchaseWithRequest:request];
}

私は次のような応答を得ています

Create Transaction 応答 2012-07-26 19:14:00.131 Authorized[2355:207] エラーE00003名前空間「AnetApi/xml/v1/schema/AnetApiSchema.xsd」の要素「merchantAuthentication」には、名前空間「AnetApi/xml/v1/schema/AnetApiSchema.xsd」に無効な子要素「mobileDeviceId」があります。予想される可能な要素のリスト: 名前空間 'AnetApi/xml/v1/schema/AnetApiSchema.xsd' の 'name, transactionKey, sessionToken, password'。名前空間の警告: xmlns: URI AnetApi/xml/v1/schema/AnetApiSchema.xsd は絶対ではありません ttp://www.w3.org/2001/XMLSchema" xmlns="AnetApi/xml/v1/schema/AnetApiSchema.xsd" ^ 2012-07-26 19:14:00.131 Authorized[2355:207] Error = (null) 2012-07-26 19:14:00.247 Authorized[2355:207] babul 出力は Message.code = E00003 Message.text = The要素「merchantAuthentication」名前空間 'AnetApi/xml/v1/schema/AnetApiSchema.xsd' には、名前空間 'AnetApi/xml/v1/schema/AnetApiSchema.xsd' に無効な子要素 'mobileDeviceId' があります。予想される可能な要素のリスト: 名前空間 'AnetApi/xml/v1/schema/AnetApiSchema.xsd' の 'name, transactionKey, sessionToken, password'。

上記の問題に代わるものはありますか、またトランザクションが承認された .net に保存される方法はありますか (テスト アカウントを作成し、それらの資格情報を提供し、デバイスを承認しましたが、後で上記のエラーが発生します)

前もって感謝します

4

1 に答える 1

1

Apple は Web サービスや API を介したアプリケーションの支払いを承認しないため、アプリ内購入を選択する必要があると思います。

于 2012-09-26T19:29:04.623 に答える