diff --git a/Block/Adminhtml/Config/Field/LegacyAuthInfo.php b/Block/Adminhtml/Config/Field/LegacyAuthInfo.php index c71b6a73..7d3e8c71 100644 --- a/Block/Adminhtml/Config/Field/LegacyAuthInfo.php +++ b/Block/Adminhtml/Config/Field/LegacyAuthInfo.php @@ -59,7 +59,15 @@ protected function _getElementHtml(AbstractElement $element): string if ($isLegacyConnected) { $message = __('Connected with %1', $this->helper->getConfigValue('email')); } elseif ($isOauthConnected) { - $message = __('Connected with OAuth2 Authentication'); + $companyName = $this->helper->getConfigValue( + Config::OAUTH_COMPANY_NAME, + ScopeInterface::SCOPE_WEBSITE, + (int)$this->_request->getParam('website'), + Config::OAUTH_CONFIG_PATH + ); + + $message = $companyName ? __('Connected with OAuth2 Authentication (%1)', $companyName) + : __('Connected with OAuth2 Authentication'); } elseif ($isDefaultLegacyConnected) { $message = __( 'Connected with %1 in default scope', diff --git a/Block/Adminhtml/Config/Field/Oauth2Logout.php b/Block/Adminhtml/Config/Field/Oauth2Logout.php index 2b5945b1..61059231 100644 --- a/Block/Adminhtml/Config/Field/Oauth2Logout.php +++ b/Block/Adminhtml/Config/Field/Oauth2Logout.php @@ -73,11 +73,15 @@ protected function _getElementHtml(AbstractElement $element): string 'onclick' => "setLocation('$url')" ]; - $statusLabel = __( - 'You are currently authenticated with email %1 (%2)', - $this->getEmailValue(), - $websiteId && $this->isEmailSetForCurrentScope() ? __('Website') : __('Default') - ); + $statusLabel = __('You are currently authenticated with email %1', $this->getEmailValue()); + $companyName = $this->getCompanyNameValue(); + + if ($companyName) { + $statusLabel .= ' (' . $this->escapeHtml($companyName) . ')'; + } + + $statusLabel .= '
' + . ($websiteId && $this->isEmailSetForCurrentScope() ? __('Scope: website') : __('Scope: default')); $info = <<$statusLabel @@ -148,6 +152,22 @@ private function getEmailValue(): ?string ); } + /** + * Get the company name the account is attached to + * + * @return string|null + */ + private function getCompanyNameValue(): ?string + { + $websiteId = $this->getCurrentWebsite(); + + return $this->scopeConfig->getValue( + Config::OAUTH_CONFIG_PATH . Config::OAUTH_COMPANY_NAME, + $websiteId ? StoreScopeInterface::SCOPE_WEBSITES : ScopeConfigInterface::SCOPE_TYPE_DEFAULT, + $websiteId ?: 0 + ); + } + /** * Get access token data * diff --git a/Controller/Adminhtml/Config/Oauth2FetchClientData.php b/Controller/Adminhtml/Config/Oauth2FetchClientData.php index f8f09c7a..dae3ae64 100755 --- a/Controller/Adminhtml/Config/Oauth2FetchClientData.php +++ b/Controller/Adminhtml/Config/Oauth2FetchClientData.php @@ -31,6 +31,7 @@ use Payplug\Payments\Helper\Config as ConfigHelper; use Payplug\Payments\Logger\Logger; use Payplug\Payments\Service\GetOauth2AccessTokenData; +use Payplug\Payments\Service\GetOauth2CompanyName; use Payplug\Payplug; class Oauth2FetchClientData extends Action implements HttpGetActionInterface @@ -49,6 +50,7 @@ class Oauth2FetchClientData extends Action implements HttpGetActionInterface * @param SerializerInterface $serializer * @param ReinitableConfigInterface $scopeConfig * @param GetOauth2AccessTokenData $getOauth2AccessTokenData + * @param GetOauth2CompanyName $getOauth2CompanyName * @param ConfigHelper $configHelper * @param EventManager $eventManager * @param TypeListInterface $typeList @@ -65,6 +67,7 @@ public function __construct( private readonly SerializerInterface $serializer, private readonly ReinitableConfigInterface $scopeConfig, private readonly GetOauth2AccessTokenData $getOauth2AccessTokenData, + private readonly GetOauth2CompanyName $getOauth2CompanyName, private readonly ConfigHelper $configHelper, private readonly EventManager $eventManager, private readonly TypeListInterface $typeList, @@ -161,13 +164,24 @@ public function execute(): Redirect * Create first JWT for selected env mode */ $websiteId = $this->getWebsiteId(); - $this->getOauth2AccessTokenData->execute($this->getWebsiteId(), true); + $accessTokenData = $this->getOauth2AccessTokenData->execute($websiteId, true); /** * Store merchant email into config */ $this->saveConfig(ConfigHelper::OAUTH_CONFIG_PATH . ConfigHelper::OAUTH_EMAIL, $payloadDecode['email']); + /** + * Store merchant company name into config + */ + $this->saveConfig( + ConfigHelper::OAUTH_CONFIG_PATH . ConfigHelper::OAUTH_COMPANY_NAME, + $this->getOauth2CompanyName->execute( + (string)($accessTokenData['access_token'] ?? ''), + (string)($oauth2Params['company_id'] ?? '') + ) + ); + /** * Cleanup legacy auth config */ diff --git a/Helper/Config.php b/Helper/Config.php index c8182f34..a2592153 100644 --- a/Helper/Config.php +++ b/Helper/Config.php @@ -42,6 +42,7 @@ class Config public const OAUTH_ENVIRONMENT_MODE = 'environmentmode'; public const OAUTH_CLIENT_DATA = 'client_data'; public const OAUTH_EMAIL = 'email'; + public const OAUTH_COMPANY_NAME = 'company_name'; public const APM_FILTERING_MODE_SHIPPING_ADDRESS = 'shipping_address'; public const APM_FILTERING_MODE_BILLING_ADDRESS = 'billing_address'; public const MODULE_VERSION = '4.8.1'; @@ -549,6 +550,7 @@ public function clearConfig(): void 'payplug_payments/general/can_use_integrated_payments', // OAUTH 2 configuration 'payplug_payments/oauth2/email', + 'payplug_payments/oauth2/company_name', 'payplug_payments/oauth2/client_data', 'payplug_payments/oauth2/access_token_data', // Payplug payment Standard configuration diff --git a/Service/GetOauth2CompanyName.php b/Service/GetOauth2CompanyName.php new file mode 100644 index 00000000..2c1b95bf --- /dev/null +++ b/Service/GetOauth2CompanyName.php @@ -0,0 +1,109 @@ +getRealmId($httpClient, $accessToken); + + if ($realmId === '') { + return ''; + } + + $response = $httpClient->get( + APIRoutes::getServiceRoute(self::COMPANY_RESOURCE, ['realm_id' => $realmId]) + ); + $companies = is_array($response['httpResponse'] ?? null) ? $response['httpResponse'] : []; + + foreach ($companies as $company) { + if (!is_array($company) || ($company['company_ref'] ?? null) !== $companyId) { + continue; + } + + foreach (self::COMPANY_NAME_FIELDS as $field) { + $name = is_string($company[$field] ?? null) ? trim($company[$field]) : ''; + + if ($name !== '') { + return $name; + } + } + } + } catch (Throwable $e) { + $this->logger->info(sprintf('Could not retrieve the Oauth2 company name: %s', $e->getMessage())); + } + + return ''; + } + + /** + * Get the realm id from the JWT payload, or from the current session as a fallback + * + * @param HttpClient $httpClient + * @param string $accessToken + * @return string + * @throws ConnectionException + * @throws HttpException + * @throws UnexpectedAPIResponseException + */ + private function getRealmId(HttpClient $httpClient, string $accessToken): string + { + $payload = $this->json->unserialize($this->urlDecoder->decode(explode('.', $accessToken)[1] ?? '')); + $realmId = $payload['realm_id'] ?? $payload['ext']['realm_id'] ?? null; + + if (!is_string($realmId) || $realmId === '') { + $session = $httpClient->get(APIRoutes::getServiceRoute(self::SESSION_RESOURCE)); + $realmId = $session['httpResponse']['realmId'] ?? $session['httpResponse']['realm_ref'] ?? null; + } + + return is_string($realmId) ? $realmId : ''; + } +} diff --git a/etc/adminhtml/system.xml b/etc/adminhtml/system.xml index ceec4d52..44e1ccaa 100644 --- a/etc/adminhtml/system.xml +++ b/etc/adminhtml/system.xml @@ -110,6 +110,7 @@ Need to use old login / password authentication mode ? Please disconnect Oauth2 connection + diff --git a/i18n/en_US.csv b/i18n/en_US.csv index de559e75..7cef3e60 100644 --- a/i18n/en_US.csv +++ b/i18n/en_US.csv @@ -9,10 +9,13 @@ "Abort","Abort" "Aborted payment","Cancelled payment" "Aborted","Aborted" +"Access token data is not valid.","Access token data is not valid." +"Access token is not on the proper scope.","Access token is not on the proper scope." "Account Key","Account Key" "All fields must be defined when trying to connect at website level.","All fields must be defined." "Allow customers to spread out payments over 2, 3 or 4 installments.","Allow your customers to spread out their payments over 2, 3 or 4 installments." "Allowed languages are: %1","Accepted languages are: %1" +"Already activated our new secure authentication? Simply connect your Payplug account above to continue.","Already activated our new secure authentication? Simply connect your Payplug account above to continue." "Amex is unavailable in TEST mode. Please switch your Payplug plugin to LIVE mode to activate it.","Amex is unavailable in TEST mode. Please switch your Payplug plugin to LIVE mode to activate it." "Amount remaining in payplug is inferior to amount to refund","The amount remaining in Payplug is inferior to the amount to refund." "Amount","Amount" @@ -43,16 +46,25 @@ "Capture online","Capture online" "Card #","Card number" "Card mask","The last 4 digits of the card" +"Client data is not valid.","Client data is not valid." "Close","Close" "Complete","Paid" "Configure the following IPN URL in your Dalenys Merchant Console.","Configure the following IPN URL in your Dalenys Merchant Console." "Connect to Payplug for this website","Connect to Payplug for this website" "Connect to Payplug","Connect to Payplug" "Connected with %1","Connected with %1" +"Connected with %1 in default scope","Connected with %1 in default scope" +"Connected with OAuth2 Authentication","Connected with OAuth2 Authentication" +"Connected with OAuth2 Authentication (%1)","Connected with OAuth2 Authentication (%1)" +"Connection state","Connection state" "Contribution:","Contribution:" +"Could not fetch credentials from Payplug Portal","Could not fetch credentials from Payplug Portal" "Could not find valid payplug order payment. Please try refunding offline.","Could not find valid Payplug order payment. Please try refunding offline." +"Could not retrieve Auth Code from Payplug Portal","Could not retrieve Auth Code from Payplug Portal" +"Could not retrieve TEST credentials from Payplug Portal","Could not retrieve TEST credentials from Payplug Portal" "Credit Card Payment Mode","Credit Card Payment Mode" "Credit card","Credit card" +"Current access token expiration date","Current access token expiration date" "Custom Payplug Payments status","Payplug custom payment status" "Date","Date" "Default Country","Default Country" @@ -61,6 +73,7 @@ "Description","Description" "Details","Details" "Disconnect","Disconnect" +"Don't have a Payplug account? Create one.","Don't have a Payplug account? Create one." "Email","Email" "Email","Email" "Enable Hosted Fields Advanced","Enable Hosted Fields Advanced" @@ -102,8 +115,10 @@ "Invoice is created","Invoice is created" "Invoice on payment validation","Invoice after payment" "Italian","Italian" +"LIVE client credentials available","LIVE client credentials available" "Language","Language" "Last payment %1 has already been paid. Please wait for the automatic notification or update the payment manually.","The last payment %1 has already been paid. You should receive an automatic notification shortly. If not, please update the payment manually." +"Logout","Logout" "Mandatory field.","Mandatory field." "Mobile / Email","Mobile number or Email" "Mobile","Mobile number" @@ -111,13 +126,17 @@ "More info","More info" "My Saved Cards","My Saved Cards" "MyBank is unavailable in TEST mode. Please switch your Payplug plugin to LIVE mode to activate it.","MyBank is unavailable in TEST mode. Please switch your Payplug plugin to LIVE mode to activate it." +"N/A","N/A" +"Need to use old login / password authentication mode ? Please disconnect Oauth2 connection","Need to use old login / password authentication mode ? Please disconnect Oauth2 connection" "New payment link for order %1","New payment link for order %1" "New payment link was successfully sent.","New payment link was successfully sent." "New payment reference %1","New payment reference %1" "New","New" "No","No" "Not Paid","Not Paid" +"Not connected","Not connected" "Number of installments","Number of installments" +"Oauth2 authentication successful","Oauth2 authentication successful" "Object with id ""%1"" does not exist.","The object with id ""%1"" does not exist." "Offre de financement sans assurance avec apport obligatoire, réservée aux particuliers et valable pour tout achat de %1 à %2. Sous réserve d'acceptation par Oney Bank. Vous disposez d'un délai de 14 jours pour renoncer à votre crédit. Oney Bank - SA au capital de 51 286 585€ - 34 Avenue de Flandre 59170 Croix - 546 380 197 RCS Lille Métropole - n° Orias 07 023 261 www.orias.fr Correspondance : CS 60 006 - 59895 Lille Cedex - www.oney.fr","Offre de financement sans assurance avec apport obligatoire, réservée aux particuliers et valable pour tout achat de %1 à %2. Sous réserve d'acceptation par Oney Bank. Vous disposez d'un délai de 14 jours pour renoncer à votre crédit. Oney Bank - SA au capital de 51 286 585€ - 34 Avenue de Flandre 59170 Croix - 546 380 197 RCS Lille Métropole - n° Orias 07 023 261 www.orias.fr Correspondance : CS 60 006 - 59895 Lille Cedex - www.oney.fr" "One-click payment","One-click payment" @@ -125,6 +144,10 @@ "Ongoing","Ongoing" "Only Premium accounts can use installment plan in LIVE mode.","Only Premium accounts can use the installment plan in LIVE mode." "Only Premium accounts can use one click in LIVE mode.","Only Premium accounts have access to this feature." +"Scope: default","Scope: default" +"Scope: website","Scope: website" +"TEST client credentials available","TEST client credentials available" +"The JWT is invalid.","The JWT is invalid." "The delay must be between 1 and 6 days.","The delay must be between 1 and 6 days." "Or pay in","Or pay in" "Order Store (Automatic)","Order Store (Automatic)" @@ -253,6 +276,7 @@ "We are not able to retrieve your account information. Please go to section Sales > Payplug Payments to log in again.","We are not able to retrieve your account information. Please go to section Sales > Payplug Payments to log in again." "Yes","Yes" "You are able to perform only TEST transactions.","You must activate your account to accept payments in LIVE mode." +"You are currently authenticated with email %1","You are currently authenticated with email %1" "You are not connected to a payplug account. Please go to section Sales > Payplug Payments to log in.","You are not connected to a Payplug account. Please go to the section Sales > Payplug Payments to log in." "You do not have access to this feature yet. To activate Bancontact, please fill in the following form: %1 (%2)","You do not have access to this feature yet. To activate Bancontact, please fill in the following form: %1" "You do not have access to this feature yet. To activate it, please fill in the following form: https://support.payplug.com/hc/en-gb/requests/new?ticket_form_id=8138934372636","You do not have access to this feature yet. To activate it, please fill in the following form: https://support.payplug.com/hc/en-gb/requests/new?ticket_form_id=8138934372636" @@ -264,6 +288,7 @@ "You don't have access to this feature yet. To activate iDEAL, please fill in the following form: https://support.payplug.com/hc/en-gb/requests/new?ticket_form_id=8248663314844","You don't have access to this feature yet. To activate iDEAL, please fill in the following form: https://support.payplug.com/hc/en-gb/requests/new?ticket_form_id=8248663314844" "You don't have access to this feature yet. To activate the Oney guaranteed split payment, go to your PayPlug portal: %1.","You don't have access to this feature yet. To activate the Oney guaranteed split payment, go to your Payplug portal: %1." "You have aborted the transaction.","You have cancelled the transaction." +"You have been logged out successfully","You have been logged out successfully" "You have no saved cards.","You have no saved cards." "You need to connect to Payplug, with standard or Oauth2 authentication before configure Hosted Fields Advanced","You need to connect to Payplug, with standard or Oauth2 authentication before configure Hosted Fields Advanced" "Your account is not configured for Oney. Please contact us.","Your account is not configured for Oney. Please contact us for more information." diff --git a/i18n/es_ES.csv b/i18n/es_ES.csv index e5344633..2489c493 100644 --- a/i18n/es_ES.csv +++ b/i18n/es_ES.csv @@ -7,9 +7,12 @@ "APM Display and Data Logic","APM Display and Data Logic" "Abort","Abort" "Aborted","Aborted" +"Access token data is not valid.","Los datos del token de acceso no son válidos." +"Access token is not on the proper scope.","El token de acceso no está en el ámbito correcto." "Account Key","Clave de cuenta" "All fields must be defined when trying to connect at website level.","All fields must be defined when trying to connect at website level." "Allow customers to spread out payments over 2, 3 or 4 installments.","Allow customers to spread out payments over 2, 3 or 4 installments." +"Already activated our new secure authentication? Simply connect your Payplug account above to continue.","¿Ya has activado nuestra nueva autenticación segura? Simplemente conecta tu cuenta Payplug arriba para continuar." "Amex is unavailable in TEST mode. Please switch your Payplug plugin to LIVE mode to activate it.","Amex is unavailable in TEST mode. Please switch your Payplug plugin to LIVE mode to activate it." "Amount remaining in payplug is inferior to amount to refund","Amount remaining in payplug is inferior to amount to refund" "Amount","Cantidad" @@ -37,16 +40,25 @@ "Capture online","Capturar en línea" "Card #","Tarjeta" "Card mask","Los últimas cuatro cifras de la tarjeta" +"Client data is not valid.","Los datos del cliente no son válidos." "Close","Close" "Complete","Complete" "Configure the following IPN URL in your Dalenys Merchant Console.","Configure la siguiente URL de IPN en su Consola de Comerciante Dalenys." "Connect to Payplug for this website","Conectar con Payplug para este sitio web" "Connect to Payplug","Conectar con Payplug" "Connected with %1","Conectado con %1" +"Connected with %1 in default scope","Conectado con %1 en el ámbito predeterminado" +"Connected with OAuth2 Authentication","Conectado con la autenticación OAuth2" +"Connected with OAuth2 Authentication (%1)","Conectado con la autenticación OAuth2 (%1)" +"Connection state","Estado de la conexión" "Contribution:","Contribution:" +"Could not fetch credentials from Payplug Portal","No se han podido obtener las credenciales del portal Payplug" "Could not find valid payplug order payment. Please try refunding offline.","Could not find valid payplug order payment. Please try refunding offline." +"Could not retrieve Auth Code from Payplug Portal","No se ha podido obtener el código de autorización del portal Payplug" +"Could not retrieve TEST credentials from Payplug Portal","No se han podido obtener las credenciales TEST del portal Payplug" "Credit Card Payment Mode","Modo de pago con tarjeta de crédito" "Credit card","Tarjeta de crédito" +"Current access token expiration date","Fecha de caducidad del token de acceso actual" "Custom Payplug Payments status",Custom Payplug Payments status "Date","Date" "Default Country","País predeterminado" @@ -54,6 +66,7 @@ "Delete","Borrar" "Details","Details" "Disconnect","Disconnect" +"Don't have a Payplug account? Create one.","¿No tienes una cuenta Payplug? Crea una." "Email","Correo electrónico" "Enable Hosted Fields Advanced","Habilitar Hosted Fields Advanced" "Enable this option for amounts between","Enable this option for amounts between" @@ -85,15 +98,21 @@ "Invalid expiration date.","Invalid expiration date." "Invoice is created","La factura ha sido creada" "Invoice on payment validation","Invoice on payment validation" +"LIVE client credentials available","Credenciales de cliente LIVE disponibles" +"Logout","Cerrar sesión" "Mandatory field.","Mandatory field." "Mode","Modo" "More info","More info" "My Saved Cards","Tarjetas guardadas" "MyBank is unavailable in TEST mode. Please switch your Payplug plugin to LIVE mode to activate it.","MyBank is unavailable in TEST mode. Please switch your Payplug plugin to LIVE mode to activate it." +"N/A","N/D" +"Need to use old login / password authentication mode ? Please disconnect Oauth2 connection","¿Necesitas usar el antiguo modo de autenticación con usuario / contraseña? Desconecta la conexión Oauth2" "New","New" "No","NO" "Not Paid","NO PAGADO" +"Not connected","No conectado" "Number of installments","Number of installments" +"Oauth2 authentication successful","Autenticación Oauth2 realizada correctamente" "Object with id ""%1"" does not exist.","Object with id ""%1"" does not exist." "One-click payment","One-click payment" "Oney option","Oney option" @@ -101,6 +120,10 @@ "Ongoing","Ongoing" "Only Premium accounts can use installment plan in LIVE mode.","Only Premium accounts can use installment plan in LIVE mode." "Only Premium accounts can use one click in LIVE mode.","Esta opción está sólo disponible para cuentas Premium." +"Scope: default","Ámbito: predeterminado" +"Scope: website","Ámbito: sitio web" +"TEST client credentials available","Credenciales de cliente TEST disponibles" +"The JWT is invalid.","El JWT no es válido." "The delay must be between 1 and 6 days.","El retraso debe estar comprendido entre 1 y 6 días." "Or pay in","Or pay in" "Order Store (Automatic)","Tienda del pedido (Automático)" @@ -214,6 +237,7 @@ "We are not able to retrieve your account information. Please go to section Sales > Payplug Payments to log in again.","We are not able to retrieve your account information. Please go to section Sales > Payplug Payments to log in again." "Yes","SI" "You are able to perform only TEST transactions.","Por favor activa tu cuenta para llevar a cabo transacciones LIVE." +"You are currently authenticated with email %1","Actualmente estás autenticado con el correo electrónico %1" "You are not connected to a payplug account. Please go to section Sales > Payplug Payments to log in.","You are not connected to a Payplug account. Please go to section Sales > Payplug Payments to log in." "You do not have access to this feature yet. To activate Bancontact, please fill in the following form: %1 (%2)","You do not have access to this feature yet. To activate Bancontact, please fill in the following form: %1" "You do not have access to this feature yet. To activate it, please fill in the following form: https://support.payplug.com/hc/en-gb/requests/new?ticket_form_id=8138934372636","You do not have access to this feature yet. To activate it, please fill in the following form: https://support.payplug.com/hc/en-gb/requests/new?ticket_form_id=8138934372636" @@ -224,6 +248,7 @@ "You don't have access to this feature yet. To activate Satispay, please fill in the following form: https://support.payplug.com/hc/en-gb/requests/new?ticket_form_id=8248599064860","You don't have access to this feature yet. To activate Satispay, please fill in the following form: https://support.payplug.com/hc/en-gb/requests/new?ticket_form_id=8248599064860" "You don't have access to this feature yet. To activate iDEAL, please fill in the following form: https://support.payplug.com/hc/en-gb/requests/new?ticket_form_id=8248663314844","You don't have access to this feature yet. To activate iDEAL, please fill in the following form: https://support.payplug.com/hc/en-gb/requests/new?ticket_form_id=8248663314844" "You have aborted the transaction.","You have aborted the transaction." +"You have been logged out successfully","Te has desconectado correctamente" "You have no saved cards.","No tiene ninguna tarjeta guardada." "You need to connect to Payplug, with standard or Oauth2 authentication before configure Hosted Fields Advanced","Debe conectarse a Payplug con autenticación estándar u OAuth2 antes de configurar Hosted Fields Advanced" "Your account is not configured for Oney. Please contact us.","Your account is not configured for Oney. Please contact us." diff --git a/i18n/fr_FR.csv b/i18n/fr_FR.csv index 1a669367..666764e8 100644 --- a/i18n/fr_FR.csv +++ b/i18n/fr_FR.csv @@ -9,6 +9,8 @@ "Abort","Interrompre" "Aborted payment","Paiement annulé" "Aborted","Interrompu" +"Access token data is not valid.","Les données du jeton d'accès ne sont pas valides." +"Access token is not on the proper scope.","Le jeton d'accès n'est pas sur le bon périmètre." "Account Key","Clé de compte" "All fields must be defined when trying to connect at website level.","Tous les champs doivent être définis." "Allow customers to spread out payments over 2, 3 or 4 installments.","Permettez à vos clients d'échelonner le paiement de leurs commandes en 2, 3, ou 4 fois." @@ -45,16 +47,25 @@ "Capture online","Capturer en ligne" "Card #","Numéro de la carte" "Card mask","Les 4 derniers chiffres de la carte" +"Client data is not valid.","Les données du client ne sont pas valides." "Close","Fermer" "Complete","Payé" "Configure the following IPN URL in your Dalenys Merchant Console.","Configurez l'URL IPN suivante dans votre Console Marchand Dalenys." "Connect to Payplug for this website","Se connecter à Payplug pour ce site web" "Connect to Payplug","Se connecter à Payplug" "Connected with %1","Connecté avec %1" +"Connected with %1 in default scope","Connecté avec %1 sur le périmètre par défaut" +"Connected with OAuth2 Authentication","Connecté avec l'authentification OAuth2" +"Connected with OAuth2 Authentication (%1)","Connecté avec l'authentification OAuth2 (%1)" +"Connection state","État de la connexion" "Contribution:","Premier apport :" +"Could not fetch credentials from Payplug Portal","Impossible de récupérer les identifiants depuis le portail Payplug" "Could not find valid payplug order payment. Please try refunding offline.","Impossible de trouver un ordre de paiement Payplug valide. Merci d'essayer un remboursement hors-ligne." +"Could not retrieve Auth Code from Payplug Portal","Impossible de récupérer le code d'autorisation depuis le portail Payplug" +"Could not retrieve TEST credentials from Payplug Portal","Impossible de récupérer les identifiants TEST depuis le portail Payplug" "Credit Card Payment Mode","Mode de paiements par carte de crédit" "Credit card","Carte de paiement" +"Current access token expiration date","Date d'expiration du jeton d'accès actuel" "Custom Payplug Payments status","Statut de paiement Payplug personnalisé." "Date","Date" "Default Country","Pays par défaut" @@ -103,8 +114,10 @@ "Invoice is created","La facture est créée" "Invoice on payment validation","Facturation post paiement" "Italian","Italien" +"LIVE client credentials available","Identifiants client LIVE disponibles" "Language","Langue" "Last payment %1 has already been paid. Please wait for the automatic notification or update the payment manually.","Le dernier paiement %1 a déjà été payé. Vous devriez recevoir une notification automatique, sinon vous pouvez mettre à jour le paiement manuellement. " +"Logout","Déconnexion" "Mandatory field.","Champ obligatoire." "Mobile / Email","Numéro de mobile ou Email" "Mobile","Numéro de mobile" @@ -112,13 +125,17 @@ "More info","Plus d'information" "My Saved Cards","Cartes enregistrées" "MyBank is unavailable in TEST mode. Please switch your Payplug plugin to LIVE mode to activate it.","MyBank n’est pas disponible en mode TEST. Pour l’activer, passez votre module PayPlug en mode LIVE." +"N/A","N/D" +"Need to use old login / password authentication mode ? Please disconnect Oauth2 connection","Besoin d'utiliser l'ancien mode d'authentification identifiant / mot de passe ? Veuillez déconnecter la connexion Oauth2" "New payment link for order %1","Nouveau lien de paiement pour la commande %1" "New payment link was successfully sent.","Nouveau lien de paiement envoyé avec succès" "New payment reference %1","Nouvelle référence de paiement %1" "New","Nouveau" "No","Non" "Not Paid","NON PAYÉ" +"Not connected","Non connecté" "Number of installments","Nombre d'échéances" +"Oauth2 authentication successful","Authentification Oauth2 réussie" "Object with id ""%1"" does not exist.","L'objet avec un id ""%1"" n'existe pas." "Offre de financement sans assurance avec apport obligatoire, réservée aux particuliers et valable pour tout achat de %1 à %2. Sous réserve d'acceptation par Oney Bank. Vous disposez d'un délai de 14 jours pour renoncer à votre crédit. Oney Bank - SA au capital de 51 286 585€ - 34 Avenue de Flandre 59170 Croix - 546 380 197 RCS Lille Métropole - n° Orias 07 023 261 www.orias.fr Correspondance : CS 60 006 - 59895 Lille Cedex - www.oney.fr","Offre de financement sans assurance avec apport obligatoire, réservée aux particuliers et valable pour tout achat de %1 à %2. Sous réserve d'acceptation par Oney Bank. Vous disposez d'un délai de 14 jours pour renoncer à votre crédit. Oney Bank - SA au capital de 51 286 585€ - 34 Avenue de Flandre 59170 Croix - 546 380 197 RCS Lille Métropole - n° Orias 07 023 261 www.orias.fr Correspondance : CS 60 006 - 59895 Lille Cedex - www.oney.fr" "One-click payment","Paiements en un clic" @@ -126,6 +143,10 @@ "Ongoing","En cours" "Only Premium accounts can use installment plan in LIVE mode.","Seuls les comptes Premium peuvent utiliser le paiement en plusieurs fois en mode LIVE" "Only Premium accounts can use one click in LIVE mode.","Cette option est uniquement disponible pour les comptes Premium." +"Scope: default","Portée : par défaut" +"Scope: website","Portée : site web" +"TEST client credentials available","Identifiants client TEST disponibles" +"The JWT is invalid.","Le JWT n'est pas valide." "The delay must be between 1 and 6 days.","Le délai doit être compris entre 1 et 6 jours." "Or pay in","Ou payer en" "Order Store (Automatic)","Boutique de la commande (Automatique)" @@ -256,6 +277,7 @@ "We are not able to retrieve your account information. Please go to section Sales > Payplug Payments to log in again.","Nous ne sommes pas en mesure de récupérer les informations de votre compte. Rendez-vous dans la section Sales > Payplug Payments pour vous connecter de nouveau." "Yes","Oui" "You are able to perform only TEST transactions.","Vous devez activer votre compte pour accepter des paiements en mode LIVE." +"You are currently authenticated with email %1","Connecté en tant que %1" "You are not connected to a payplug account. Please go to section Sales > Payplug Payments to log in.","Vous n'êtes pas connecté à votre compte Payplug. Rendez-vous dans la section Sales > Payplug Payments pour vous connecter." "You do not have access to this feature yet. To activate Bancontact, please fill in the following form: %1 (%2)","Vous n’avez pas encore accès à cette fonctionnalité. Pour pouvoir activer Bancontact, rendez-vous sur le formulaire suivant : %1" "You do not have access to this feature yet. To activate it, please fill in the following form: https://support.payplug.com/hc/en-gb/requests/new?ticket_form_id=8138934372636","Vous n'avez pas encore accès à cette fonctionnalité. Pour l’activer, rendez-vous sur le formulaire suivant : https://support.payplug.com/hc/fr/requests/new?ticket_form_id=8138934372636" @@ -267,6 +289,7 @@ "You don't have access to this feature yet. To activate iDEAL, please fill in the following form: https://support.payplug.com/hc/en-gb/requests/new?ticket_form_id=8248663314844","Vous n'avez pas encore accès à cette fonctionnalité. Pour activer iDEAL, rendez-vous sur ce formulaire : https://support.payplug.com/hc/fr/requests/new?ticket_form_id=8248663314844" "You don't have access to this feature yet. To activate the Oney guaranteed split payment, go to your PayPlug portal: %1.","Vous n’avez pas encore accès à cette fonctionnalité. Pour activer le paiement fractionné garanti Oney, rendez-vous sur votre portail Payplug : %1." "You have aborted the transaction.","Vous avez annulé la transaction." +"You have been logged out successfully","Vous avez été déconnecté avec succès" "You have no saved cards.","Vous n'avez aucune carte sauvegardée." "You need to connect to Payplug, with standard or Oauth2 authentication before configure Hosted Fields Advanced","Vous devez vous connecter à Payplug avec une authentification standard ou OAuth2 avant de configurer Hosted Fields Advanced" "Your account is not configured for Oney. Please contact us.","Votre compte ne permet pas de proposer Oney. Contactez-nous pour en savoir plus." diff --git a/i18n/it_IT.csv b/i18n/it_IT.csv index 25bc6828..fd9a7948 100644 --- a/i18n/it_IT.csv +++ b/i18n/it_IT.csv @@ -9,6 +9,8 @@ "Abort","Interrompere" "Aborted payment","Pagamento annullato" "Aborted","Interrotto" +"Access token data is not valid.","I dati del token di accesso non sono validi." +"Access token is not on the proper scope.","Il token di accesso non si trova nell'ambito corretto." "Account Key","Chiave account" "All fields must be defined when trying to connect at website level.","Tutti i campi devono essere completati" "Allow customers to spread out payments over 2, 3 or 4 installments.","Permetti ai tuoi clienti di dilazionare i pagamenti relativi ai loro ordini in 2, 3 o 4 rate." @@ -45,16 +47,25 @@ "Capture online","Cattura in linea" "Card #","Le ultime quattro cifre della carta" "Card mask","Le ultime quattro cifre della carta" +"Client data is not valid.","I dati del client non sono validi." "Close","Chiudi" "Complete","Pagato" "Configure the following IPN URL in your Dalenys Merchant Console.","Configura il seguente URL IPN nella tua Console Merchant Dalenys." "Connect to Payplug for this website","Connetti a Payplug per questo sito web" "Connect to Payplug","Connetti a Payplug" "Connected with %1","Connesso con %1" +"Connected with %1 in default scope","Connesso con %1 nell'ambito predefinito" +"Connected with OAuth2 Authentication","Connesso con l'autenticazione OAuth2" +"Connected with OAuth2 Authentication (%1)","Connesso con l'autenticazione OAuth2 (%1)" +"Connection state","Stato della connessione" "Contribution:","1^ rata contestuale all’acquisto:" +"Could not fetch credentials from Payplug Portal","Impossibile recuperare le credenziali dal portale Payplug" "Could not find valid payplug order payment. Please try refunding offline.","Impossibile trovare un ordine di pagamento Payplug valido. Si prega di riprovare con un pagamento non in linea." +"Could not retrieve Auth Code from Payplug Portal","Impossibile recuperare il codice di autorizzazione dal portale Payplug" +"Could not retrieve TEST credentials from Payplug Portal","Impossibile recuperare le credenziali TEST dal portale Payplug" "Credit Card Payment Mode","Modalità di pagamento con carta di credito" "Credit card","Carta di credito" +"Current access token expiration date","Data di scadenza del token di accesso attuale" "Custom Payplug Payments status","Status del pagamento Payplug personalizzato" "Date","Data" "Default Country","Paese di default" @@ -102,8 +113,10 @@ "Invoice is created","La fattura è stata creata" "Invoice on payment validation","Fatturazione post pagamento" "Italian","Italiano" +"LIVE client credentials available","Credenziali client LIVE disponibili" "Language","Lingua" "Last payment %1 has already been paid. Please wait for the automatic notification or update the payment manually.","L'ultimo pagamento %1 è stato già pagato. Dovresti ricevere una notifica automatica, altrimenti puoi aggiornare il pagamento manualmente." +"Logout","Esci" "Mandatory field.","Campo obbligatorio." "Mobile / Email","Numero di cellulare o e-mail" "Mobile","Numero di cellulare" @@ -111,13 +124,17 @@ "More info","Scopri di più" "My Saved Cards","Le mie carte salvate" "MyBank is unavailable in TEST mode. Please switch your Payplug plugin to LIVE mode to activate it.","MyBank non è disponibile in modalità TEST. Per attivarlo, è necessario mettere il modulo Payplug in modalità LIVE." +"N/A","N/D" +"Need to use old login / password authentication mode ? Please disconnect Oauth2 connection","Hai bisogno di utilizzare la vecchia modalità di autenticazione con nome utente / password? Disconnetti la connessione Oauth2" "New payment link for order %1","Nuovo link di pagamento per l'ordine %1" "New payment link was successfully sent.","Nuovo link di pagamento inviato correttamente" "New payment reference %1","Nuovo riferimento del pagamento %1" "New","Nuovo" "No","No" "Not Paid","Non pagato" +"Not connected","Non connesso" "Number of installments","Numero di scadenze" +"Oauth2 authentication successful","Autenticazione Oauth2 riuscita" "Object with id ""%1"" does not exist.","L'oggetto con un id ""%1"" non esiste" "Offre de financement sans assurance avec apport obligatoire, réservée aux particuliers et valable pour tout achat de %1 à %2. Sous réserve d'acceptation par Oney Bank. Vous disposez d'un délai de 14 jours pour renoncer à votre crédit. Oney Bank - SA au capital de 51 286 585€ - 34 Avenue de Flandre 59170 Croix - 546 380 197 RCS Lille Métropole - n° Orias 07 023 261 www.orias.fr Correspondance : CS 60 006 - 59895 Lille Cedex - www.oney.fr","3x4x Oney è una dilazione di pagamento che non ricade nell’ambito di applicazione del credito ai consumatori di cui al Titolo VI, Capo II TUB, offerta da Oney Bank SA., capitale € 51.286.585 - 34 Avenue de Flandre 59170 Croix - RCS Lille, Metropole - 546 380 197 - n° Orias 07 023 261, che opera in Italia in regime di libera prestazione di servizi. L’utilizzo di 3x4xOney è riservato alle persone fisiche maggiorenni, per importi finanziabili compresi tra un minimo di %1 e un massimo di %2 con rimborsi rateali fino ad un massimo di 90 giorni ed è soggetto alla preventiva approvazione di Oney Bank SA. Oney Bank SA. prevede l’applicazione di una commissione fissa per l’utilizzo di 3x4xOney. Il cliente ha 14 giorni di tempo dalla data di conclusione di ciascun finanziamento per rinunciarvi e esercitare il diritto di recesso, senza spese e costi. Documenti informativi disponibili su www.oney.it" "One-click payment","Pagamenti one-click" @@ -125,6 +142,10 @@ "Ongoing","In corso" "Only Premium accounts can use installment plan in LIVE mode.","Solamente i conti premium possono utilizzare il pagamento frazionato in modalità live" "Only Premium accounts can use one click in LIVE mode.","Questa opzione é valida solo per i clienti Premium." +"Scope: default","Ambito: predefinito" +"Scope: website","Ambito: sito web" +"TEST client credentials available","Credenziali client TEST disponibili" +"The JWT is invalid.","Il JWT non è valido." "The delay must be between 1 and 6 days.","Il ritardo deve essere compreso tra 1 e 6 giorni." "Or pay in","PAGHI IN" "Order Store (Automatic)","Negozio dell’ordine (Automatico)" @@ -255,6 +276,7 @@ "We are not able to retrieve your account information. Please go to section Sales > Payplug Payments to log in again.","Non siamo in grado di accedere alle informazioni del conto. Si presa di andare alla sezione Sale Payments per accedere." "Yes","Sì" "You are able to perform only TEST transactions.","Attiva il tuo conto per effettuare transazioni LIVE." +"You are currently authenticated with email %1","Attualmente sei autenticato con l'email %1" "You are not connected to a payplug account. Please go to section Sales > Payplug Payments to log in.","Sei connesso al tuo conto Payplug. Appuntamento alla sezione Sales > Pagamenti Payplug per connettervi di nuovo" "You do not have access to this feature yet. To activate Bancontact, please fill in the following form: %1 (%2)","Non puoi ancora accedere a questa funzionalità. Per attivare Bancontact, contatta %2." "You do not have access to this feature yet. To activate it, please fill in the following form: https://support.payplug.com/hc/en-gb/requests/new?ticket_form_id=8138934372636","Non puoi ancora accedere a questa funzionalità. Per attivarla, compila questo modulo: https://support.payplug.com/hc/it/requests/new?ticket_form_id=8138934372636" @@ -266,6 +288,7 @@ "You don't have access to this feature yet. To activate iDEAL, please fill in the following form: https://support.payplug.com/hc/en-gb/requests/new?ticket_form_id=8248663314844","Non puoi ancora accedere a questa funzionalità. Per attivare iDEAL, compila questo modulo: https://support.payplug.com/hc/it/requests/new?ticket_form_id=8248663314844" "You don't have access to this feature yet. To activate the Oney guaranteed split payment, go to your PayPlug portal: %1.","Per il momento non hai ancora accesso a questa funzionalità. Puoi attivare il pagamento frazionato garantito Oney direttamente dal tuo portale Payplug: %1." "You have aborted the transaction.","Hai interrotto la transazione." +"You have been logged out successfully","Sei stato disconnesso con successo" "You have no saved cards.","Non hai nessuna carta registrata." "You need to connect to Payplug, with standard or Oauth2 authentication before configure Hosted Fields Advanced","È necessario connettersi a Payplug utilizzando l’autenticazione standard oppure OAuth2 prima di configurare Hosted Fields Advanced" "Your account is not configured for Oney. Please contact us.","Non puoi proporre Oney con il tuo account. Contattaci per ricevere ulteriori informazioni."