Usar soles y dólares en Payme (Alignet)

Payme es una de las pasarelas de pago con mayor presencia a nivel latinoamericana y además, una de las que tiene la menor comisión. Por si les interesa aquí una comparación de varias pasarelas de pago: https://goo.gl/PFkRkz

Payme actualmente no soporta 2 monedas, para ello se necesita crear otro comercio con otros códigos de acceso para la otra moneda:

Por ejemplo:

El comercio «LIBRERIA CESAR» usa Payme y factura en Soles, ahora quiere hacerlo en Dólares, para ello Alignet crea otra cuenta y genera un nuevo ID COMMERCE, ID ACQUIRER, ID WALLET y te indica que para Soles debes usar los antiguos datos y para dólares estos nuevos.

 

Antes de empezar.

Necesitas un plugin del tipo switch que te permite cambiar las monedas, hay tantas que podes elegir cualquiera de tu preferencia.

Multi Currency for WooCommerce – The best free currency exchange plugin – Run smoothly on WooCommerce 3.x

WOOCS – Currency Switcher for WooCommerce. Multi Currency and Multi Pay for WooCommerce

Currency Switcher for WooCommerce

 

WALLET: Woocommerce Payme

El plugin Woocommerce Payme te provee de hooks para que puedas agregar y/o modificar datos antes de ser enviados a Payme. Primero brindaremos los nuevos datos a Wallet (billetera digital), para ello usaremos el filtro «payme/vars/wallet», recuerda poner este código en tu functions.php

<?php
function letsgo_vars_wallet($array_wallet, $order) {

	if( get_woocommerce_currency() == 'USD' ) {

		$passwallet = '#########################'; // PASSWORD_WALLET
		$idEntCommerce = '###'; // ID_WALLET
		$userCommerce = $array_wallet['codCardHolderCommerce'];
		$billing_email = $order->get_billing_email();

		$array_wallet['idEntCommerce'] = $idEntCommerce;
		$array_wallet['registerVerification'] = openssl_digest($idEntCommerce . $userCommerce . $billing_email . $passwallet, 'sha512');
	}
	
	return $array_wallet;
}
add_filter('payme/vars/wallet','letsgo_vars_wallet',10,2);
?>

Explicación:

Recuerda que la moneda principal es SOLES y ya la tenemos configurada así en el panel de Woocommerce, aquí estamos poniendo todos los datos del nuevo comercio DOLARES que es la moneda secundaria.

Empezamos con la condicional if(get_woocommerce_currency() == ‘USD’) , pues preguntamos si es DOLARES para brindarle los nuevos datos.

Ponemos los nuevos datos del comercio en DOLARES, en este caso los nuevos campos son: clave de wallet ($passwallet)  y el ID Wallet ($idEntCommerce)

Si tenes Wallet deshabilitado, no necesitas hacer este punto.

 

VPOS

Ahora es turno de VPOS, para ello usaremos el filtro «payme/vars/vpos», recuerda ponerlo en tu functions.php

function letsgo_vars_vpost($array_vpos, $order) {

	if( get_woocommerce_currency() == 'USD' ) {

		$passvpos = '#####################'; //PASSWORD_VPOS
		$idCommerce = '####';
		$acquirerId = '##';
		$purCurrency = '840'; // 840 significa dolares
		$commerceAssociated = 'MALL ALIGNET-PSP DOLARES';
		$numorder = $array_vpos['purchaseOperationNumber'];
		$purmount = $array_vpos['purchaseAmount'];

		$array_vpos['acquirerId'] = $acquirerId;
		$array_vpos['idCommerce'] = $idCommerce;
		$array_vpos['purchaseCurrencyCode'] = $purCurrency;
		$array_vpos['commerceAssociated'] = $commerceAssociated;
		$array_vpos['purchaseVerification'] = openssl_digest($acquirerId . $idCommerce . $numorder . $purmount . $purCurrency . $passvpos, 'sha512');
	}
	
	return $array_vpos;
}
add_filter('payme/vars/vpos','letsgo_vars_vpost',10,2);

Explicación :

Recuerda que la moneda principal es SOLES y ya la tenemos configurada así en el panel de Woocommerce, aquí estamos poniendo todos los datos del nuevo comercio DOLARES que es la moneda secundaria.

Empezamos con la condicional if(get_woocommerce_currency() == ‘USD’) , pues preguntamos si es DOLARES para brindarle los nuevos datos.

Ponemos los nuevos datos del comercio en DOLARES, en este caso los nuevos campos son: clave de VPOS ($passvpos), ID del Comercio ($idCommerce),  ID adquiriente ($acquirerId), el código de la moneda ($purCurrency) es 840 para dolares y una cadena que relaciona que tu comercio es dolares ($commerceAssociated).

 

Tan sólo colocando esas 2 funciones ya tendrías listo Payme para 2 monedas (soles y dólares).

 

Descargar Plugin Documentación

 

0 0 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
Back to Top
0
Would love your thoughts, please comment.x
()
x