「定期支払いのテスト」に関するドキュメントによると
日を指定すると、請求サイクルはサンドボックスでn分ごとに発生します。ここで、nは頻度を表します。
だからこれは私がしたことです:
DateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss:'000Z'");
df.setTimeZone(TimeZone.getTimeZone("GMT"));
RecurringPaymentsProfileDetailsType profileDetails = new RecurringPaymentsProfileDetailsType(df.format(new Date()));
BillingPeriodDetailsType trialPeriod = new BillingPeriodDetailsType(BillingPeriodType.DAY, 1, new BasicAmountType(CurrencyCodeType.USD, "40"));
trialPeriod.setTotalBillingCycles(1);
ScheduleDetailsType scheduleDetails = new ScheduleDetailsType();
scheduleDetails.setPaymentPeriod(new BillingPeriodDetailsType(BillingPeriodType.DAY, 1, new BasicAmountType(CurrencyCodeType.USD, "40")));
scheduleDetails.setDescription(agreementDescription);
scheduleDetails.setTrialPeriod(trialPeriod);
CreateRecurringPaymentsProfileRequestDetailsType reqDetails = new CreateRecurringPaymentsProfileRequestDetailsType(profileDetails, scheduleDetails);
reqDetails.setToken(token);
CreateRecurringPaymentsProfileRequestType reqType = new CreateRecurringPaymentsProfileRequestType();
reqType.setCreateRecurringPaymentsProfileRequestDetails(reqDetails);
CreateRecurringPaymentsProfileReq req = new CreateRecurringPaymentsProfileReq();
req.setCreateRecurringPaymentsProfileRequest(reqType);
return service.createRecurringPaymentsProfile(req);
このコードは、プロセスを高速化しないという問題(私にとっては大きな問題)を除いて、うまく機能します。それがないと、定期支払いのIPNをテストすることはできません。
この他のフォーラムの投稿によると、サンドボックスビジネスアカウントで「テストモード」を有効にする必要があるかもしれませんが、新しいサンドボックスサイトでそのオプションを見つけることができません。
私は何が欠けていますか?