Search code examples
ruby-on-railsrubypaypalactivemerchant

ActiveMerchant recurring payment - cycles parameters has no effects?


I'm using ActiveMerchant to process a recurring payment. I want the payment to have a limited number of occurence but even if I pass the 'cycles' parameters my payment has no end or any trace of limited number of occurence when I go to see the results of my transaction in the sandbox site ??

Here is my gateway definition :

  config.after_initialize do
    ActiveMerchant::Billing::Base.mode = :test
    paypal_options = {
        login: "my_api.ca",
        password: "QNBW72G3Q999999",
        signature: "AFcWxV21C7fd0v3bYYYRCpSSRl31AmVtuyteuytuetwuytwtwEyY5cTGMA"
    }
    ::MY_PAYMENT_GATEWAY = ActiveMerchant::Billing::PaypalCaGateway.new(paypal_options)
  end

And here is my code to process the recurring payment :

response = MY_PAYMENT_GATEWAY.recurring(amount,
                                         @publisher.credit_card.active_merchant_credit_card,
                                         {:ip => request.remote_ip,
                                          :email => current_publisher.user.email,
                                          :period => 'Month',
                                          :frequency => 1,
                                          :cycles => @chosen_package.duration.to_i,
                                          :start_date => Time.now.to_date,
                                          :description => "Try to pay only @chosen_package.duration times !? "})

My comprehension is that the 'cycles' parameters should reflect as a maximum number of charge in sandbox test site but I'm stuck... like like it's not working !?

Any help appreciated ! Thx a lot !

Serge


Solution

  • I have found it by digging into ActiveMerchant source... The good parameters name is :total_billing_cycles, not :cycles as stated in the documentation that I have...

    Work like a charm now :-)