Mit Gutschein Codes mit Streifen

Ich habe eine Website, die mit Streifen verarbeiten, die ein Abo-Zahlungen. Es gibt nur eine Art von Abonnement.
Ich folgte dieses tutorial auf NetTuts zu tun, das initial setup.
Eine form gut funktioniert die Verarbeitung von Abonnements und alles funktionierte. Kunde bat um einen Gutschein-code. Stripe unterstützt diese, so dass ich versuchen, fügen Sie einen Gutschein-code, um die bestehenden form.

Habe ich eingerichtet, Gutschein-codes in Streifen, legen Sie mein Test-Tasten und umgeschaltet, um den test-Modus in Streifen.
Ich trete ein paar Prüfungen in meinem code:

  1. Überprüfen, um zu sehen, ob ein Gutschein eingegeben wurde, wenn nicht erstellen Sie ein neues customer-Objekt, ohne eine Gutschein-option
  2. Überprüfen, um zu sehen, ob der Gutschein gültig ist, wenn nicht wieder ein Fehler

Ob es ein Gutschein eingegeben und es ist gültig, dann übergeben Sie die passenden Streifen-Gutschein-Objekt als eine option beim erstellen eines neuen Kunden.

 if(isset($couponCode) && strlen($couponCode) > 0) {
  $using_discount = true;
  try {
        $coupon = Stripe_Coupon::retrieve($couponCode);
        if($coupon !== NULL) {
           $cCode = $coupon;
        }
        //if we got here, the coupon is valid

     } catch (Exception $e) {

        //an exception was caught, so the code is invalid
        $message = $e->getMessage();
        returnErrorWithMessage($message);

     }


}

try
{ 
  if($using_discount == true) {
    $customer = Stripe_Customer::create(array(
          "card" => $token,
          "plan" => "basic_plan",
          "email" => $email,
          "coupon" => $cCode
       ));
  }
  else {
        $customer = Stripe_Customer::create(array(
          "card" => $token,
          "plan" => "basic_plan",
          "email" => $email
       ));
  }

$couponCode ist gefüllt mit dem Formular-Feld korrekt die gleiche Weise alle anderen Felder gefüllt sind, habe ich dreifach überprüft, dass es gezogen wird, richtig.

Wenn ich versuche, das Formular zu senden, ohne einen Gutschein code für den Gebühren in voller Höhe und geht durch Streifen richtig.

Aber wenn ich geben Sie entweder eine gültige ODER ungültige Gutschein-code, es vergeht nicht ein Gutschein-Objekt mit dem customer-Objekt beim erstellen eines neuen customer-Objekt und belastet den vollen Betrag, wenn Sie durch Streifen.

Habe ich schaute auf den code für Stunden und kann nicht scheinen, um herauszufinden, warum es immer versäumt zu erkennen, die Rabatt-code, und übergeben Sie das passende coupon-Objekt zu Streifen.

InformationsquelleAutor biggles | 2013-02-22

Schreibe einen Kommentar