2017-04-13 8 views
0

Google Play(GoogleサービスAndroidPublisherを使用)と同じようにApp Storeサブスクリプションをキャンセルすることはできますか?iOSでのアプリ内サブスクリプションのキャンセル

public function checkPurchases($subscription_id, $receipt_data, $sandbox_receipt = false) 
{ 
    if ($sandbox_receipt) { 
     $url = "https://sandbox.itunes.apple.com/verifyReceipt/"; 
    } else { 
     $url = "https://buy.itunes.apple.com/verifyReceipt"; 
    } 
    $ch = curl_init($url); 
    $data_string = json_encode(array(
     'receipt-data' => $receipt_data, 
     'password' => env(APPSTORE_PASS), 
    )); 
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST"); 
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
    curl_setopt($ch, CURLOPT_HTTPHEADER, array(
      'Content-Type: application/json', 
      'Content-Length: ' . strlen($data_string)) 
    ); 
    $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE); 
    curl_close($ch); 
    if (200 != $httpCode) { 
     return false; // Error validating App Store transaction receipt. Response HTTP code $httpCode 
    } 
    return true; 
} 
+0

はい、可能です。アプリからではありません。サブスクリプションは購入時に全額支払いされ、アップルのカスタマーサービスに連絡することによってのみ払い戻すことができます。たとえば、ユーザーが間違った製品を誤って購入した場合、カスタマーサポートはサブスクリプションをキャンセルして払い戻しを行うことができます。サブスクリプション期間の途中で顧客が心を変えて残りのサブスクリプションを支払うことを望まないと決めることはできません。 – Darshana

+0

これは、Appleのアプリ内購入のプログラミングガイドで説明されています。ユーザーがサブスクリプションを管理できるように、Webブラウザでサブスクリプション管理URLを開くことができます。あなたのアプリは更新を直接キャンセルすることはできません。 – Paulw11

答えて

0

はい、可能です。アプリからではありません。 ここにはappleの注釈があります。 サブスクリプションは購入時に全額支払いされ、Appleカスタマーサービスに連絡することによってのみ払い戻すことができます。たとえば、ユーザーが誤って間違った製品を購入した場合、カスタマーサポートはサブスクリプションをキャンセルして払い戻しを行うことができます。サブスクリプション期間の途中で顧客が心を変えて残りのサブスクリプションを支払うことを望まないと判断することはできません。

したがって、領収書を確認する際に、[Cancellation Date]フィールドをチェックし、有効期限にかかわらず、その予約をNOT VALIDとみなす必要があります。

関連する問題