I have "Update order status upon renewal completion with full payment" set to "Completed', yet recurring payments still say "Pending".

Thoughts?

Comments

univate’s picture

Category: bug » support
tinker’s picture

Has the payment been successfully process through your payment gateway?
Does the order have an admin comment indicating successful payment?

pixelsweatshop’s picture

yes to both.

jday’s picture

I'm using alpha6 and AuthNet ARB.

We have the same problem that the order status for recurring orders stays at 'pending' after the credit card is charged. We do not get the admin message that the transaction was authorized and captured successfully as the non-recurring orders have.

Authorize.net said two extra values are sent back in the silent post and we should be looking for...

tinker’s picture

This is probably due to the silent post URL not being configured in Authorize.net. If you are using ARB you must set this otherwise your site will not be informed when the transaction has been settled.

Login to Authorize.net then navigate to ACCOUNT -> SETTINGS -> SILENT POST URL
The default is: http://www.example.com/authnet/silent-post (replace www.example.com with your domain)

This is mentioned (in an understated manner) in the payment gateway configuration admin page:
STORE ADMINISTRATION -> CONFIGURATION -> PAYMENT SETTINGS -> PAYMENT GATEWAYS -> AUTHORIZE.NET -> ARB SETTINGS

"Make sure you have set your Silent POST URL in Authorize.Net to http://www.example.com/authnet/silent-post."

pixelsweatshop’s picture

This issue I am having with WPP

univate’s picture

I would suggest checking the same thing in WPP, are the IPN messages setup and working?

ShaunDychko’s picture

Ahh, this one got me. Thanks tinker.

jday’s picture

The silent post url is not the issue for me, that was set up from the start. For what ever reason the amount charged is not reflected on the new order, a balance is listed even though the the credit card is charged. So I get a new order but no payment is applied.

All non-recurring orders are working fine, the status is 'payment-received'.

interestingaftermath’s picture

I'm not sure if it helps any, but my issue is very similar to #9.

The new order for the recurring charge is created and that order is marked "Pending". There IS a balance on the order matching the recurring charge but the card is NOT charged.

All non-recurring orders work fine.

EDIT: Do I need to have Silent Post URL setup when using uc_cim?

tinker’s picture

@jday, so are you getting log entries stating that a silent post was received for the various orders? I switched from ARB to CIM a couple of months back so I do not remember the exact message. I think it was something like "Silent Post received for order..." Are you using a Fully Qualified Domain Name (FQDN) on your site? (IP addresses do not work). Is the Silent post address similar to what I stated?

@interestingaftermath You do not need silent post set up for CIM since this has an instant reply. Are CIM profiles created for your customers. Each original recurring order should have an admin message stating "Authorize.Net: CIM profile created - <>"? If not then you may have to configure the payment gateway or request the service. Do you have payment logging enabled? Any messages? In general I would recommend starting a new issue if yours is not exactly the same as other users experience.

interestingaftermath’s picture

Sorry for not updating this sooner. My issue is different than this but I have resolved it. I was upgrading from D5 so I had some missing columns and columns that needed renamed. For whatever reason the upgrade script didn't take care of it. It's all working now. Thanks!

EvanDonovan’s picture

@interestingaftermath: I found that when I did an upgrade from an earlier version of this module I had to uninstall & re-configure it in order to get it to work. Perhaps that would help others who face similar issues.

AlexisWilke’s picture

Hi guys,

I had the same problem. Note that there is one other case, that I have not seen mentioned here, which is when an item needs shipping. If it requires shipping then it cannot be marked completed until shipping occurred.

This being said, I found another problem with the "Pending" versus "Complete".

function uc_recurring_recurring_info() {
  $items['default'] = array(
    'name' => t('Default handler'),
    'module' => 'uc_recurring',
    'fee handler' => 'default',
    'process callback' => 'uc_recurring_default_handler',
    'renew callback' => 'uc_recurring_default_handler',
  [...]
}

I create the uc_test_payment in order to be able to test Credit Card payments with recurring fees. That works great in itself, but renewed orders remain "Pending". The cause is that the Balance is $0.00 (thus the action event doesn't occur since the predicates fail.)

I made use of the default handlers thinking that would be enough, but that's not the case. The default renew handler returns TRUE. Nothing more.

function uc_recurring_default_handler() {
  return TRUE;
}

Should the default renew handler do a little more? I would propose that we add the following call to the default renew handler:

  uc_payment_enter($order->order_id, $order->payment_method,
                                 $order->order_total, $fee->uid, $result['data'], $result['comment']);

Now I'm not too sure if the default renew handler was really expected to do nothing... I'll fix my test code and have my own handler do this exact thing so it works, but something to consider?

Thank you.
Alexis Wilke

jday’s picture

our silent post value looks like:https://domain.com/authnet/silent-post

here are the log entries for the last recurring order:
2 log entries under 'uc_authorizenet'
1. ARB Silent POST received for order : Array.....yadda yadda
[x_type] => auth_capture
[x_subscription_id] => 4748665
[x_subscription_paynum] => 26

2. Invalid ARB payment notification received.

then under 'uc_recurring'
1. 1 recurring fees processed successfully; 0 failed.

The order status is 'pending' rather than 'payment received' when the cc is successfully charged. Anyone have ideas on that 'invalid' problem? strange

AlexisWilke’s picture

jday,

I suggest you verify your conditional actions, just in case.

Alexis Wilke

jday’s picture

ca1: if balance is less than or equal to $0 update status to payment received
ca2: notify customer if renewal fails
ca3: notify customer if renewal succeeds

AlexisWilke’s picture

That looks perfect...

tinker’s picture

@jday What are the triggers for the conditional actions? I remember having issues with order status based triggers. I think I switched to "Customer completes checkout" triggers to fix.