I have set role assignment up to assign a "Paid Member" role upon purchase of a product that will expire in 1 day. However, the roles are never assigned. I am using AuthorizeNet in test mode and also have uc_recurring module enabled. When reviewing the order log everything appears to be working except assigning a role. Are there bugs with ubercart that are being addressed relating to role assignment? Then I view the "Role Expiration" Report no roles are set up to expire. Is there something that I'm missing. The order status is being set to "Completed".

07/15/2009
10:45:48 AM - Authorize.Net: CIM profile created

07/15/2009
10:45:48 AM 122 Authorization and capture
ACCEPTED: (TESTMODE) This transaction has been approved.
Amount: $1.00

07/15/2009
10:45:48 AM - Recurring fee 6 added to order.

07/15/2009
10:45:50 AM - Order created through website.

Comments

gauravkhambhala’s picture

Hi,

I am also facing the same problem. Though order status is completed after successful payment, the roles are not assigned as defined in feature of the product. !!???

Have you got any luck ??

Few posts in http://ubercart.org states workflow-ng needs to be set. But I think with UC 2 and drupal 6 it is not needed. UC 2 will assign a role to user when order status is complete. Isn't it??

rkarajgi’s picture

I am experiencing the same problem - the Role is not being assigned after I complete a order/checkout/payment transaction.

The Ubercart site has the procedure given here : http://www.ubercart.org/docs/user/10967/selling_site_access_role_assignm...

However, when I am on Administer -> Store Configuration -> Configuration -> Product Settings -> Product Features page, under the Role Assignment Settings, I do not see any "Order Status" drop down. I am assuming the documentation has older screen image.

Any idea if one has to add specific conditional actions in order that the Role Assignment is done upon purchase?

rkarajgi’s picture

On the Product configuration page, if the product is shippable, then the Role Assignment does not happen.

I guess that makes sense - the Role Assignment is supposed to happen for Site Access kind of product purchases.

When I removed the checkbox for the product is shippable, and completed the transaction, the role was assigned automagically properly.

I hope this helps others facing same problem.

Island Usurper’s picture

Status: Active » Needs review

We normally handle support requests on the Ubercart forums, but this issue needs some particular clarification.

In Ubercart 2.x, the roles and file downloads are granted through a Conditional Actions predicate. By default, this happens when the order is updated, and the new order status is "Completed". Additionally, if an order is not shippable, and payment is completed when the order is made, it is automatically updated to the "Completed" status. Otherwise, you need to set the order to completed when the shipment is made.

That works for the most common situations. It sounds like it's not doing what it's supposed to for some of you, so review how the Conditional Actions are set up and that they make sense. I have to caution you not to grant files or roles on the "Payment received" status because that can happen before a user is created for anonymous customers, and that means they don't get what they paid for.

Island Usurper’s picture

Status: Needs review » Closed (duplicate)

There's a patch to change the default configuration of the conditional actions at #479836: Roles and File Downloads Not Being Assigned for Anonymous Checkouts, so I think this should be considered a duplicate issue.