Article ID: 129126, created on Jul 14, 2016, last review on Jul 14, 2016

Symptoms

3-rd party (custom) C++ plug-ins do not work or work incorrecly in CCP v2

Resolution

To work in CCP v2, the plug-ins need to be adopted (reimplemented, rewritten). Pay attention to the following details:

  1. For redirect plug-ins, check the parameters returned by the Redirect method:

    • If redirection is performed via HTTP POST method, returned ItemResult object should contain:

      • status AR_REDIRECT (12, integer value)
      • error message (or empty string if no error)
      • redirect URL
      • param 1
      • value 1 ...
      • param N
      • value N
    • If redirection is performed via HTTP GET method, returned ItemResult object should contain:

      • status AR_REDIRECT (12, integer value)
      • error message (empty string if no error)
      • redirect URL with query parameters; for example, http://processing-center.com?param1=value1&param2=value2
  2. For plug-ins that use 3D-Secure, check the parameters returned by methods Sell or Auth:

    • If redirection is performed via HTTP POST method, returned ItemResult object should contain:

      • status AR_3DSECURE (11, integer value)
      • error message (or empty string if no error)
      • redirect URL
      • param 1
      • value 1 ...
      • param N
      • value N
    • If redirection is performed via HTTP GET method, returned ItemResult object should contain:

      • status AR_3DSECURE (11, integer value)
      • error message (empty string if no error)
      • redirect URL with query parameters; for example, http://processing-center.com?param1=value1&param2=value2
  3. Check that redirect URLs are formed using the following methods:

    • oEActivity.getCallbackWinURLRedirectPaymentFailed(URL, DocID),
    • oEActivity.getCallbackWinURLRedirectPaymentOk(URL, DocID),
    • oEActivity.getCallbackURL3DSecure(URL, DocID, ActivityID), or
    • oEActivity.getCallbackWinURL(URL, URL2),

    (URL - the URL that is used for redirection to CCPv1; taken from the plug-in configuration).

    Using these methods for obtaining the URL is crucial to correctly process the redirection to the CCPv2 from the processing center site.

  4. Check that there are no problems with URL encoding for parameters passed with HTTP request (specifically, params escaping).

  5. If 3D-Secure is used, the plug-in must have is3DSecureEnabled( ) method implemented.

  6. Custom checkout screens are not adoptable to CCPv2. If custom screens are used for checkout, the plug-in may needs to be reimplemented.

    • Custom screens could be used to handle redirect callbacks and 3D-Secure callbacks.
    • Currently redirect callbacks are handled by methods Parse_OK( ) and Parse_Failed( ).
    • 3D-Secure callbacks are handled by Sell( ) or Auth( ) methods (depending on which method returened the status 3DSECURE).
  7. Server-to-server payment notifications need no adoption.

Note: If you performed all the actions from the list above and the plug-in doesn't work with CCP v2, create a ticket for Odin support.

Search Words

custom

ccp v2

plug-in

apodt 3-rd party custom plugin ccp v2

adopt

3rd party

Email subscription for changes to this article
Save as PDF