Don lors du passage en caisse

  • Posts: 94
  • Thank you received: 4
  • Hikashop Business
1 month 4 weeks ago #363456

Bonjour,

Existe-t-il une solution simple pour que les clients puissent ajouter à leur commande un don lors du passage en caisse ? Soit proposer un arrondi soit qu'ils puissent faire un don d'un montant au choix.

Merci pour votre réponse,

Cordialement

Please Log in or Create an account to join the conversation.

  • Posts: 4747
  • Thank you received: 644
  • MODERATOR
1 month 4 weeks ago #363464

Bonjour,

C'est en effet possible de créer un produit de type donation à ajouter au panier, et dans lequel le client peut définir le montant du "produit don".
=> Exemple ici sur notre site de Démo.

Sur ce même site vous pouver aller voir les backend pour voir les configurations relatives, ici & ici.
=> Utilisez ces réferences pour accéder au backend :
Username : demo & Password : demo

En espérant que cela vous aide!
Cordialement

Last edit: 1 month 4 weeks ago by Philip.

Please Log in or Create an account to join the conversation.

  • Posts: 94
  • Thank you received: 4
  • Hikashop Business
1 month 4 weeks ago #363472

Bonjour,

Merci pour votre réponse. Nous avons déjà un produit "Don", mais cela implique une démarche de l'utilisateur qui doit aller chercher la page produit concernée pour ajouter un don à son panier. Même en mettant un encart sur les pages de la boutique avec un lien direct vers le produit "Don" cela nécessite une action un peu longue.

Nous aurions souhaité que l'ajout d'un don puisse se faire plus simplement, notamment lors du passage en caisse, sans devoir revenir sur une page produit :
- Proposer un don calculé pour obtenir un montant de commande rond
- Ou lui proposer un champ directement remplissable sur le passage en caisse, qui vienne s'ajouter au montant de la commande

Je pense qu'en l'état mettre en place cette fonctionnalité serait compliqué et que la seule possibilité est celle du produit à 1€ unitaire ou de montant libre si le plugin est activé.

Merci cependant de m'avoir éclairé sur ce qui est possible et qui ne semble pas l'être.

Cordialement

Last edit: 1 month 4 weeks ago by hts.

Please Log in or Create an account to join the conversation.

  • Posts: 82863
  • Thank you received: 13372
  • MODERATOR
1 month 4 weeks ago #363473

Bonjour,

Ce que vous pouvez faire, c'est combiner un champ personnalisé de la table "commande" ( www.hikashop.com/support/documentation/4...shop-field-form.html ) et le plugin cart fee:
www.hikashop.com/marketplace/product/279-cart-fee.html
Ainsi, le champ personnalisé sera directement sur le passage en caisse, et il sera pris en compte dans le panier.

Please Log in or Create an account to join the conversation.

  • Posts: 94
  • Thank you received: 4
  • Hikashop Business
1 month 2 weeks ago #363749

Bonjour,

Merci pour votre proposition. J'ai acheté le plugin Fees et créé un champ personnalisé.

Le champ apparaît bien lors du passage en caisse, cependant je n'arrive pas à ce qu'il fonctionne de manière optimale, notamment parce qu'il faut saisir un nombre, avec éventuellement 2 décimales : j'ai mis [0-9]{3}.[0-9]{2} dans le champ personnalisé - Vérification avec expression régulière.

Il y a 2 problèmes :
- La valeur de retour est correcte si on saisit un nombre avec un point comme décimale. Si on saisit un nombre avec une virgule en décimale, la valeur prise en compte n'est pas bonne. Par exemple si je saisis 6,4 le retour est de 10,00, si je saisis 6,40 le retour est de 46,00, si je saisis 6,41 le retour est de 47,00... J'ai essayé de paramétrer le plugin en utilisant str_replace dans le champ de formule, mais le plugin ne semble pas accepter cette fonction
- L'expression régulière indique qu'on peut saisir un nombre avec 2 décimales, mais si on saisit un nombre entier ou avec une seule décimale un message en rouge indique de remplir le champ. La valeur saisie est cependant bien prise en compte

C'est surtout la saisie avec une virgule des nombres décimaux qui prose problème, ai-je mal paramétré quelque chose ?

Merci et bonne journée.

Cordialement

Please Log in or Create an account to join the conversation.

  • Posts: 82863
  • Thank you received: 13372
  • MODERATOR
1 month 2 weeks ago #363760

Bonjour,

La virgule est utilisé dans les champs personnalisés pour séparer différentes valeurs sélectionnées.
Donc par exemple, si vous avez un champ de type case à cocher avec des choix:
- 6
- 7
- 8
...
- 40
- 41
Que l'utilisateur peut sélectionner, le plugin va automatiquement faire la somme des valeurs sélectionnées. Si l'utilisateur a sélectionné 6 et 40 dans le champ, cela va être sauvegardé en tant que "6,40" dans la base de données.
Et le plugin, pour gérer cela correctement, va donc additionner 6 et 40 pour donner un total de 46.

Nous n'avions pas, jusque là pensé à la gestion des nombres avec des décimales où l'utilisateur utilise une virgule à la place du point.
J'ai fait des modifications pour gérer cela et j'ai publié une mise à jour du plugin:
www.hikashop.com/marketplace/product/279-cart-fee.html
Avec cette nouvelle version, le plugin ne fera plus l'opération sur votre champ à cause de la virgule.
J'ai aussi rajouté l'opération "decimal" qui devrait vous permettre de convertir la valeur du champ en float (nombre flottant) peu importe si l'utilisateur renseigne une virgule ou un point.

The following user(s) said Thank You: hts

Please Log in or Create an account to join the conversation.

  • Posts: 94
  • Thank you received: 4
  • Hikashop Business
1 month 2 weeks ago #363767

Bonjour,

Merci Nicolas pour la modification. Cela fonctionne mieux, mais il reste encore 2 petits soucis :

1 - Si on saisit un nombre décimal avec une virgule, seule la partie entière du nombre est retournée, et le total de la commande ne prend pas du tout en compte le montant du don. Voir le screenshot :



La saisie d'un nombre décimal avec un point fonctionne par contre bien et est prise en compte dans le calcul du total de la commande.

Je ne saisis pas ce qu'il faut faire pour prendre en compte ce que vous appelez 'lopération decimal, pouvez-vous me dire comment procéder précisément ?

2 - Si l'utilisateur dispose de points, le don n'est pas pris en compte dans le calcul du nombre de points utilisés

Merci en tous cas, la solution est très proche

Cordialement

Attachments:
Last edit: 1 month 2 weeks ago by hts.

Please Log in or Create an account to join the conversation.

  • Posts: 82863
  • Thank you received: 13372
  • MODERATOR
1 month 2 weeks ago #363769

Bonjour,

1. C'est justement l'un des deux points géré par la mise à jour. Il faut utiliser la fonction decimal dans votre formule.
Supposez que pour votre formule, vous avez actuellement:

{order.xxx}
où xxx est le nom de colonne de votre champ personnalisé.
Vous pouvez changer la formule en:
decimal({order.xxx})
ou
decimal('{order.xxx}')
(je ne me souviens plus s'il faut les parenthèses ou non).

2. En effet le système de points d'HikaShop ce base sur le montant avant ajout des frais additionnels, vu que le système de points utilise le système de frais additionnels pour ajouter le paiement avec points au panier.
Ajoutez le code:
			$additionals = null;
			if(!empty($order->additional)) {
				$additionals &= $order->additional;
			} elseif(!empty($order->cart->additional)) {
				$additionals &= $order->cart->additional;
			} elseif(!empty($cart->additional)) {
				$additionals &= $cart->additional;
			}
			if(!empty($additionals)) {
				foreach($additionals as $key => $additional) {
					if($key == 'userpoints')
						continue;
					$calculatedPrice += (float)$additional->price_value;
				}
			}
avant la ligne:
if(!empty($this->plugin_params->notgivewhenuse) && (int)$this->plugin_params->notgivewhenuse == 2 && !empty($order->additional['userpoints']))
dans plugins/hikashop/userpoints/userpoints.php et cela devrait permettre au système de points de prendre en compte les frais additionnels tout en ignorant le paiement par points ajouté en frais additionnels.

Please Log in or Create an account to join the conversation.

  • Posts: 94
  • Thank you received: 4
  • Hikashop Business
1 month 1 week ago #363817

Merci Nicolas,

Ça semble bien fonctionner, je vais voir comment l'implémenter.

Encore merci,
Cordialement

The following user(s) said Thank You: nicolas

Please Log in or Create an account to join the conversation.

Time to create page: 0.086 seconds
Powered by Kunena Forum