This function is not covered by the test suite.  I'm particularly concerned with the error conditions here -- for example, are there other exceptions besides `ValueError` that the course locator functions could throw?  If so, this could mess up error handling higher up that's looking only for `PurchasedCallbackException`s