Strona główna forum Wsparcie Konfiguracja Checkout - Powiązanie wysyłaki z płatnością

Checkout - Powiązanie wysyłaki z płatnością

Wszystko o konfiguracji, możliwościach i ustawieniach...


Posty: 13
Gadu-Gadu: 0

Witam.

Chciałbym zrobić coś takiego aby wyświetlane sposoby płatności zależały wybranych sposobów wysyłki.
Czyli np.
- wybieram przedpłatę - w sposobach płatności pojawiają się płatności.pl
- wybieram przesyłkę za pobraniem - w płatnościach pojawia mi się tylko płatność przy odbiorze

Chciałbym żeby działało to tak jak na szlifowanie.eu.

Czy coś takiego (standardowo) jest dostępne magento lub przy pomocy dostępnych (darmowych) modułów?

Pozdrawiam

Checkout - Powiązanie wysyłaki z płatnością

PostTeraz jest 23 lis 2024, o 17:38
Google

Posty: 427
Lokalizacja: Internet


Posty: 41
Lokalizacja: Gdynia
Gadu-Gadu: 1503284

Witam chowaniec
Tez poszukiwalem takiego modulu i w sumie nie znalazlem, ale znalazlem sposob jak sobie z tym poradzic. Mozna to zrobic w swoim module (nadpisujac istniejacy blok) luub na sztywno zmienic w core module Magento.
Sa 2 sposoby:
1. Nadpisanie klasy modelu określonej metody platnosci.
2. Nadpisanie klasy bloku [katalog Magento]/app/code/core/Mage/Checkout/Block/Onepage/Payment/Methods.php.

Pokaze przyklad do sposobu 1.
Zalozmy ze chcialbys wyswietlic metode platnosci "Za pobraniem" (Cash on delivery) tylko wtedy gdy wybrano metode przesylki za pobraniem.
Modul platnosci CAshOnDelivery mozna pobrac z mgento connect uzywajac klucza:
magento-community/CashOnDelivery

Plik ktory musimy nadpisac znajduje sie w [katalog Magento]/app/code/community/Mage/CashOnDelivery/Model/CashOnDelivery.php
W tym pliku dopisujemy (nadpisujemy) nastepujaca metode:
    public function isAvailable($quote=null)
    {
        $shipping = Mage::getSingleton('checkout/session')->getQuote()->getShippingAddress()->getShippingMethod();
       
        if (eregi("pobranie", $shipping)) {
            return true;
        }
        return false;
    }

,gdzie "pobranie" to nazwa wystepujaca w wybranej metodzie wysylki (moze sie ona odwolywac do wielu roznych metod za pobraniem, np. kurier za pobraniem, poczta za pobraniem itd. - pod warunkiem ze metody te uzywają wymienionej tu nazwy). Z pewnoscia ten sposob zadziala przy wykorzystaniu metod platnosci z Lento (sam testowalem). Mozna je pobrac kluczem:
magento-community/Lento_Wysylka

Moduly z lento (Opek, Masterlink, Poczta ...) sa proste, ale czesto wystarczajace.
Metoda, ktora pokazalem ma jeden minus. Okresla warunek wyswietlania tylko nadpisanego modulu platnosci. Jesli chcesz uzaleznic inne moduly, to rowniez nalezy pododawac w nich przedstawiona wyzej metode. Ewentualnie zastosowac sposob 2 i "pobawic" sie samemu z warunkiem "if (eregi(..." zeby obsluzyl wszystkie mozliwosci.

Mam nadzieje ze to cos pomoze.
Pozdrawiam

jemoon Avatar użytkownika
Administrator

Posty: 529
Lokalizacja: Gdańsk
Gadu-Gadu: 0

witam,
@pejk czy nie wygodniej jest potraktować wysyłkę pobraniową jako sposob płatności, nie metodę wysyłki? Chodzi mi o to, że jako metody wysyłki ustalasz np:
* Poczta Polska (Paczka Ekonomiczna)
* Poczta Polska (Paczka Priorytetowa)
* GLS (Dostawa w 24h)
wszystkie te metody wysyłki można łatwo i szybko ustawić za pomocą np. Multiple Tablerates dostępnego na MagentoConnect.
Formy płatności konfigurujesz wtedy:
* Przelew bankowy (moduł z MagentoConnect - Bank Prepayment)
* Zapłata przy odbiorze (moduł z MagentoConnect - Cash on Delivery, w tym module ustawiasz, że np przy wyborze tej formy płatności do ogólnej wartości zamówienia dodane zostaje 5zł)
* Płatność przez platnosci.pl lub dotpay lub moneybookers lub PayPal itp, itd :)


Posty: 13
Gadu-Gadu: 0

Pomysł jemoona jest dobry ale jest jeden problem:
mianowicie cena paczki pobraniowej różni się w stosunku do paczki zapłaconej przelewem.
dodatkowo ceny te są różne w zależności od wagi.

Udało mi się to ustawić w Multiple Tablerates z podziałem na wagę i mam takie metody wysyłki:

*Paczka Pobraniowa Ekonomiczna
*Paczka Pobraniowa Priorytetowa
*Paczka Płatna przelewem Ekonomiczna
*Paczka Płatna przelewem Priorytetowa
*Kurier

No a metody płatności
* Zapłata przy odbiorze
* Przelew bankowy
* Dotpay

I rzeczywiście brakuje opcji powiązania ze jak ktos wybierze paczkę pobraniową to ma tylko zapłatę przy odbiorze.
Póki co ustawiłem dodatkowy tekst informacyjny pod daną metodą płatności że dotyczy tylko paczek pobraniowych :)

I tak się cieszę że ustawiłem ceny w zalezności od wagi bo na tym mi najbardziej zależało.

pozdrawiam


Posty: 41
Lokalizacja: Gdynia
Gadu-Gadu: 1503284

witam
jemoon (sorki ze dopiero teraz - zakrecony jestem i nie zauwazylem odpowiedzi :)) rzeczywiscie twoj pomysl jest wygodny ale jak pisze aagonia moze byc problem przy roznym rodzaju oplaty pobraniowej i wtedy wygodnie jest uzaleznic platnosc od sposobu wysylki, pod warunkiem ze swtorzysz formy wysylki takie jak wyzej opisane przez aagonia. Sposob ktory opisalem jest "idiotoodporny" - tzn. nie pozwoli wybrac formy platnosci np. przelewem, gdy wybrano wysylke pobraniowa. A wiec formy wysylki i platnosci mozna skonfigurowac na wiele sposobow - w zaleznosci od potrzeb i upodoban :)
Pozdro


Posty: 116
Gadu-Gadu: 0

Pejk, a umiesz uzależnić włączenie "Cash On Delivery" od konkretnej formy przesyłki ustalonej za pomocą "Multiple Tablerates"? Ja u siebie przy pomocy Multiple Tablerates ustawiłem 3 formy przesyłki (odbior osobisty, poczta polska, przesylka kurierska), ale nie jestem w stanie uzależnić pojawiania się płatności przy odbiorze od wyboru "odbior osobisty".

Dodatkowo czy macie jakiś sposób by w "Multiple Tablerates" stosować polskie znaki?
Dobry hosting pod Magento? A może sklep KQS? Tak dla kontrastu...

jemoon Avatar użytkownika
Administrator

Posty: 529
Lokalizacja: Gdańsk
Gadu-Gadu: 0

witam,
polskie znaki można stosować bez żadnych problemów tyle, że należy użyc do tego arkusza z Open Office'a i zapisać dane jako UTF-8. Niestety(lub stety) Excel powyżej wersji 97 źle koduje znaki.


Posty: 41
Lokalizacja: Gdynia
Gadu-Gadu: 1503284

Lesiu
nie próbowałem uzależniać opcji wysylki skonfigurowanej w "Multiple Tablerates" niestety. Ale sadze ze tu bedzie potrzebny inny mechanizm, bo w sposobie który opisałem wyzej wykorzystywana jest nazwa formy wysyłki zapisana w kodzie modułu wysyłki.


Posty: 73
Gadu-Gadu: 0

Lesiu napisał(a):
Pejk, a umiesz uzależnić włączenie "Cash On Delivery" od konkretnej formy przesyłki ustalonej za pomocą "Multiple Tablerates"? Ja u siebie przy pomocy Multiple Tablerates ustawiłem 3 formy przesyłki (odbior osobisty, poczta polska, przesylka kurierska), ale nie jestem w stanie uzależnić pojawiania się płatności przy odbiorze od wyboru "odbior osobisty".

Dodatkowo czy macie jakiś sposób by w "Multiple Tablerates" stosować polskie znaki?



Ja mam ten sam problem.
W sytuacji gdy w "Metodzie Dostawy" ustawię za pobraniem to w następnym polu płatności mam do wyboru różne formy płatności.
Jak zrobić aby w sytuacji gdy wybieramy za pobraniem, punkt "Informacje o płatności" został pomijany?


Posty: 73
Gadu-Gadu: 0

Nikt nie wie?

Na pewno jakoś rozwiązaliście ten problem bo jest on bardzo ważny.

Następna strona

Powrót do Konfiguracja