Payline a changé sa politique, apparemment : les fichiers wsdl ne sont plus accessibles sur leur site.
D'où l'erreur :

ERROR : SOAP-ERROR: Parsing WSDL: Couldn't load from 'http://www.payline.com/wsdl/v4_0/homologation/WebPaymentAPI.wsdl' : failed to load external entity "http://www.payline.com/wsdl/v4_0/homologation/WebPaymentAPI.wsdl"

Ces cons là ont à peine prévenu...

Comments

mogtofu33’s picture

Bonjour,

Il semble que maintenant ça fonctionne, c'était peut être juste un problème technique chez eux ou une panne serveur.
Cordialement.

mogtofu33’s picture

Status: Active » Fixed
eme’s picture

Status: Fixed » Active

Je pense qu'ils ont dû remettre les fichiers chez eux suite à des plaintes (notamment la mienne...), mais il n'est pas exclu que cela revienne à l'avenir.

A mon avis, il faudrait :
- mettre les wsdl en local
- récupérer la dernière version de payline.php
- revoir la manière avec laquelle la variable proxy est enregistrée, car elle est apparemment enregistrée en chaîne de caractère vide au lieu de NULL, ce qui est désormais incompatible avec la dernière version de leur payline.php.

Je posterai plus d'infos un peu plus tard, puisque apparemment ce n'est plus urgent.

mogtofu33’s picture

Assigned: Unassigned » mogtofu33
Status: Active » Postponed (maintainer needs more info)
Anonymous’s picture

Bonjour,
J'ai reçu la même erreur... Pensez-vous qu'il puisse s'agir d'une erreur de configuration ou ça vient de Payline ?

Merci pour votre réponse,

shadid’s picture

Same error here, even with wsdl/v4_0/homologation files in local server. I'm using OVH virtual hosting.

Anonymous’s picture

Can you access the files in http ?

shadid’s picture

Yes I can access the files in http. But the module is still giving :
ERROR : SOAP-ERROR: Parsing WSDL: Couldn't load from 'http://xxx.com/sites/all/modules/ubercart/payment/uc_payline/wsdl/homolo...' : failed to load external entity "http://xxx.com/sites/all/modules/ubercart/payment/uc_payline/wsdl/homolo..."

When I use absolute path i get another error:
ERROR : Could not connect to host

Anonymous’s picture

I had to make some changes in the uc_payline.pages.inc file and to write the contract number directly in this file unless it was not transmitted to Payline.
I replaced the first lines with the code of the original payline identification file.

If you don't use a proxy on your server and if the Soap and Curl extensions are enabled, that should work. Don't forget to activate a SSL environment on the checkout pages. (you can do it with the secure pages module).

require_once(drupal_get_path('module', 'uc_payline') .'/lib/payline.php');

DEFINE( 'MERCHANT_ID', variable_get('uc_payline_id', '') ); // Merchant ID
DEFINE( 'ACCESS_KEY', variable_get('uc_payline_key', '') ); // Certificate key
DEFINE( 'PROXY_HOST', null); // Proxy URL (optional, here are the changes)
DEFINE( 'PROXY_PORT', null); // Proxy port number without 'quotes' (optional, , here are the changes)
DEFINE( 'PROXY_LOGIN', '' ); // Proxy login (optional)
DEFINE( 'PROXY_PASSWORD', '' ); // Proxy password (optional)
DEFINE( 'PRODUCTION', variable_get('uc_payline_mode', FALSE) ); // Demonstration (FALSE) or production (TRUE) mode
DEFINE( 'CUSTOM_PAYMENT_TEMPLATE_URL', '');
DEFINE( 'CUSTOM_PAYMENT_PAGE_CODE', variable_get('uc_payline_page_code', '') );
DEFINE( 'CONTRACT_NUMBER_LIST', variable_get('uc_payline_contrat_liste', '') );
DEFINE( 'CONTRACT_NUMBER', 'your contract number' ); 

And, use the absolute path for the wsdl files.

halodyssee’s picture

Hello,
One other point: do not use the new payline API 1.1.19 with uc_payline. It won't work because of ERROR: Could not connect to host. I guess uc_payline/lib/payline.php needs some modifications.
If maintainer decides to upgrade to follow payline version, I'm ready to test.

Best regards