uc_optile is a module created to work with Ubercart e-commerce. It features payment solution based on Native WITHOUT PCI implementation using Optile.


Initial LIST request/response
Credit card data validation via AJAX
CHARGE request via AJAX
IPN handler for order completion


Ubercart - Drupal e-commerce platform

Project page



git clone http://git.drupal.org/sandbox/dev-i-WaysHR/2090179.git uc_optile


PA robot’s picture

We are currently quite busy with all the project applications and we prefer projects with a review bonus. Please help reviewing and put yourself on the high priority list, then we will take a look at your project right away :-)

Also, you should get your friends, colleagues or other community members involved to review this application. Let them go through the review checklist and post a comment that sets this issue to "needs work" (they found some problems with the project) or "reviewed & tested by the community" (they found no major flaws).

I'm a robot and this is an automated message from Project Applications Scraper.

TR’s picture

Status: Needs review » Needs work

Your .info file needs to have a files[] key for each and every file that contains a class declaration, so that Drupal's class loader can find the files. See https://drupal.org/node/542202

i-Ways.hr’s picture

Status: Needs work » Needs review

Thanks for the info. I have removed include_once from the code and defined classes inside file[]

aramboyajyan’s picture


Here are some quick notes:

Major things:

  • You should not include the complete Optile SDK in your module. Instead, set a dependency in your module with Libraries API and define download link and require the files that way.
  • JS code should be added through Drupal behaviors. See Drupal 7 JavaScript API for more details.
  • Use t() for message string in the UcOptileModelNotification::log() method

Minor details:

  • Name of the module should be without "Ubercart - ..." and the word "module". For example just "Optile"
  • Pass the comment through t() function to make it translatable: uc_optile.pages.inc, line 357
  • Occasional mixing of single/double quotes (e.g. uc_optile.module lines 139 and 143)
  • It is enough to reference the hook implementation like so: Implements hook_uc_payment_method(). rather than copying the whole comment block from Ubercart.


  • Is there any specific reason for breaking operations with die()? E.g. uc_optile.pages.inc file, lines 249, 259, 278

Hope this is useful - let me know if you have any questions regarding the feedback.

AjitS’s picture

Issue summary: View changes
Status: Needs review » Needs work

I think you missed out to change the status of the issue to Needs work.

PA robot’s picture

Status: Needs work » Closed (won't fix)

Closing due to lack of activity. Feel free to reopen if you are still working on this application (see also the project application workflow).

I'm a robot and this is an automated message from Project Applications Scraper.