Fixing the cybersource issue in the Lilac release of Ecommerce

I am currently taking a stab at fixing the cybersource integration in the Lilac (and potentially Maple?) release of Ecommerce. However, I am limited by my own understanding of Ecommerce and how to set up commercial courses. For instance, I am currently unable to register to a paying course because I have no idea how to bypass (or to setup?) user verification. Is user verification mandatory in all cases? Do I have to create a new course mode if I want to bypass user verification?

Thanks!

1 Like

Caveats: I don’t know much about ID Verification nor installation/configuration outside devstack and edx.org

Ecommerce does not require ID Verification to purchase an upgrade, at least in devstack and edx.org; that will be required to issue a verified certificate by the end of the course, but ecommerce does not require it to make the purchase as far as I know. Am I misunderstanding your question?

1 Like

Sorry about the late reply; it took me some time to setup a Maple server with Ecommerce enabled. I can confirm that the LMS does require identity verification to purchase an upgrade.

As you can see in the screenshot below, the “upgrade” link points to http://mfehost/account/id-verification?course_id=

When I click this upgrade link, I am forwarded to the account MFE, which briefly displays the identify verification form before showing this:

Thus, identity verification is effectively preventing me from testing the ecommerce functionality. I did attempt to enable the AUTOMATIC_VERIFY_STUDENT_IDENTITY_FOR_TESTING feature flag, as suggested by @Zia_Fazal in this Slack thread, but it not change anything.

I’m kind of stuck because of this issue for now…

@regis you can bypass this verification step by manually approving identity of your account to test ecommerce.
Go to django admin admin/verify_student/manualverification/add/ for manual approval. Select status to approved and select the user who should be approved and set Expiration date to future date.

@regis I think what you’re showing is happening in the LMS or otherwise before the upgrade goes to ecommerce; again, I don’t know much about IDV, but I will try to find an IDV expert to help with this.

Thanks for your suggestion @Zia_Fazal! You made me go through the initial error message, and now I get the following one: “You have already submitted your verification information. You will see a message on your dashboard when the verification process is complete (usually within 5 days).”

At this point, I have reached out to edX for help and Ben Holt (is that you @bjh?) responded positively.

is that you @bjh?

Yup, that’s me, I’ve updated my profile both here and on Slack to make this clearer, and I look forward to talking with you.

1 Like

Hey Régis!

I think you may be running into this part of the code:

In other words, I believe for your setup:

Could you check whether this is the case for your instance?

Hope this helps.

Thanks,
Phil

@regis, I checked with a fresh install of tutor that the aforementioned solution is a fix to the Identity Verfication problem. Once you get past this, check out :
https://discuss.overhang.io/t/have-you-configured-cybersource-in-liliac/2170/4

@suman, thank you very much for your verification, write up, & PR! That was incredible. I will start testing your fix.

Best,
Phil

@pshiu @suman thank you very much to you both for investigating this issue. I am happy to report that I am able to get past identity verification by enabling the commerce configuration on the LMS, as you suggested.

In a nutshell, what was missing was calling the following command during ecommerce initialization:

./manage.py lms configure_commerce

The thing is that this command is not documented anywhere. What I usually do when porting an IDA is to reverse-engineer the installation commands from the configuration repository, but this command is nowhere to be found there.

You guys are shortlisted for getting the “solving the ecommerce situation” special award, along with @Felipe :wink: (cc @nedbat)

Now moving on to the cybersource issue and the fix that was proposed by @suman!

2 Likes