2

アプリケーションの支払いゲートウェイとして Authorize ios sdk を使用しようとしています。正常に統合されましたが、テスト アカウントで上記のエラーが発生しています。

AuthNet *an = [AuthNet getInstance];

[an setDelegate:self];

CreditCardType *creditCardType = [CreditCardType creditCardType];
creditCardType.cardNumber = @"38000000000006";
creditCardType.cardCode = @"100";
creditCardType.expirationDate = @"121213";

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] uniqueIdentifier]
 stringByReplacingOccurrencesOfString:@"-" withString:@"_"];
request.anetApiRequest.merchantAuthentication.sessionToken = sessionToken;
//[an authorizeWithRequest:request];
[an purchaseWithRequest:request];
4

2 に答える 2

5

デバイスが既に登録されている場合は、デバイス登録コード
をコメントしてください。下の行は登録用です。コメントしてください。

[an mobileDeviceRegistrationRequest:mobileDeviceRegistrationRequest];

これがあなたのお役に立てば幸いです。他の問題があれば教えてください。

于 2013-08-30T07:22:46.720 に答える
2

このエラーは、deviceRegistrtationRequest の応答を取得する前に deviceLoginRequest 呼び出しが実行されているために発生しています。このエラーを回避するには、deviceLogin を要求する前に、deviceRegistration 呼び出しの応答を取得してください。

于 2014-01-30T07:25:10.037 に答える