2016-05-27 3 views
0

Transaction.sale()またはSubscription.create()resultから、お支払いのクレジットカードの詳細にアクセスするにはどうすればよいですか?Braintree-トランザクションOR契約のlast_4クレジットカードの詳細を取得するには

は、私は次の方法があります:あなたが見ることができるように

def bt_make_customer(donation, nonce) 
    result = Braintree::Customer.create(
     first_name: donation.user.first_name, 
     last_name: donation.user.last_name, 
     email: donation.user.email, 
     payment_method_nonce: nonce 
    ) 
    end 

    def bt_make_payment(donation, customer, nonce) 
    if donation.type == "ReoccurringDonation" 
     result = Braintree::Subscription.create(
     payment_method_token: customer.payment_methods[0].token, 
     price: donation.amount, 
     plan_id: "pay-monthly" 
     ) 
    elsif donation.type == "SingleDonation" 
     result = Braintree::Transaction.sale(
     :amount => donation.amount, 
     :payment_method_nonce => nonce, 
     :options => {:submit_for_settlement => true} 
     ) 
    end 
    end 

は、プログラムは、1回の寄付、または毎月のサブスクリプションを受け入れます。どちらかが作成されると、私はlast_4のようなクレジットカードの詳細をカスタムレシートに表示したいと思います。

答えて

0

より多くのヘルプをご覧ください はあなたが取引後byebugでプログラムを一時停止することができ

result.transaction.credit_card_details.{field you want} 

を入力する必要があり、クレジットカードのフィールドにアクセスし、フィールドかを見るためにあなたのコンソールでresult.inspectを入力します結果が含まれています。

0

あなたは、クレジットカード番号の下4桁を取得するため

result.last_4 

を呼び出すことができます。 here

+0

私は 'NoMethodError例外を取得しています:未定義メソッド 'last_4' for#' – Mirror318

関連する問題