You are on page 1of 44

IDZ DO

PRZYKADOWY ROZDZIA
SPIS TRECI

KATALOG KSIEK
KATALOG ONLINE
ZAMW DRUKOWANY KATALOG

TWJ KOSZYK

osCommerce. Tworzenie
sklepw internetowych.
Wydanie dla zaawansowanych
Autor: David Mercer
Tumaczenie: Wojciech Moch
ISBN: 83-246-0649-1
Tytu oryginau: Building Online Stores
With Oscommerce: Professional Edition
Format: B5, stron: 456

DODAJ DO KOSZYKA

CENNIK I INFORMACJE
ZAMW INFORMACJE
O NOWOCIACH
ZAMW CENNIK

CZYTELNIA
FRAGMENTY KSIEK ONLINE

Sprzedawaj bez granic!


Zaplanuj, skonfiguruj i przetestuj wasn witryn osCommerce
Opracuj rachunek kosztw i zyskw Twojego e-handlu
Skutecznie zarzdzaj danymi zgromadzonymi w Twoim e-sklepie
Twrz wasne dynamiczne dodatki i funkcje usprawniajce dziaanie sklepu
e-Biznes nie zna granic! Dziki nowoczesnym technologiom nawet maa firma moe
odnosi sukcesy na rynku, docierajc do klientw z najodleglejszych miejsc.
Wygoda, szybko i efektywno internetowego handlu sprawiaj, e coraz wicej
przedsibiorstw inwestuje w ten obszar dziaalnoci. Jednak trzeba pamita,
e e-sprzeda to rwnie wyzwanie. Dzi skuteczne konkurowanie w sieci wymaga
fachowej wiedzy.
Wanie t cenn wiedz znajdziesz w ksice osCommerce. Tworzenie sklepw
internetowych. Wydanie dla zaawansowanych. Czytajc j, poznasz mnstwo
przydatnych porad i sposobw na zwikszenie zyskw Twojego internetowego sklepu.
Autor klarownie opisuje wszystkie etapy prowadzenia handlowej witryny: od
zaplanowania i zaprojektowania sklepu a do jego funkcjonowania, omawia te
rozwizywanie problemw oraz aspekty prawno-podatkowe.
W ksice omwiono:

Wydawnictwo Helion
ul. Kociuszki 1c
44-100 Gliwice
tel. 032 230 98 63
e-mail: helion@helion.pl

Instalowanie i konfigurowanie e-sklepu


Administrowanie produktami
Obsuga zamwie i patnoci
Bezpieczestwo Twojej witryny osCommerce
Odtwarzanie e-sklepu po awarii
Marketing i promocja stosowane w sieci
Zagadnienia prawne i podatkowe
Poznaj reguy marketingu, dziki ktrym
Twoja witryna przyniesie jeszcze wiksze zyski.

Przedmowa

O Autorze

11

O Recenzentach

13

Wprowadzenie

15

Rozdzia 1. Wprowadzenie do sklepw internetowych i pakietu osCommerce 19


Kilka szczegw na temat pakietu osCommerce
E-commerce! Po co ja si w to pcham?
Bra si za to czy nie?
Koszta i zyski
Zasoby i zaangaowanie
Projektowanie witryny e-commerce
Lista wymaga witryny
Analizowanie zaproponowanego rozwizania
Tworzenie witryny typu e-commerce
Rozwijanie witryny
Testowanie i debugowanie
Umieszczanie na serwerze i obsuga
Podsumowanie

Rozdzia 2. Konfigurowanie rodowiska programistycznego


Pobieranie oprogramowania
MySQL
Instalowanie serwera MySQL
Testowanie serwera MySQL
PHP
Instalowanie interpretera PHP
Konfigurowanie PHP

21
23
24
25
26
26
27
32
33
33
36
37
38

39
41
42
43
46
48
48
49

osCommerce. Tworzenie sklepw internetowych

Apache
Instalowanie serwera Apache
Konfigurowanie do pracy z interpreterem PHP
Testowanie serwera Apache i PHP
Dlaczego to nie chce dziaa?
Testowanie wszystkich skadnikw razem
Dlaczego to wszystko nie chce wsppracowa?
Pobieranie i instalowanie pakietu PHP, Apache i MySQL
Testowanie pakietu PHP Triad
Pobieranie i instalowanie pakietu osCommerce w systemie Windows
Instalowanie pakietu osCommerce
Konfigurowanie pakietu osCommerce
Testowanie pakietu osCommerce
Polska wersja sklepu
Pobieranie i instalowanie pakietu osCommerce w systemie Linux
Rozwizywanie problemw
Podsumowanie

52
52
53
54
56
57
58
59
60
62
63
67
71
71
73
74
76

Rozdzia 3. Jak dziaa pakiet osCommerce

79

Pakiet osCommerce i internet


Pakiet osCommerce i PHP
Pakiet osCommerce i HTML
Pakiet osCommerce i MySQL
Architektura pakietu osCommerce
Sklep internetowy
Sieciowa spoeczno pakietu osCommerce
Dzia Contributions
Fora
Baza wiedzy
Dokumentacja
Raporty o bdach i postpach prac
Podsumowanie

80
82
83
87
91
94
98
98
99
100
101
101
102

Rozdzia 4. Podstawowa konfiguracja


Panel administracyjny
My Store (mj sklep)
Maximum Values (wartoci maksymalne) i Minimum Values (wartoci minimalne)
Images (obrazki)
Customer details (dane klienta)
Shipping/packaging (wysyki i pakowanie)
Product listing (listy produktw)
Stock (magazyn)
Logging (dziennik)
Cache (bufor)
Email options (opcje poczty)

105
107
109
112
114
116
117
118
120
122
123
124

Spis treci

Download (pobieranie)
GZip Compression (kompresja GZip)
Sesions (sesje)
Podsumowanie

Rozdzia 5. Praca z danymi


Jak podzieli dane na kategorie?
Kategorie ksiek w ksigarni Contechst Books
Przygotowania do dodania danych produktw
Sklep
Kategorie/Produkty
Cechy produktw
Producenci
Recenzje
Oferty specjalne
Oczekiwane produkty
Klienci
Zamwienia
Przegldanie raportw
Modu Easy Populate
Pobieranie i instalowanie moduu Easy Populate
Praca z dodatkiem Easy Populate
Stosowanie moduu Easy Populate do dodawania danych produktw
Podsumowanie

125
127
128
130

133
134
136
138
141
141
147
153
154
154
155
156
157
159
160
161
163
165
167

Rozdzia 6. Poprawianie wygldu sklepu

169

Forma wynika z funkcji


Projekt wizualny
Projekt funkcjonalny
Jzyk
Definicje jzykw
Plik polish.php
Plik index.php
Stosowanie jzyka HTML do formatowania
Praca z okienkami i kolumnami
Usuwanie okienka
Przenoszenie okienek
Modyfikowanie zawartoci okienka
Dodawanie okienka
Usuwanie kolumny
Obsuga obrazkw
Katalog images
Rozmiary i nazwy obrazkw
Zapisywanie obrazkw produktw
Grafika logo i ikony

170
171
172
173
173
174
177
178
180
181
182
183
186
188
190
191
194
194
199

osCommerce. Tworzenie sklepw internetowych

Obrazki w tle
Obrazki przyciskw
Modyfikowanie arkuszy stylw
Wstawianie obrazkw w to
Zmiana kolorw i czcionek
Inne zmiany wygldu stron
Zmiana wielkoci stron
Dodawanie stron
Wiadomoci pocztowe
Podsumowanie

Rozdzia 7. Podatki, patnoci i wysyki


Pobieranie opat
Przygotowania
Implementacja
Testowanie i zarzdzanie
Miejscowoci i podatki
Strefy podatkowe
Klasy i stawki podatkw
Patnoci PayPal
Przygotowanie pakietu osCommerce do obsugi patnoci PayPal
czenie pakietu osCommerce i serwerw PayPal
Praca z PayPal
Patnoci kartami kredytowymi
Modu Credit Card
Modu PSiGate
Inne rodzaje patnoci
Czeki i przekazy pienine
Opata za pobraniem
Wysyki
Stawki stae
Za sztuk
Tabela stawek
Poczta Polska Paczki
Stawki strefowe
Rozwizanie wysyek dla ksigarni Contechst Books
Podsumowanie

205
206
207
208
209
212
212
215
217
219

221
222
223
223
224
225
226
227
228
230
231
234
239
241
244
247
248
248
249
249
251
251
253
253
254
256

Rozdzia 8. Zabezpieczanie sklepu

259

O co chodzi z tym bezpieczestwem?


Podstawowe elementy
Protok SSL
Hasa
Szyfrowanie

261
264
265
265
266

Spis treci

Zabezpieczanie panelu administracyjnego


Tworzenie katalogw zabezpieczonych hasem
Zabezpieczanie katalogu admin protokoem SSL
Zabezpieczanie patnoci
Interfejs sklepu
Mechanizm sklepu
Bezpieczestwo systemu plikw
Bezpieczestwo bazy danych
Odtwarzanie witryny po katastrofie
Tworzenie kopii bezpieczestwa plikw
Tworzenie kopii bezpieczestwa bazy danych
Aktualizowanie
Podsumowanie

Rozdzia 9. Funkcje zaawansowane

266
267
269
273
273
275
282
286
291
292
293
297
297

299

Oglny opis procesu


Kana RSS o nowych technologiach
O co chodzi z tym kanaem RSS?
Stosowanie kanaw RSS
Planowanie aplikacji
Tworzenie tabeli kanau RSS
Tworzenie agregatora
Tworzenie strony WWW kanau RSS
Funkcje sprzeday krzyowej i dodatkowej
Instalowanie dodatku X-Sell
Stosowanie dodatku X-Sell
Dodawanie funkcji rabatw i bonw
Instalowanie dodatku CCGV
Uywanie dodatku CCGV
Podsumowanie

300
301
302
302
304
307
307
311
318
319
322
324
325
330
340

Rozdzia 10. Narzdzia, kruczki i sztuczki

343

Narzdzia
Meneder banerw
phpMyAdmin
Kruczki i sztuczki
Raporty o niskich stanach magazynowych
Praca z produktami do pobrania
Kopoty z patnociami PayPal?
Dynamiczne nagwki okienek
Tworzenie podobnych przyciskw
Podsumowanie

344
344
350
356
357
358
363
365
366
368

osCommerce. Tworzenie sklepw internetowych

Rozdzia 11. Udostpnianie witryny


Przygotowania do przeniesienia
Sprawdzanie, czy serwer jest gotowy
Przygotowywanie plikw
Przygotowanie bazy danych
Przenoszenie plikw
Obsuga protokou FTP metod przecignij i upu
Narzdzia FTP
Rozszerzenia FrontPage
Konfigurowanie witryny
Konfigurowanie plikw
Konfigurowanie bazy danych
Konfigurowanie witryny
Interesujcy problem
Testowanie
Testowanie sieciowego sklepu
Ponowne implementowanie zabezpiecze
Testowanie panelu administracyjnego
Obsuga i zarzdzanie
Podsumowanie

369
370
371
372
375
376
376
377
379
380
380
382
383
386
387
387
390
391
392
396

Rozdzia 12. Tworzenie wasnej firmy

397

Marketing
Badania
Reklama
Programy partnerskie
Aktywny udzia w yciu spoecznoci
Optymalizacje dla wyszukiwarek
Dropshipping
Podsumowanie

399
399
401
411
412
413
415
416

Dodatek A Rozwizywanie problemw


Rodzaje bdw
Skuteczny proces usuwania bdw
Samodzielne debugowanie kodu
Podsumowanie

Skorowidz

419
419
420
422
431

433

Skoro dotarlimy do tej fazy tworzenia wasnego internetowego sklepu, moemy w kocu chciwie zatrze rce. Jeeli mamy osign zamierzone cele, to musimy zapewni sobie stay (moe
nie bardzo wielki) przypyw gotwki z tworzonego przedsiwzicia. W kocu caa idea e-commerce polega na przygotowaniu w sieci bardzo miego pasau handlowego umoliwiajcego
klientom zakupienie towarw bez ruszania si z wygodnego fotela, a sprzedawcom pozwalajcego na oferowanie towarw ludziom z caego wiata.
Na razie pakiet osCommerce dostpny jest w poczeniu z wieloma niezalenymi moduami,
ktre obsuguj zawioci zwizane z zabezpieczaniem rnych rodzajw patnoci. Od oprogramowania klasy osCommerce mona oczekiwa, e mechanizm obsugi patnoci zosta dokadnie
przemylany i zaprojektowany tak, eby patnoci wykonywane byy tak szybko i atwo, jak tylko
jest to moliwe. Prosz sobie wyobrazi, ile pracy trzeba by powici na uzyskanie informacji
o klientach, sprawdzenie ich, ochron przed osobami trzecimi i zintegrowanie z ca aplikacj. Teraz wszystkim tym zajmuje si pakiet osCommerce.
Co prawda w uruchomienie i skonfigurowanie nowej instalacji pakietu osCommerce woy trzeba naprawd wiele pracy, ale ju sam fakt, e tworzenie penowymiarowego sklepu internetowego jest w zasigu
przecitnego biznesmena, na pewno jest bardzo wanym wkadem w wiatowy rynek, a szczeglnie
w jego cz posiadajc umiarkowane rodki.

Trzeba si jednak mie na bacznoci. Na niczego niespodziewajcego si handlowca za kadym


rogiem czyhaj rne ukryte zagroenia. Jeeli nie do koca wiemy, co chcemy zrobi, to moe
lepiej bdzie korzysta z bezpieczniejszych form patnoci i nie ryzykowa uycia penego konta
handlowego, do ktrego mona niechccy umoliwi dostp niepowoanym osobom. Z drugiej

osCommerce. Tworzenie sklepw internetowych

strony, dotarlimy ju to takiego etapu, w ktrym trudno bdzie zmusza klientw do pacenia
wycznie czekami, przelewami bankowymi itd. Czy mona zatem znale zoty rodek?
W tym rozdziale sprbujemy znale taki wanie zoty rodek w zakresie obsugi patnoci.
Opisz tu najczciej stosowane metody odbierania nalenoci za zakupy, ale przede wszystkim koncentrowa bd si na korzystaniu z usug firmy PayPal. Jest to bardzo prosta i dobrze
znana metoda, w ktrej mona wykorzysta kilka sposobw realizacji patnoci. Wszystkie pozostae moliwoci, takie jak wasnorczna obsuga konta handlowego, s coraz mnie popularne,
poniewa nie oferuj dostatecznie wysokiego poziomu bezpieczestwa.
Oczywicie samo odebranie patnoci nie zaatwia cakowicie sprawy. Trzeba jeszcze przekaza
produkt klientowi i zrobi to w sposb jak najmniej obciajcy nasz (i jego) kiesze. Wymaga
to pewnego zastanowienia, kto i skd bdzie kupowa w naszym sklepie, ale po okreleniu tych
szczegw nie powinnimy mie problemw z odpowiednimi definicjami.
To wszystko oznacza, e w tym rozdziale zajmowa si bdziemy nastpujcymi zagadnieniami:
n pobieraniem opat;
n miejscowociami i podatkami;
n patnociami PayPal;
n patnociami kart kredytow;
n czekami, przekazami pieninymi albo pobraniem przy dostawie;
n innymi formami patnoci;
n wysykami.

Konfigurujc poszczeglne metody patnoci, chcemy uzyska jak najwyszy poziom bezpieczestwa przy wykonywaniu patnoci oraz moliwo cofnicia operacji, gdyby w jej trakcie
zdarzyo si co niedobrego. Skuteczne i pewne zarzdzanie patnociami i stosowanie waciwej obsugi wysyek to z ca pewnoci jeden z najwaniejszych czynnikw wpywajcych
na sukces danego sklepu i powstanie caej rzeszy zadowolonych klientw. Ten rozdzia trzeba
czyta niezwykle uwanie, poniewa za obsuga ciko zarobionych pienidzy klientw moe
bardzo le wpyn na dziaanie kadej firmy.

Z ca pewnoci pobieranie opat jest jednym z najmilszych elementw prowadzenia firmy,


szczeglnie w przypadku maych i rednich przedsibiorstw. Oczywicie proces pobierania
opaty za produkty sprzedawane w sklepie (bez wykorzystania sieci WWW) jest wyjtkowo
prosty. Klient decyduje si na zakup produktu, daje nam odpowiedni ilo pienidzy i moe
zabra produkt do domu. I tyle!

222

Rozdzia 7. Podatki, patnoci i wysyki

Ten proces w sieci WWW wyglda dokadnie tak samo, ale kady etap musi by tu dokadnie
monitorowany i ledzony w celu zapewnienia prawidowoci wszystkich informacji o danej
transakcji. Co wicej, konieczna jest programowa obsuga niemal kadej ewentualnoci, tak
eby nie okazao si, e klienci bd pacili za co, czego nie otrzymaj, sklep bdzie wysya
towary bez otrzymania zapaty albo dzia si bd jakie inne przeraajce rzeczy.
Jak mona si spodziewa, pakiet osCommerce sam zajmuje si obsug wikszoci tych spraw,
ale i dla nas zostaje jeszcze wiele do przemylenia. Co wicej, kady rodzaj patnoci wie si
z zupenie innym zestawem kopotw i zagroe, ktrymi trzeba si odpowiednio zaj, jeeli
chcemy by pewni, e w naszym sklepie nie dzieje si nic zego. Po obsueniu caego wachlarza
spraw, ktrymi trzeba si zaj indywidualnie, dobrze jest zastosowa pewien oglny proces
pozwalajcy na skonfigurowanie waciwie dowolnej formy patnoci.

Przygotowania
Przed przystpieniem do implementowania danej formy patnoci konieczne jest podjcie pewnych przygotowa. Co mam tutaj na myli? Przede wszystkim trzeba si upewni, e doskonale znamy zasad dziaania danej formy patnoci. Oznacza to, e dobrze byoby si uda do
dostawcy danej formy patnoci (moe by to bank, urzd pocztowy albo firma specjalizujca
si w patnociach w sieci) i pozna wszystkie szczegy dotyczce tej formy, wcznie z obwarowaniami prawnymi. Kady zapewne wie, jak dziaaj czeki, ale czy wiemy o nich na tyle duo,
eby uzalenia od nich istnienie swojej firmy?
Na przykad czy kto wie, czym jest powdztwo przeciwegzekucyjne? Zazwyczaj takie sprawy
nas nie dotycz, ale szczegy zwizane z typowymi formami patnoci zaczynaj mie znaczenie w momencie, gdy chcemy je wykorzysta w ramach swojej firmy. Domylam si, e osoby
czytajce t ksik powinny cakiem sporo wiedzie o funkcjonowaniu czekw, ale chodzio
mi tu o zaznaczenie problemu. Rwnie dobrze mgbym opowiada o szczegach dziaania
serwisu PSiGate albo dowolnej innej firmy zajmujcej si obsug sieciowych patnoci.
Dokadne sprawdzenie dziaania danej formy patnoci to tylko poowa sukcesu. Po poznaniu
szczegw danego systemu trzeba si jeszcze zorientowa, ile bdzie nas kosztowao jego zastosowanie i co trzeba bdzie zrobi, eby uzyska pewno prawidowej obsugi tego systemu
w swojej witrynie. Wyposaeni w tak wiedz moemy pewnie wykona kolejny krok.

Implementacja
Trzeba te dokadnie zaplanowa sposb implementowania i integrowania patnoci w ramach
swojej witryny. W wikszoci przypadkw sprawami tymi zajmuje si sam pakiet osCommerce,
poniewa domylna instalacja udostpnia moduy obsugujce nastpujce formy patnoci:
n authorize.net,
n karty kredytowe (Creadit Card),

223

osCommerce. Tworzenie sklepw internetowych

n dostawa za pobraniem (Cash on Delivery),


n iPayment,
n czeki i przekazy pienine (Check/Money Order),
n NOCHEX,
n PayPal,
n 2CheckOut,
n PSiGate,
n SECPay.

Jeeli jednak wybrana przez nas metoda patnoci nie zostaa wymieniona na tej licie, to jej realizacja moe wiza si z nieco wikszym nakadem pracy. Pierwszym krokiem w takiej sytuacji
powinno by przejrzenie na witrynie pakietu osCommerce dziau Contributions, a w szczeglnoci jego czci Payment Modules. W czasie tworzenia tej ksiki w dziale tym znajdowao
si niemal czterysta pakietw obsugujcych rne patnoci.
Na tym etapie naley zatem uzyska lub kupi konta rnych dostawcw usug patnoci (o ile
jest to konieczne) i upewni si, e s one prawidowo powizane z witryn. Proces takiego
wizania konta z witryn bdzie wyglda inaczej w przypadku kadego dostawcy. Nastpnie
trzeba si upewni, e witryna prawidowo reaguje na rne sytuacje, jakie mog si zdarzy
w czasie stosowania danej metody patnoci, cho tym powinien si ju zaj kod samego rozszerzenia zajmujcego si obsug tej metody.
Oprcz tego trzeba si te upewni, e firma bdzie prawidowo reagowa na otrzymywane
patnoci. Na przykad z pewnoci nie chcemy udostpnia natychmiast produktw do pobrania osobom paccym czekiem. Jest to oczywicie szczeglny przypadek oglnej zasady mwicej, e przed wydaniem produktu trzeba mie cakowit pewno, e opata za produkt jest
ju nieodwracalnie na naszym koncie.
W zwizku z ostatni uwag trzeba te pamita o zachowaniu moliwoci zwrotu opaty, jeeli
bd istniay ku temu uzasadnione powody. Na przykad przed przekazaniem patnoci dobrze
byoby poczeka na faktyczne zwrcenie produktu, a to oznacza, e lepszym rozwizaniem bdzie
zastosowanie patnoci czekiem, a nie dowoln z metod sieciowych.
Po przygotowaniu systemu patnoci obsugujcego peny cykl, wcznie ze zwrotami, moemy
przej do nastpnego kroku.

Testowanie i zarzdzanie
W wiecie zwizanym z elektronik testowanie powinno by czci kadego przedsiwzicia.
Oznacza to, e swj sklep naley podda testom w najrniejszych sytuacjach, aby zapewni
prawidowe dziaanie danej metody patnoci w kadej sytuacji, a przy okazji wykry wszystkie ewentualne problemy. Prosz pamita, e nie wystarczy tu testowa wycznie w takich

224

Rozdzia 7. Podatki, patnoci i wysyki

sytuacjach prawidowego uywania witryny. Zdolnoci uytkownikw do wprowadzania zamieszania s naprawd zadziwiajce, dlatego wszystkie metody patnoci powinny by doskonale
zabezpieczone przed takimi ewentualnociami.
Oprcz tego na tym etapie dobrze jest przeprowadzi te nieco bada. Naley poszuka problemw zgaszanych przez inne osoby i sprbowa je odtworzy we wasnej witrynie. Jeeli si
to uda, to znaczy, e mamy problem wymagajcy rozwizania. W ten sposb mona si te
dowiedzie, jak naley zabezpiecza si przed niebezpieczestwami i puapkami, w ktre wpadli ju inni.
Kady powinien wiedzie, e mimo najszczerszych chci zbudowania systemu doskonaego
system patnoci musi by cay czas na bieco konserwowany. Poczwszy od najprostszych
spraw, takich jak opaty za usugi realizacji patnoci, a po naprawd powane, takie jak wyszukiwanie nieprawidowoci oraz sprawdzanie ich powodw i efektw.

W tym miejscu dobrze byoby omwi kategori panelu administracyjnego o nazwie Miejscowoci/Podatki. Ustawienia wpisane do tej kategorii bezporednio wpywaj na zasady dotyczce patnoci i wysyek. Do tej pory kady powinien ju doskonale posugiwa si panelem
administracyjnym, dlatego nie bd si tu bardzo rozpisywa. Przyjrzymy si tylko dostpnym
w tym miejscu opcjom i odniesiemy je do potrzeb naszej firmy.
Na stronie domylnej Kraje podziwia moemy ca list kodw ISO rnych krajw.
Taka lista na pewno si przyda, jeeli zdecydujemy si na tworzenie zasad wysyki bazujcych
na strefach. Po prostu do tabeli definicji wysyek trzeba bdzie w takim wypadku wpisa wiele
kodw krajw. Bardziej szczegowy opis tej funkcji podam w dalszej czci tego rozdziau,
w punktach Stawki strefowe i Rozwizanie wysyek dla ksigarni Contechst Books.
Na nastpnej stronie Strefy przejrze moemy list stref lub regionw Europy i Ameryki
Pnocnej, z ktrej czsto korzystaj uytkownicy pakietu osCommerce. Na licie znajdziemy
na przykad kody kadego ze stanw USA. Informacje te mona wykorzysta do opisania stref, do
ktrych bdziemy skonni wysya produkty i definiowania zasad podatkowych dla danych stref.
W dalszej czci rozdziau, przy okazji omawiania stawek dla stref, omwi te zagadnienia
dokadniej.
Nastpnej opcji warto przyjrze si nieco bliej, poniewa praca ze Strefami podatkowymi moe
nie by cakiem oczywista.

225

osCommerce. Tworzenie sklepw internetowych

Strefy podatkowe
Domylnie zdefiniowana jest tylko strefa o nazwie Florida, ktra opisuje podatki z lokalnej
strefy podatkowej Floryda. Ale co zrobi, jeeli nie mieszkamy na Florydzie i nie musimy przejmowa si tamtejszymi podatkami? W naszym przykadzie przyjmujemy, e mieszkamy w Polsce
i chcemy do systemu wprowadzi odpowiedni stref obsugujc polskie podatki.
Na stronie o nazwie Strefy podatkowe naley klikn przycisk wstaw i w wywietlonym polu
tekstowym poda nazw i opis nowej strefy podatkowej. Na rysunku 7.1 zobaczy mona wynik
takiej modyfikacji konfiguracji sklepu.

Rysunek 7.1.

To jeszcze nie koniec. Na razie nie zwizalimy z podan nazw i opisem adnej konkretnej
strefy podatkowej. Trzeba zatem klikn przycisk detale i wybra podstref lub podstrefy, jakie
maj zosta zaliczone do tej kategorii. Na nastpnej stronie naley klikn przycisk wstaw i wprowadzi nazw kraju i strefy, ktre chcemy poczy z edytowan stref podatkow. Myl, e
nie trzeba tu dodawa, e nazwa strefy powinna by jak najdokadniejsza, tak eby wiadomo
byo, jakie strefy nale do danej strefy podatkowej. W naszym przypadku do intuicyjnym
wyborem jest strefa Polska (prosz spojrze na rysunek 7.2).

Rysunek 7.2.

Oczywicie z kad zdefiniowan stref podatkow mona powiza kilka podstref, dlatego prawidowa konfiguracja tych ustawie wymaga powicenia nieco czasu i prb. Na nasze potrzeby
takie ustawienia s wystarczajce. Moemy teraz sprawdzi, jak sprawuje si zdefiniowana
wanie strefa, czyli przej w panelu administracyjnym do kategorii Moduy, sekcji Wysyka
i zainstalowa pozycj Table Rate (moe by ju zainstalowana), a nastpnie edytowa ten modu.

226

Rozdzia 7. Podatki, patnoci i wysyki

Na wywietlonej stronie mona zauway, e do dyspozycji mamy midzy innymi opcj przedstawion na rysunku 7.3.

Rysunek 7.3.

To nie jedynie miejsce, w ktrym wykorzystywane s zdefiniowane przez nas strefy. Na przykad w moduach patnoci znale mona opcj przedstawion na rysunku 7.4.

Rysunek 7.4.

No dobrze, zdefiniowalimy sobie strefy podatkowe, ale jak dotd nie wiadomo, w jaki sposb
naley poszeregowa produkty pod wzgldem stawek podatkowych. Tym wanie zajmiemy si
w nastpnym punkcie.

Klasy i stawki podatkw


Definiowanie klasy podatku wykonywane jest podobnie do definiowania strefy podatkowej
poprzez wprowadzenie nazwy podatku i jego opisu. Po zapisaniu tych danych wystarczy otworzy sekcj Stawki podatkw, czyli stron pozwalajc na zdefiniowanie procentowych stawek
podatkowych. Na przykad na stronie Klasy podatkw dodamy podatek o nazwie Podatek VAT,
nastpnie na stronie Stawki podatkw klikniemy przycisk nowa stawka podatku i wpiszemy na
niej dane przedstawione na rysunku 7.5.

Rysunek 7.5.

Jeeli w sklepie sprzedawa bdziemy towary podlegajce opodatkowaniu podatkiem VAT, to


mona nakaza pakietowi osCommerce wylicza warto brutto danego produktu. W panelu

227

osCommerce. Tworzenie sklepw internetowych

administracyjnym w kategorii Sklep w danych produktu mona wybra po prostu zdefiniowan


wczeniej stawk podatku (prosz spojrze na rysunek 7.6).

Rysunek 7.6.

Prosz zauway, e zaznaczona warto brutto wyliczona zostaa przez powikszenie ceny netto
(22,99 z) o 22% podatku VAT, czyli system wykona dokadnie to, co zapisalimy w definicji
podatku Podatek VAT. W ten sposb mona dokadnie okreli opodatkowanie wszystkich sprzedawanych produktw, szczeglnie wtedy, gdy musimy korzysta z kilku rnych stawek podatkowych.
W zalenoci od umiejscowienia sklepu oraz typw sprzedawanych produktw trzeba bdzie
dokadnie sprawdzi, jakie mamy podatkowe zobowizania. W tym zakresie bardzo pomocne
mog si okaza informacje od ksigowego. Po wprowadzeniu wszystkich danych na temat
podatkw moemy przej do znacznie bardziej pozytywnych elementw.

Na korzystaniu z usug uznanej i sprawdzonej firmy PayPal na pewno nie mona straci. Skorzystanie z usug tej firmy do prowadzenia transakcji pakietu osCommerce wymaga uycia jednego
z najprostszych w obsudze moduw. Co wicej, uruchomienie wsppracy z serwerami PayPal
nie wymaga praktycznie adnych nakadw pracy. Naprawd cika praca czeka nas przy dopracowywaniu szczegw i zapewnianiu bezproblemowej obsugi patnoci w przyszoci.
Jeeli podstawowa konfiguracja moduu bdzie cakowicie wystarczajca, to naprawd trzeba
ju tylko przygotowa swoje wasne konto PayPal i w pakiecie osCommerce wczy modu
obsugi patnoci PayPal. Po tak krtkich przygotowaniach klienci bd mieli moliwo doko-

228

Rozdzia 7. Podatki, patnoci i wysyki

nania zapaty poprzez PayPal, a po wybraniu tej formy zapaty zostan automatycznie skierowani na witryn firmy w celu dokonania patnoci.
Niestety takie najprostsze rozwizanie powoduje kilka problemw! Przede wszystkim chodzi
o to, e klient po dokonaniu patnoci moe po prostu zamkn przegldark, nie wracajc ju
na strony sklepu. W takiej sytuacji zamwienie nie zostanie zapisane w bazie danych. Od razu
mona zauway tu wielki kopot, poniewa nie bdziemy wtedy w stanie stwierdzi, kto za
co zapaci, bez koniecznoci rcznego przegldania wszystkich zapisw w bazie. Po drugie,
kady klient bdzie musia mie swoje konto PayPal, bez ktrego nie uda si mu zapaci za
wybrane towary. W zwizku z wprowadzeniem przez firm PayPal funkcji konta opcjonalnego
(Account Optional) problem ten mona rozwiza przez samodzielne zaimplementowanie obsugi
patnoci PayPal.
W pakiecie osCommerce milestone 2 w wersji 2.2 dostpny jest specjalny modu pozwalajcy
wykorzysta system PayPal IPN do przeprowadzania skutecznych i bezpiecznych transakcji.
Z moduu tego korzysta bdziemy w naszym przykadowym sklepie, dlatego proponuj pobra
go ze strony http://www.oscommerce.com/community/contributions,2679.
Mwimy tu o module tworzonym przez spoeczno, ktry cay czas podlega rnymi zmianom i aktualizacjom. Oznacza to, e Czytelnik moe uywa nieco innej wersji ni przedstawiona w niniejszej ksice.
W czasie pisania tej ksiki najbardziej aktualna bya wersja z 6 sierpnia przesana przez judeberta.

Niektrzy zapewne zapytaj tutaj: Ale co to jest IPN?.


Sprbujmy zatem przyjrze si procesowi obsugi transakcji PayPal, aby nieco wicej dowiedzie
si o panujcych tu zasadach. Na stronach firmy PayPal zobaczy mona nastpujc definicj
skrtu IPN:
Powiadomienia IPN (Instant Payment Notification) s interfejsem pozwalajcym
na obsug w czasie rzeczywistym potwierdze dokonania patnoci i innych rodzajw
komunikacji pomidzy serwerami. Powiadomienia IPN pozwalaj na natychmiastowe
przesanie informacji i potwierdzenia o otrzymaniu patnoci PayPal, a take udostpniaj
dodatkowe informacje o oczekujcych, odwoanych lub nieudanych transakcjach.
Mwic krtko, natychmiast po dokonaniu patnoci do naszego serwera przesyane jest powiadomienie IPN, ktre pozwala nam wykorzysta przesane informacje w swoim oprogramowaniu. Po otrzymaniu takiego powiadomienia nasz serwer wyle odebrane informacje (wcznie
z zaszyfrowanym kodem) na bezpieczny adres URL wskazany przez firm PayPal. W ten sposb
serwer PayPal oznaczy transakcj jako wysan i odele odpowied Prawidowa (Verified) lub
Nieprawidowa (Invalid), ktr mona wykorzysta do realizacji zamwienia.
Co ciekawe, taka komunikacja nie musi by w aden sposb zabezpieczana, poniewa w adn
stron nie s przesyane istotne informacje na temat klienta. Zabezpieczenia stanowi tu tylko
opcj, ale na pewno nie naley spraw bezpieczestwa traktowa pobaliwie. Jeli chodzi

229

osCommerce. Tworzenie sklepw internetowych

o wasny sklep, trzeba mie wczone funkcje szyfrowania komunikacji z serwerem PayPal albo
udostpnia bezpieczny serwer, z ktrego moe skorzysta serwer firmy PayPal.
Oprcz tego, jeeli powiadomienia IPN maj funkcjonowa prawidowo, to musimy mie jaki
sposb na przekazanie serwerom PayPal prawidowego adresu URL, pod ktry przesya ma
wszystkie wiadomoci. Oznacza to, e serwer naszej witryny musi udostpnia funkcje szyfrowania (lub bezpieczny serwer). Zalecabym te, eby przed uruchomieniem patnoci PayPal
przeczyta ten i nastpny rozdzia dotyczcy zabezpiecze, aby najpierw lepiej pozna wszystkie
problemy zwizane z bezpieczestwem.
Na razie zacznijmy jednak od przygotowania sobie konta PayPal.

Przygotowanie pakietu osCommerce


do obsugi patnoci PayPal
Przygotowanie wasnego konta PayPal jest wyjtkowo proste. Wystarczy wej na stron http://
www.paypal.com, klikn cze Sign up i wybra typ konta, jakie chcemy utworzy najprawdopodobniej bdzie to konto rozbudowane (Premier) lub biznesowe (Business). Nastpnie
trzeba poda cay szereg informacji na temat swojej osoby i firmy, a przed samym zaoeniem
konta potwierdzi jeszcze raz wprowadzone informacje. Po zakoczeniu tej procedury zobaczymy stron podobn do przedstawionej na rysunku 7.7.

Rysunek 7.7.

Na pewnym etapie konieczne bdzie jeszcze przeprowadzenie weryfikacji konta, co pozwoli


na podniesienie limitw kwot, jakie mona pobiera ze swojego nowo utworzonego konta. Cay
interfejs konta jest do prosty w obsudze, ale zanim przejdziemy dalej, zalecabym dokad230

Rozdzia 7. Podatki, patnoci i wysyki

niejsze poznanie wszystkich jego zakamarkw. Zakadam, e w kocu udao si doprowadzi


konto do stanu, w ktrym bdzie mona z niego korzysta do prowadzenia biznesu, dlatego
moemy wrci do panelu administracyjnego i w kategorii Moduu patnoci zainstalowa modu
PayPal, na przykad tak jak na rysunku 7.8.

Rysunek 7.8.

Po zakoczeniu tych prac mona sprawdzi, czy wszystko dziaa prawidowo i kupi w sklepie
dowolny produkt. Powinnimy zosta przeniesieni na waciw stron firmy PayPal, na ktrej
mona dokona patnoci. Jeeli nie mamy wicej kont PayPal, to nie bdziemy mogli zapaci
sobie samemu, a jeeli mamy wicej kont, to mona by zapaci z konta prywatnego na konto
firmowe. Z tego powodu proponuj nie kontynuowa dalej zakupw.
Niestety, to jeszcze nie koniec pracy. Jeeli patnoci maj by obsugiwane cakowicie automatycznie, tak ebymy nie musieli samodzielnie kontrolowa wszystkich zamwie, to trzeba
skorzysta jeszcze z moduu PayPal IPN. W tym celu konieczne jest ostateczne przeniesienie
witryny do internetu; tylko wtedy mona prawidowo pracowa z serwerami PayPal. Dlatego
w tym podrozdziale zakadam, e pracujemy ju z ostateczn postaci witryny umieszczon na
serwerze w internecie, cho sam proces przenoszenia witryny na ten serwer opisany zostanie
dopiero w dalszej czci ksiki. Zalecam zatem, eby jak najwicej pracy wykona tutaj, w czasie
czytania tego rozdziau, a ostateczne poprawki wprowadza ju po przeniesieniu witryny do
internetu.

czenie pakietu osCommerce i serwerw PayPal


Pierwszym krokiem bdzie zainstalowanie wspomnianego moduu, co oznacza konieczno
skopiowania wszystkich plikw do katalogu catalog. Prosz dokadnie przeczyta instrukcje
doczane do moduu, tak eby wszystkie pliki zostay skopiowane we waciwe miejsce. Po skopiowaniu wszystkich plikw mona przej w panelu administracyjnym do kategorii Moduy,
otworzy stron Patno i wybra nowy modu, a nastpnie klikn przycisk install (nie mona
zapomnie o wczeniejszym usuniciu dotychczasowego moduu PayPal). Pojawi si wtedy caa
lista opcji, ktre bdziemy musieli edytowa.

231

osCommerce. Tworzenie sklepw internetowych

Dla uproszczenia poka teraz sposb skonfigurowania i uruchomienia witryny (jako dowd, e to naprawd da si zrobi). W rzeczywistoci przed uyciem serwerw PayPal konieczne bdzie wykonanie
jeszcze dodatkowych testw. Chcc wykona takie testy, trzeba zarejestrowa si w firmie PayPal jako
twrca aplikacji (na stronie http://developer.paypal.com) i skorzysta z udostpnianej przez firm witryny
przeznaczonej do takich wanie testw. Na stronie tej dostpnych jest wiele dodatkowych porad i dokumentacji, dlatego nie bd wicej na ten temat wspomina.

W module PayPal IPN mona wybra, czy chcemy korzysta z waciwej witryny, czy moe
tylko z testowej witryny dla programistw. W opcji Gateway Server wystarczy zaznaczy warto Testing lub Live. Prosz pamita, e w czasie przeprowadzania testw konieczne bdzie
utworzenie kilku rnych kont jedno z nich bdzie przyjmowao patnoci, a pozostae bd
symuloway kupujcych.
Wracajmy jednak do naszej witryny. Do tej pory modu PayPal IPN powinien by zainstalowany, a domylny modu PayPal powinien by wyczony. Parametry moduu naley zatem
dopasowa do wymaga swojej witryny. Mona na przykad rozway zastosowanie poniszej
konfiguracji:
Waciwo

Ustawienie

Enable PayPal IPN Module


(wcz modu PayPal IPN)

Tej opcji nadajemy oczywicie warto True.

E-Mail address
(adres pocztowy)

Adres pocztowy konta PayPal, na ktry przesyane maj by patnoci


sklepu.

Transaction Currency
(waluta transakcji)

W tej opcji pozostawiem warto Selected Currency (wybrana waluta),


ale kady musi samodzielnie podj decyzj o walucie, w jakiej
dokonywane maj by rozliczenia.

Payment Zone
(strefa patnoci)

Nie przeszkadza nam, e patnoci bd nadchodzi z caego wiata,


dlatego w tej opcji pozostawiono warto --brak--.

Set Preparing Order Status


Tej opcji nadano warto Przygotowanie [PayPal IPN], co ma odrni
(ustal stan przygotowywanych zamwie) j od wartoci Przetwarzanie z moduu domylnego.
Set PayPal Completed Order Status
(ustal stan przyjtych patnoci)

Nadaem jej warto Przetwarzanie, ale mona wybra tu dowoln


inn warto z listy dostpnych stanw. Na przykad na podstawie
stanu patnoci mona chcie wykona pewne operacje. W takiej
sytuacji naley poda tutaj potrzebny nam stan patnoci.

Set PayPal Denied/Refunded Order Status Tutaj zastosowany zosta nowo dopisany stan Odrzucony. Stany
(ustal stan odrzuconych patnoci)
patnoci mona definiowa w panelu administracyjnym w kategorii
Lokalizacja/Stan zamwie. Po wpisaniu w tym miejscu nowego
stanu staje si on natychmiast dostpny w moduach patnoci.
Gateway Server
(serwer patnoci)

232

Przez pewien czas dobrze byoby korzysta z serwera testowego


(warto Testing), ale po zakoczeniu testw i uruchomieniu
waciwego sklepu naley przeczy si na waciwy serwer
(warto Live).

Rozdzia 7. Podatki, patnoci i wysyki

Waciwo

Ustawienie

Transaction Type
(typ transakcji)

Tej opcji nadaem warto Aggregate, aby zamwienia byy


przetwarzane jako jedna cao.

Page Style
(styl strony)

Mona te ustali wygld swojej osobistej strony patnoci PayPal.


Wygld stron definiowa mona na stronach swojego konta PayPal,
klikajc cze Custom Payment Page znajdujce si w kategorii Seller
Preferencies, w sekcji Profile.

Debug E-mail Address


(adres pocztowy do debugowania)

Tutaj poda naley adres pocztowy, na ktry przesyane maj by


wszystkie informacje na temat nieprawidowoci w dziaaniu
powiadomie IPN.

Sort order of display


(kolejno sortowania)

Jest to standardowa opcja zarzdzajca kolejnoci prezentowania


moduw na stronie informacji o patnociach.

Co ciekawe, ze wzgldu na sposb obsugi produktw przeznaczonych do pobrania wiele stanw


patnoci opisywanych w powyszej tabeli zostanie zmienionych w podrozdziale Praca z produktami do pobrania z rozdziau 10.
Zalecam, eby przed zakoczeniem pracy ze stanami patnoci przejrze rozdzia 10., nawet wtedy, gdy
nie planujemy sprzedawa produktw przeznaczonych do pobierania. W rozdziale tym nieco dokadniej
opisywane s sposoby manipulowania zamwieniami, co moe przeoy si na przygotowanie znacznie
bardziej rozbudowanej procedury kontrolowania zamwie.

Nie omwiem te tej czci opcji tego moduu, ktre zwizane s z szyfrowaniem danych,
poniewa nimi zajmowa bdziemy si w rozdziale 8. Po zapisaniu przedstawionych ustawie
i zignorowaniu pozostaych opcji moemy przej do nastpnego zadania. Powszechnie uwaa
si, e serwer PayPal naley poinformowa, gdzie ma przesya wszystkie powiadomienia. Ale
czy na pewno jest to konieczne? Omawiany modu zosta przygotowany tak, eby jak najbardziej uj nam pracy i odpowiedzialnoci, dlatego nie musimy nawet informowa firmy PayPal,
gdzie ma przesya powiadomienia IPN.
Osoby, ktre ju wczeniej korzystay z usug firmy PayPal, moe to dziwi, poniewa zaleca si,
eby adres docelowy podawa na stronie administracji kontem w sekcji Profile. Zaprezentuj
tutaj cay proces, poniewa mona w nim zaznaczy kilka wanych elementw, ale prosz
pamita, e uywajc moduu PayPal IPN, nie musimy przeprowadza tego procesu.
W innych okolicznociach trzeba by byo poda wszystkie potrzebne informacje na stronach
PayPal, czyli najpierw klikn cze Profile, a nastpnie przej do sekcji Instant Payment Notification Preferences (ustawienia powiadomie IPN) w czci Selling Preferences (ustawienia sprzeday). Po otwarciu waciwej strony naley zmieni ustawienia tak, jak pokazano na rysunku
7.9 (oczywicie uy trzeba wartoci waciwych dla wasnego serwera).

233

osCommerce. Tworzenie sklepw internetowych

Rysunek 7.9.

Trzeba tutaj wspomnie o dwch wanych rzeczach:


Po pierwsze, musimy tutaj pracowa na witrynie swojego sklepu, poniewa komputer w domu
nie bdzie mia adnych szans na odebranie powiadomie IPN z serwerw PayPal. Tutaj sprawdzaj si wycznie poprawne adresy URL (takie jak na przykad http://www.contechst.com).
Po drugie, jak wida na rysunku 7.9, nakazalimy serwerom PayPal wysya powiadomienia do
pliku ipn.php umieszczonego w katalogu ext/modules/payment/paypal_ipn/. Dokadne umiejscowienie pliku moe si zmienia w zalenoci od uywanej wersji moduu.
Jak ju pisaem, wcale nie trzeba tego robi, poniewa docelowy adres URL przekazywany jest
serwerowi przez sam modu PayPal IPN jako cz dania, dlatego cakowicie wystarczy samo
zainstalowanie moduu. Klient moe teraz wybra w sklepie t metod patnoci, a wtedy zostanie przekierowany na strony PayPal, gdzie bdzie mg zapaci za wybrane towary. Moemy
kontrolowa dziaanie tego mechanizmu, przygldajc si poszczeglnym etapom realizacji
zamwienia w sekcji Zamwienia panelu administracyjnego.

Praca z PayPal
To naprawd wszystko, co trzeba zrobi, eby pakiet osCommerce zacz piknie wsppracowa z serwerami PayPal jak wida, jest to bardzo proste! Przyjrzyjmy si teraz caemu
procesowi, tak eby wszystko byo cakowicie jasne. Najpierw klient musi potwierdzi dane
zamwienia na stronie przedstawionej na rysunku 7.10.

234

Rozdzia 7. Podatki, patnoci i wysyki

Rysunek 7.10.

Prosz zauway, e klient zaznaczy tutaj ch zapacenia za porednictwem firmy PayPal (opcja
PayPal (Credit Card/Debit)), a cakowita warto zamwienia wynosi 27,99 z. Po klikniciu przycisku Potwierd zamwienie klient przenoszony jest na strony PayPal, gdzie moe dokona
patnoci. Jeeli w tym samym czasie spojrzymy na strony panelu administracyjnego, to zauwaymy, e pakiet zarejestrowa ju fakt dokonania przez klienta patnoci za porednictwem firmy
PayPal (prosz spojrze na rysunek 7.11).

Rysunek 7.11.

W kolumnie Status wida teraz nazw stanu, jak podalimy w czasie konfigurowania moduu
PayPal IPN we wczeniejszej czci tego podrozdziau. Oznacza to, e pakiet osCommerce wie
ju, co si dzieje z wykonywan wanie patnoci i czeka tylko, a klient przebrnie przez ca
procedur dokonywania patnoci na stronach PayPal. Po zakoczeniu patnoci klient powinien

235

osCommerce. Tworzenie sklepw internetowych

zobaczy stron przedstawion na rysunku 7.12 lub podobn uzalenion od wybranego przez
nas wygldu (prosz sobie przypomnie jedn z opcji moduu PayPal IPN).

Rysunek 7.12.

Oczywicie jest to tylko przykad, ktry ma pokaza moliwoci zmiany wygldu stron PayPal
prezentowanych naszym klientom. W ten sposb zmniejszy mona rnice w wygldzie stron
naszej witryny i witryny PayPal. Po zakoczeniu patnoci moemy przyjrze si wszystkim
szczegom zamwienia. Mona zauway (na rysunku 7.13), e teraz na stronie pojawia si
dodatkowa sekcja, w ktrej prezentowany jest stan z kolejnych powiadomie IPN.

Rysunek 7.13.

236

Rozdzia 7. Podatki, patnoci i wysyki

Pierwsze dwa wiersze dodawane s pomidzy zakupieniem produktu na stronach sklepu a faktycznym zaakceptowaniem patnoci przez sklep po dokonaniu zapaty przez klienta. Oczywicie
potwierdzeniem tego wszystkiego powinna by wiadomo pocztowa przesana przez firm
PayPal, informujca nas o otrzymaniu patnoci od danego klienta. Jeeli klient kliknie teraz
na stronach PayPal przycisk Continue, to zostanie przeniesiony z powrotem na strony naszego
sklepu, gdzie zobaczy stron z informacj o udanym dokonaniu zakupu, przedstawion na rysunku 7.14.

Rysunek 7.14.

To jednak jeszcze nie koniec. Jako odbiorca patnoci musimy j jeszcze zaakceptowa. Dopiero
po jej zaakceptowaniu do zamwienia zostanie dodana informacja przedstawiona na rysunku 7.15.

Rysunek 7.15.

Prosz zauway, e na samym dole listy mamy teraz najnowszy wpis, ale klient nie zosta jeszcze
poinformowany o takim obrocie sprawy w pakiecie osCommerce (prosz jednak pamita, e
firma PayPal sama zajmie si poinformowaniem klienta o zaakceptowaniu patnoci), natomiast
stan (Status) zamwienia zgodnie z oczekiwaniami zmieni si na Przetwarzanie. Najwaniejsze
jest jednak to, e w sekcji Komentarze znajdziemy informacj, e biece zamwienie zostao
zrealizowane do koca. Oznacza to, e pienidze s ju bezpieczne na naszym koncie.

237

osCommerce. Tworzenie sklepw internetowych

Na potrzeby przykadowej ksigarni zastosowana zostaa taka wanie konfiguracja, poniewa


chcemy mie moliwo wydrukowania najpierw faktury oraz listu przewozowego i dopiero
wtedy rcznie zmieni stan zamwienia na Dostarczono, dziki czemu ostateczna posta strony
zamwienia bdzie wygldaa tak jak na rysunku 7.16. Prosz zwrci uwag na to, e dodatkowo
poinformowalimy klienta o wysaniu towarw. Oprcz tego klient moe te sprawdzi na stronach sklepu pen histori zamwienia.

Rysunek 7.16.

Oczywicie wybranie waciwej konfiguracji dla wasnego sklepu zalee bdzie od naszych
wymaga w stosunku do sklepu i wasnego dowiadczenia. Po zapoznaniu si z tym przykadem kady powinien ju cakiem spokojnie przygotowa sobie obsug patnoci poprzez firm
PayPal. Nie mona przy tym zapomina o koniecznoci wykonywania testw i naley zawsze
odpowiednio monitorowa zakupy towarw oraz stany magazynowe. W panelu administracyjnym mona te korzysta z raportw zakupionych produktw i w ten sposb sprawdza, czy
klient zakupi waciwe produkty.
Niczym nie mona zastpi dwch rzeczy bardzo pomagajcych w prawidowym konfigurowaniu sklepu: praktyki i dowiadczenia. Prosz si dokadnie zastanowi nad kadym aspektem dziaania tego moduu i jak najdokadniej pozna jego mechanizmy. Tylko wtedy moliwe
bdzie dowolne zmienianie jego funkcjonowania nie jest przecie wykluczone, e kto bdzie
chcia uzyska cakowicie inne dziaanie moduu.
Na przykad mona zachca klientw do kliknicia przycisku Continue na stronach PayPal po
opaceniu zakupw i powrotu na strony naszego sklepu. W ten sposb otrzymywaliby automatycznie wiadomo z potwierdzeniem zakupw i nie musieliby si zastanawia, dlaczego nie
dostali adnej wiadomoci zaraz po wylogowaniu. W takim wypadku naley otworzy do edycji
plik includes/modules/payments/paypal_ipn.php i wyszuka w nim ponisze dwa wiersze kodu
(powinny znale si w okolicach 330. wiersza):
$parameters['cancel_return'] = tep_href_link(FILENAME_CHECKOUT_PAYMENT, '', 'SSL');
$parameters['bn'] = $this->identifier;

Poniej tych wierszy naley doda nastpujcy wiersz kodu:


$parameters['cancel_return'] = tep_href_link(FILENAME_CHECKOUT_PAYMENT, '', 'SSL');
$parameters['bn'] = $this->identifier;
$parameters['cbt'] = 'Kliknij tutaj, aby otrzyma potwierdzenie zamwienia';

238

Rozdzia 7. Podatki, patnoci i wysyki

Po zapisaniu tych zmian mona przyjrze si stronie PayPal, na ktrej dokonywana jest patno.
Na pewno powinien pojawi si tam przycisk podobny do przedstawionego na rysunku 7.17.

Rysunek 7.17.

Cakiem adnie. W tym punkcie okazao si te, e w razie potrzeby w panelu administracyjnym w kategorii Lokalizacja moemy tworzy dodatkowe stany zamwienia. W tym przypadku
po uzyskaniu moliwoci akceptowania patnoci stan zamwienia zmieniamy na Przetwarzanie.
W rozdziale 10. zajmiemy si prac z moduem kontroli pobierania, a wtedy okae si, jak
wane jest odpowiednie nazywanie poszczeglnych stanw zamwienia.
I to waciwie wszystko co trzeba zrobi, aby przygotowa w peni funkcjonujcy system patnoci PayPal. Nie wolno nam jednak spocz na laurach. Cao procedury powinna zosta
zabezpieczona szyfrowaniem, a do tego potrzebowa bdziemy jakiego narzdzia pozwalajcego wygenerowa certyfikat i klucz albo uzyska moliwo korzystania z bezpiecznego serwera. Odpowiednie narzdzia powinna dostarczy nam kada firma udostpniajca witryn
w internecie. Na razie taka konfiguracja bdzie wystarczajca, a do tego przykadu wrcimy
w nastpnym rozdziale, przy okazji dokadnego omawiania zabezpiecze witryny.

Ten punkt zaczniemy od podkrelenia, e decydujc si na obsug patnoci kartami kredytowymi, musimy rozway kilka bardzo wanych szczegw. Przede wszystkim chodzi o to, e
utworzenie internetowego konta kupieckiego (ang. merchant accout) moe by naprawd kopotliwe. Po prostu transakcje internetowe uznawane s za zagroone rnymi prbami wyudzenia i oszustwa, a zatem opaty za prowadzenie konta i wykonywanie transakcji s odpowiednio wysokie. W tej ksice nie mog poda wielu porad na temat otwierania i prowadzenia
konta kupieckiego. S to sprawy, ktre zaatwia musz bezporednio klient i jego bank.
Wicej informacji na temat moliwoci uzyskania konta sprzedawcy znale mona na stronach dowolnej firmy prowadzcej takie konta. Na pewno dowiemy si tam, jak naley uywa

239

osCommerce. Tworzenie sklepw internetowych

konkretnego systemu i jak si w nim porusza. Na przykad na poniszych stronach znale


mona wiele ciekawych informacji na pewno uatwiajcych dokonanie wyboru:
n http://www.authorizenet.com/solutions/merchantsolutions/onlinemerchantaccount/
n http://www.secpay.com/
n http://www.psigate.com/merchantaccount.asp
n http://www.przelewy24.pl

Po drugie, trzeba by absolutnie pewnym, e nie dajemy wamywaczom adnej moliwoci


dostpu do informacji o kartach kredytowych swoich klientw, mogcej wynika z nieprawidowego zabezpieczenia witryny. Gdybymy chcieli akceptowa patnoci kartami kredytowymi
w biecej formie naszego sklepu internetowego, to mona by powiedzie, e wykazalimy si
wyjtkow niedbaoci w zakresie ochrony danych swoich klientw. Po prostu na razie nie mamy
jeszcze bezpiecznych mechanizmw przesyania informacji pomidzy klientem, naszym sklepem i instytucjami finansowymi.
W tym rozdziale w ogle nie zajmujemy si sprawami zwizanymi z bezpieczestwem, poniewa temu
zagadnieniu powicony zosta nastpny rozdzia. Definiujemy tu mechanizmy obsugi patnoci kartami
kredytowymi, ale prace w tym zakresie bdzie mona uzna za ukoczone dopiero po odpowiednim
zaimplementowaniu zabezpiecze tych patnoci.

Prosz si jednak nie martwi, nie jest tak beznadziejnie, jak moe si pocztkowo wydawa.
Cay proces konfigurowania mechanizmu obsugi kart kredytowych jest bardzo podobny do
procesu konfigurowania patnoci PayPal (trzeba jednak zawsze pamita o wspomnianych na
pocztku uwagach). Zanim przejdziemy dalej, dobrze byoby zaprezentowa wszystkie skadniki
wiata transakcji wykonywanych kartami kredytowymi, eby kady wiedzia, o czym bdzie
mowa w dalszej czci tego punktu:
n Konto sprzedawcy (ang. merchant account) kady, kto chce samodzielnie

obsugiwa patnoci kartami kredytowymi (bez porednictwa na przykad firmy


PayPal), musi korzysta z tak zwanego konta sprzedawcy. Co wicej, jeeli
chcielibymy udostpnia klientom funkcje pacenia bezporednio w sklepie,
to potrzebne bdzie internetowe konto sprzedawcy. Niektre firmy mog mie
due problemy z uzyskaniem wasnego konta sprzedawcy. Jeeli jednak bdziemy
sprzedawa normalne produkty, to nie powinnimy mie z tym wikszych problemw.
Jeeli pojawiyby si oskarenia o oszustwo, to zawsze przydaje si wszystko to,
co zostawia po sobie namacalny lad.
n Centrum autoryzacyjne (ang. acquirers) s to instytucje prowadzce konta

sprzedawcy; najczciej po prostu banki. Do najwikszych na wiecie instytucji


tego typu nale banki HSCB i Barclays.
n Dostawcy usug patniczych (ang. payment service provider) te firmy koncentruj

si przede wszystkim na umoliwianiu wykonywania transakcji patnoci za kupowane


towary za porednictwem wasnych witryn.

240

Rozdzia 7. Podatki, patnoci i wysyki

Jak si okazuje, w zalenoci od tego, z kim bdziemy wsppracowa, centrum autoryzacyjne


moe udostpnia nam pen obsug transakcji, a wtedy nie ma potrzeby korzystania z usug
dostawcw usug patniczych. Oczywicie wikszo dostpnych moduw patnoci umoliwia obsug patnoci za porednictwem rnych dostawcw usug patniczych, a nie bezporednio w bankach.
Po skonfigurowaniu funkcji obsugi PayPal udostpnilimy klientom moliwo pacenia za porednictwem
kart kredytowych i przeleww bankowych. Bezporednia obsuga kart kredytowych ma na celu umoliwienie dokonywania zakupw tym klientom, ktrzy nie chc wsppracowa z firm PayPal.

Proces instalacji jest dokadnie taki sam jak w przypadku obsugi patnoci PayPal:
1. Skontaktowa si z odpowiednimi instytucjami w celu uzyskania konta kupieckiego
i bramy obsugi patnoci.
2. Zainstalowa waciwy modu.
3. Testowa, testowa i jeszcze raz testowa.
4. Upewni si, e na witrynie wszystko jest doskonale zabezpieczone i dziaa prawidowo.
5. Zgarnia kas!
Nie ma tu waciwie nic nowego, dlatego mona ograniczy si do zaprezentowania dwch praktycznych przykadw. Najpierw zajmiemy si konfiguracj moduu Creadit Card, a nastpnie
zademonstruj dziaanie moduu PSiGate.

Modu Credit Card


Z moduu Credit Card korzysta mona w celu rcznego obsugiwania patnoci w ramach
konta kupieckiego. W tym przypadku wszystkie dane podawane przez klienta zapisywane s po
prostu w bazie danych, po czym moemy samodzielnie zaj si ich obsug. Na pierwszy rzut
oka moe si wydawa, e jest to naprawd prosty i przyjemny sposb obsugi patnoci, ale s to
zwodnicze wraenia. W ten sposb mona wpdzi si w powane kopoty. Wszystko wyjani si
za chwil, gdy poznamy szczegy dziaania tego mechanizmu.
Prosz przej do panelu administracyjnego i przy module Credit Card klikn przycisk install, a nastpnie wczy modu, nadajc pierwszej opcji warto True (prosz spojrze na
rysunek 7.18).
Po zapisaniu tych opcji mona przej na swoj stron i sprbowa dokona zakupu. Po przejciu na stron pacenia za zakupy powinnimy mie teraz moliwo zapacenia kart kredytow. Mona tu wprowadzi dowolnie zmylony numer karty i dat wanoci, na przykad tak
jak zrobiem to na rysunku 7.19.

241

osCommerce. Tworzenie sklepw internetowych

Rysunek 7.18.

Rysunek 7.19.

Teraz mona kontynuowa zakupy a do pojawienia si strony z informacj o zakoczeniu zakupw, nastpnie mona wrci do panelu administracyjnego i przejrze informacje na temat dokonanego zakupu. Powinnimy zobaczy stron podobn do przedstawionej na rysunku 7.20.
Widok takiej strony wprawi w przeraenie kadego eksperta od bezpieczestwa danych, poniewa nie do, e w swojej bazie danych przechowujemy pene dane karty kredytowej klienta,
to jeszcze informacje te prezentujemy w adnym i czytelnym raporcie. Jeeli kto kiedykolwiek uzyskaby dostp do panelu administracyjnego, to bez problemu mgby odczyta tu
wszystkie informacje o kartach kredytowych naszych klientw. Co gorsza, jeeli wamywaczowi udaoby si uzyska dostp do bazy danych, to mgby bardzo szybko pobra wszystkie
te informacje bezporednio z serwera.
Ju sysz, jak pojawiaj si gosy: No pewnie, ale przecie to wszystko bdzie ostatecznie
chronione hasem, a pniej dodamy jeszcze uzupeniajce zabezpieczenia. Rozpatrywany
modu pozwala faktycznie na zabezpieczenie danych, a zatem sprbujmy si przyjrze dostpnym opcjom. Prosz wrci do strony edycji parametrw moduu i poda na niej adres pocztowy, na jaki ma by wysyana poowa numeru karty kredytowej klienta. Po zapisaniu tej
zmiany mona ponownie dokona zakupw, a strona z nowym zamwieniem powinna wyglda tak jak na rysunku 7.21.

242

Rozdzia 7. Podatki, patnoci i wysyki

Rysunek 7.20.

Rysunek 7.21.

No, tak jest ju nieco lepiej, poniewa teraz ewentualny wamywacz bdzie mg uzyska zaledwie poow danych karty kredytowej. Druga poowa nie bdzie przechowywana na serwerze,
ale zostanie wysana poczt elektroniczn na wskazany wczeniej adres. Wiadomo z poow
numeru moe wyglda podobnie do zaprezentowanej na rysunku 7.22.
Teraz nic ju nie stoi na przeszkodzie, eby korzystajc z numeru zamwienia, dopasowa
rodkowe numery do numerw zewntrznych. Numer zamwienia jest taki sam w obu miejscach, co pozwala nam wykorzysta pene dane klienta bez ryzyka zwizanego z przechowywaniem ich wszystkich w jednym miejscu. Jest to ju zdecydowanie lepsze rozwizanie, ale jego
poziom bezpieczestwa nadal pozostawia wiele do yczenia, poniewa wiadomo pocztowa
zostaa wysana bez adnych zabezpiecze.

243

osCommerce. Tworzenie sklepw internetowych

Rysunek 7.22.

Jeli kto wie ju o stosowanej przez nas metodzie obsugi patnoci, moe prbowa przechwyci tak niezaszyfrowan wiadomo i dopasowa numery kart. Z jednej strony mona
uzna, e takie ryzyko jest do zaakceptowania, ale z drugiej strony trzeba pamita, e na szali
kadziemy tu swoje dochody. Jeeli klienci dowiedz si, e kto wama si do naszego sklepu
i wykrad z niego ich prywatne informacje finansowe (a na pewno si o tym dowiedz, gdy ich
konta zaczn by obciane podejrzanymi transakcjami), to nieodwracalnie utracimy reputacj
solidnej i bezpiecznej firmy.
Oczywicie mona zaszyfrowa informacje przed wysaniem ich do siebie (zajmiemy si tym
w nastpnym rozdziale), ale na pewnym etapie bdziemy musieli te informacje rozszyfrowa,
a w zwizku z tym w caym systemie zabezpiecze zaczn pojawia si luki. Lepiej bdzie
wic nie podejmowa ryzyka i obsug takich patnoci przekaza komu innemu. W sieci znajdziemy wiele solidnych firm, ktre znacznie wicej rodkw mog powici na zabezpieczenie
transakcji, wic nic nie stoi na przeszkodzie, eby skorzysta z ich usug. Opaty za takie usugi nie
s niskie, ale na pewno warto wyda troch pienidzy i zaoszczdzi sobie wielu kopotw.
Wiemy ju, jak dziaa modu Credit Card, dlatego moemy przyjrze si funkcjonowaniu moduu obsugujcego patnoci jednego z dostawcw usug patniczych.

Modu PSiGate
W czasie testowania tego moduu prosz pamita, e kady dostawca usug patniczych moe
stosowa nieco inn metodologi obsugi patnoci kartami kredytowymi. Jeeli kto korzysta
na przykad z usug firmy SECPay, to na pewno zauway, e klient nie podaje numerw karty
kredytowej na stronie naszego sklepu, ale przegldarka przekierowywana jest na bezpieczny
serwer firmy SECPay, a na strony sklepu powraca dopiero po zakoczeniu procesu patnoci.
Niezalenie od tego, z jakiego moduu bdziemy korzysta (by moe kto zdecyduje si napisa swj
wasny kod obsugujcy patnoci), prawidowa konfiguracja takiego moduu wymaga dokadnego poznania
mechanizmw dziaania dostawcy usug patniczych i waciwego wykorzystania tej wiedzy w swojej
aplikacji.

244

Rozdzia 7. Podatki, patnoci i wysyki

Firma PSiGate bardzo uatwia nam proces testowania aplikacji, poniewa pozwala na korzystanie z wartoci testowych bez koniecznoci waciwego rejestrowania. Dziki temu cakowicie wystarczy zainstalowanie odpowiedniego moduu w panelu administracyjnym w sekcji
Moduy/Patnoci, tak jak robilimy tu z poprzednimi moduami, przejcie na stron patnoci
w swoim sklepie i prba zapaty za wybrane towary.
Dociekliwy obserwator na pewno zauway drobn rnic w sposobie obsugi patnoci po
zaznaczeniu opcji PSiGate. Przyjrzyjmy si jej dokadniej, poniewa bdzie to rwnie dobr
demonstracj oglnego procesu stosowanego rwnie przez innych dostawcw usug patniczych. Zamy, e na swojej stronie wprowadzilimy odpowiednie dane testowe, na przykad
takie jak pokazano na rysunku 7.23.

Rysunek 7.23.

Po klikniciu przycisku kontynuuj wywietlona zostanie strona potwierdzenia zamwienia. To


wanie tutaj nastpuje drobna zmiana. Gdy klient upewni si, e wszystkie dane s prawidowe
i kliknie przycisk kontynuuj, to wszystkie informacje o zamwieniu przesyane s do firmy
PSiGate i nie s zachowywane w witrynie sklepu. Potwierdzeniem tego moe by zawarto paska
statusu przegldarki oraz komunikat wywietlany przez serwer firmy PSiGate tu przed ponownym skierowaniem klienta na strony naszego sklepu (prosz przyjrze si rysunkowi 7.24).
Na rysunku tym mona zauway, e przetwarzany jest aktualnie plik Process.asp znajdujcy
si na serwerze https://order.psigate.com, natomiast na pasku statusu przegldarki zapisana jest
informacja, e aktualnie otwierany jest plik checkout_process.php znajdujcy si na serwerze
sklepu. Poza tym zachowywany jest te identyfikator sesji, ktry przekazywany jest w parametrze do nowo otwieranej strony (na rysunku niestety sabo to wida).
Co si tutaj zdarzyo? Serwer sklepu przesa do bezpiecznego serwera PSiGate informacj
o wykonywanej transakcji, a ten przetworzy t informacj i odesa wyniki. Jeeli transakcja
dosza do skutku, to klient zobaczy stron z komunikatem o poprawnym obsueniu zamwienia (albo dowolnym innym, zalenie od tego, jak stron przygotowalimy). Jeeli jednak
transakcji nie udao si zrealizowa, to informacje o bdach pobierane s przez modu obsugi
patnoci i wywietlane do wiadomoci klienta.

245

osCommerce. Tworzenie sklepw internetowych

Rysunek 7.24.

Jakie opcje moemy zmienia w tym module? Podobnie jak w przypadku moduu PayPal tutaj
rwnie przedstawi tabel z opisem wszystkich najwaniejszych opcji:
Waciwo

Ustawienie

Enable PsiGate Module


(wcz modu PsiGate)

Tutaj oczywicie trzeba wpisa warto True. Bez tego klienci nie bd mogli
skorzysta z tej formy patnoci.

Merchant Id
(identyfikator kupca)

Ten identyfikator zostanie nam nadany po uzyskaniu internetowego konta kupieckiego.


Wicej informacji na ten temat znale mona na stronie
http://www.psigate.com/faq.asp.

Transaction Mode
(tryb transakcji)

Pierwsza warto Production powinna by uywana wycznie dla dziaajcego


ju sklepu. Trzy pozostae opcje stosowane s w testach majcych skontrolowa
poprawno zachowa systemu. Na przykad wybranie wartoci Always Good
pozwala na sprawdzenie zachowania systemu dla poprawnie obsuonych transakcji.

Transaction Type
(typ transakcji)

Wybranie tu wartoci Sale oznacza, e serwer PSiGate bdzie traktowa transakcje


jako wice i odpowiednio transferowa rodki. Wartoci tej naley uywa tylko
wtedy, gdy produkt moe natychmiast dotrze do klienta (czyli w przypadku
sprzeday produktw do pobrania). Warto PreAuth pozwala na zapewnienie
sobie dostpnoci rodkw (zarezerwowanie), ale sama transakcja nie jest jeszcze
wykonywana. Jej wykonanie powinno zosta rcznie wczone na stronach firmy
PSiGate w sekcji Admin dopiero po dostarczeniu towaru. Warto PostAuth pozwala
na spacenie transakcji typu PreAuth, ktra zarezerwowaa pewne rodki na koncie.
W tym celu trzeba mie jeszcze identyfikator zamwienia typu PreAuth i zna kwot
tego zamwienia.

246

Rozdzia 7. Podatki, patnoci i wysyki

Waciwo

Ustawienie

Credit Card Collection


(miejsce wprowadzania
danych o kartach
kredytowych)

Mona tu zdecydowa, czy klient ma wprowadza dane swojej karty kredytowej


na stronach naszego sklepu, czy raczej na stronach firmy PSiGate. Jeeli kto ma
jakiekolwiek wtpliwoci, to lepiej przekaza odpowiedzialno firmie PSiGate.

Transaction Currency
(waluta transakcji)

W tym miejscu mona wybra jedynie dolary kanadyjskie lub dolary USA. Firma
PSiGate obsuguje patnoci wycznie w tych dwch walutach.

Payment Zone
(strefa patnoci)

Tutaj naley wybra strefy, ktre obsugiwa ma modu. Mona na przykad zaznaczy,
eby firma PSiGate obsugiwaa patnoci z Ameryki Pnocnej, a firma SECPay
zajmowaa si patnociami z Europy.

Set Order Status


(ustal stan zamwienia)

Tutaj mona wybra dowoln warto stanu zamwienia. Trzeba jednak pamita,
eby stosowa spjn polityk, poniewa na podstawie stanu zamwienia mona
chcie budowa pewne rozwizania programowe. W takich warunkach wybranie
tu stanu Przygotowanie [PayPal IPN] nie jest najlepszym rozwizaniem, poniewa
ten stan nie ma nic wsplnego z moduem PSiGate.

Sort order of display


(kolejno sortowania)

Tutaj wprowadzi naley po prostu pozycj, w jakiej pojawi si ma dana opcja.

Oczywicie w zalenoci od wymaga swojej firmy mona skorzysta te z innych moduw.


Dokadny sposb realizacji patnoci przez dany modu zaley przede wszystkim od implementowanej metody, ale w tych kilku punktach mona byo dowiedzie si, czego naley oczekiwa po uzyskaniu internetowego konta kupieckiego pozwalajcego na przetwarzanie transakcji elektronicznych.
Zanim przejdziemy dalej, chciabym poda tu jeszcze jedn uwag. Jeeli kto obawia si
o bezpieczestwo swojego sklepu i chciaby wiedzie wicej na temat metod zabezpieczania
si przed ewentualnymi oszustwami, to powinien odwiedzi witryn swojego dostawcy usug
patniczych lub centrum autoryzacyjnego i poszuka na niej oprogramowania do wykrywania
nieprawidowoci lub innych podobnych produktw. Teraz moemy ju przyjrze si kilku
innym metodom patnoci, ktre czasami mog okaza si bardzo przydatne.

Co prawda patnoci kartami kredytowymi albo za porednictwem firmy PayPal z punktu widzenia klienta s chyba najwygodniejsze do wykonania, to jednak nie kady na tyle ufa internetowi,
eby przekaza w ten sposb potrzebne informacje i dlatego wiele osb skonnych bdzie
skorzysta z nieco starszych metod patnoci. Jak na ironi, znacznie wicej oszustw wykonywanych jest za pomoc czekw ni za pomoc sieciowych patnoci kart kredytow, ale na to
nic nie mona poradzi.

247

osCommerce. Tworzenie sklepw internetowych

Z czekami i przekazami pieninymi trzeba naprawd uwaa. Wiele bankw od razu zapisze na
nasze konto kwot zapisan na przedoonym czeku. W takiej sytuacji w dobrej wierze moemy
wysa do klienta towar, a po chwili zauway, e bank wycofa ca kwot, bo czek by bez
pokrycia. W ten sposb nasz klient moe niechccy, a by moe celowo pozbawi nas nalenej
nam zapaty.
Jeeli jednak kto uwaa, e z braku tych starszych metod patnoci sprzeda w jego sklepie
moe zosta bardzo ograniczona, to zapraszam do dalszej lektury...

Czeki i przekazy pienine


Ten modu jest jednym z najprostszych w konfiguracji. Wystarczy tylko przej w panelu administracyjnym do sekcji Moduy/Patnoci, zaznaczy go i klikn przycisk install. Poszczeglne
opcje nie wymagaj szerokiego omawiania, a cz z nich zostaa opisana ju wczeniej, dlatego ich edycja nie powinna trwa szczeglnie dugo. Oczywicie stanu zamwienia nie wolno
zmienia do czasu otrzymania czeku lub przekazu, a towarw na pewno nie powinno si wysya przed faktycznym wpyniciem opaty na nasze konto.
Inna sprawa, ktr trzeba si zaj, to konieczno sprawdzenia, czy taka forma patnoci bdzie
dla nas w ogle dostpna. W niektrych czciach wiata przekazy pienine nie s akceptowane. W przeciwiestwie do koniecznoci dokadnego sprawdzenia szczegw dziaania kadej
formy patnoci nie trzeba natomiast zajmowa si bezpieczestwem witryny, poniewa midzy
klientem a sklepem nie s przesyane adne istotne informacje. Jak wida, ta metoda patnoci jest bardzo prosta w implementacji, ale niestety wymaga od klienta pewnej cierpliwoci, poniewa otrzymanie i obsuenie patnoci moe po prostu trwa.

Opata za pobraniem
Jeeli chcemy dostarcza fizyczne produkty sprzedawane w swoim sklepie, to warto rozway
te instalacj moduu Cash on Delivery obsugujcego patnoci za pobraniem. Ten modu
rwnie nie powinien sprawia adnych problemw przy instalowaniu i edytowaniu. Trzeba jednak pamita o pewnych szczegach:
n Najprawdopodobniej taka dostawa moliwa bdzie tylko w ramach jednej strefy,

dlatego due znaczenie ma tutaj opcja Payment Zone umoliwiajca wczenie tego
moduu dla tylko jednej strefy.
n Sklep moe dostarcza towary za pobraniem rwnie za porednictwem rnych

firm kurierskich, ale to wie si zawsze z dodatkowymi kosztami. Wicej informacji


znale mona na witrynach WWW firm, z ktrymi ewentualnie mona rozwaa
wspprac.

248

Rozdzia 7. Podatki, patnoci i wysyki

Do pakietu osCommerce domylnie doczanych jest sze moduw wysyek dajcych nam
cakiem nieze moliwoci kontroli nad sposobami dostarczania towarw do klientw. Dostpnych jest te wiele innych moduw, ktre rozszerzaj ten podstawowy zestaw funkcji albo
wprowadzaj cakowicie nowe funkcje. Przy organizowaniu systemu wysyek dla swojego sklepu
najlepiej bdzie po prostu usi i spokojnie pomyle, kto bdzie kupowa dane towary i gdzie
bdziemy musieli je dostarcza.
Gdy bdziemy ju wiedzieli, gdzie wdrowa bdzie wikszo sprzedawanych przez nas
produktw, to bdziemy mogli przystpi do tworzenia strategii wysykowej. Na przykad jeeli
planujemy wysya towary wycznie na wzgldnie niewielki geograficznie obszar, a same towary
nie rni si bardzo wielkoci i wag, to mona rozway stosowanie staej stawki za wysyk.
Najprawdopodobniej bdziemy jednak chcieli uzyska znacznie dokadniejsz kontrol nad
stawkami za wysyki towarw, dlatego teraz przyjrzymy si wszystkim dostpnym moduom
wysyek (z wyjtkiem moduu stawki staej, poniewa jego instalacja jest po prostu trywialna).
Zanim przejdziemy do szczegw, musz jednak zaznaczy, e o ile zainstalowanie i kontrola
nad poszczeglnymi moduami jest wzgldnie prosta, to ju uzyskanie planowanych wynikw
pracy tych moduw takie cakiem proste nie jest. Mam tu na myli fakt, e mona klientom
oferowa kilka rnych metod wysyki, zrnicowanych pod wzgldem stref, do ktrych wysyane maj by towary. Jeeli zdecydowalibymy si na takie rozwizanie, to musimy by pewni, e wszystkie stawki w peni pokryj nasze koszta zwizane z wysyk do dowolnego klienta
(ewentualnie mona te wyczy moliwo wysyki do pewnych stref).
Innymi sowy, stawka staa nie zmienia si nawet wtedy, gdy kupowa bdzie od nas kto, kto
mieszka za oceanem. Naley si spodziewa, e taki klient wybierze najtasz moliw form
przesyki, niezalenie od tego, czy planowalimy dla niego dan form. Trzeba si zatem wystrzega sytuacji, e klient dostaje do wyboru kilka opcji wysyek, spord ktrych jedna nie bdzie
pokrywa naszych kosztw.

Stawki stae
Trzeba te zaznaczy, e stawki stae mona zdefiniowa dla kilku rnych stref, dlatego nie
musimy ogranicza si do podawania takiej stawki dla jednej tylko strefy. Chcc zdefiniowa
stawk sta dla innej strefy, naley wykona kopi plikw flat.php znajdujcych si w katalogach includes/modules/shipping/ i includes/languages/polish/modules/shipping/. Takie kopie trzeba
nastpnie edytowa, zastpujc w nich kade wystpienie sowa flat lub FLAT nazw, jak nadalimy kopiom. Na przykad nowym plikom w obu katalogach moglimy nada nazw flat1.php,
a zatem naleaoby w nich kade wystpienie sowa flat lub FLAT zastpi sowami flat1 lub
FLAT1. Jak wida, chodzi tu o proste i nieskomplikowane operacje wyszukiwania i podmiany.

249

osCommerce. Tworzenie sklepw internetowych

Otrzymanego w ten sposb moduu stawki staej mona teraz uy do ustalenia kosztw wysyki
do innej strefy.
Takie rozwizanie bardzo przydaje si wtedy, gdy chcemy ustali kilka rnych stawek staych
obowizujcych dla kilku krajw, a nie chcemy zajmowa si konfigurowaniem moduu stawek strefowych ani innymi formami wysyki. Przegldajc opcje wysyek dostpne w naszym
przykadowym sklepie, zobaczymy list podobn do przedstawionej na rysunku 7.25.

Rysunek 7.25.

Od razu wida tutaj, e do dyspozycji mamy dwa moduy stawki staej, z ktrych jeden przeznaczony jest do obsugi czeskiej strefy wysykowej, w ktrej mamy nieco wysze koszta wysyki (opcja Shipping Cost) ni przy wysykach w Polsce. Jeeli teraz spojrzymy, jaki wpyw
takie ustawienia bd miay na klientw mieszkajcych w Czechach (rysunek 7.26), to zauwaymy, e maj oni do wyboru dwie stawki stae (oczywicie wolelibymy, eby w kadej strefie
dostpna bya tylko jedna stawka staa, ale tutaj chodzi o ma demonstracj).

Rysunek 7.26.

250

Rozdzia 7. Podatki, patnoci i wysyki

Poza tym dobrze by byo, gdyby poszczeglne moduy stawek staych wywietlay nieco bardziej
opisowe nazwy, takie jak na przykad Stawka staa dla Polski albo Stawka staa dla Czech.
Nie mona te zapomnie o dokadnym przetestowaniu, czy klienci z rnych stref i towary
z rnymi stawkami podatku przypisywani s do waciwej metody wysyki. Tej sprawy nie
bdziemy tu jednak rozpatrywa w szczegach, poniewa kady powinien umie ju przygotowa tyle moduw stawek staych (a waciwie to dowolnych moduw), ile mu potrzeba.
Wystarczy zatem ju tylko troch poeksperymentowa, a na pewno uda si przygotowa doskonae rozwizanie.

Za sztuk
Ten modu rwnie nie powinien przysparza wikszych kopotw. Wystarczy go tylko zainstalowa, a pakiet osCommerce bdzie mnoy liczb towarw umieszczonych przez klienta
w koszyku przez podan w module stawk i na tej podstawie okreli cen wysyki. W opcji Shipping Cost poda trzeba koszt wysania jednej sztuki towaru, a oprcz tego nie mona zapomnie
o opcjach Handling Fee (opata za obsug), Tax Class (klasa podatku) i Sort Order (kolejno
sortowania). Najciekawsz z nich jest opcja opaty za obsug, ktra pojawia si te we wszystkich
innych moduach wysyki. Podana tu dowolna kwota pozwala pokry koszt pracy oraz materiaw na zapakowanie towarw i dodawana jest po prostu do ceny wysyki.
Taka opcja nie nadaje si jednak do zastosowania w sytuacji, w ktrej sprzedajemy du liczb
produktw naraz i pakujemy je wszystkie w jedno due opakowanie. W takiej sytuacji trzeba
oczywicie wymyli skuteczniejsz i tasz metod wysyania produktw, tak eby z uzyskanych oszczdnoci skorzysta mogli te nasi klienci.

Tabela stawek
Ta metoda daje nam znacznie wikszy zakres kontroli nad opatami za wysyki w postaci specjalnej tabeli stawek. W tym module najwaniejsze s dwie opcje, ktrych uywa mona do
skutecznego okrelania kosztw wysyki:
n Shipping Table (tabela wysyek) opcja pozwala okreli cakowity koszt wysyki

na podstawie cakowitego kosztu lub cakowitej wagi kupowanych towarw.


Poszczeglne stawki definiowane s w postaci listy rozdzielanej dwukropkami
i przecinkami, takiej jak ponisza:
25:8.50,50:5.50,100:3.50,500:1.50

Taka lista nakazuje pakietowi osCommerce pobiera opat w wysokoci 8,50 z


za pierwszych 25 jednostek produktw (jednostki znajduj si przed dwukropkiem,
a cena za nim), ale ju w zakresie od 25 do 50 jednostek pobierana ma by opata
5,50 z, od 50 do 100 3,50 z, a od 100 do 500 zaledwie 1,50 z.
n Table Method (metoda tabeli) opcja pozwala wybra, czy pakiet osCommerce

przy obliczeniach ma bra pod uwag wag, czy te ogln cen produktw.
251

osCommerce. Tworzenie sklepw internetowych

Na razie wszystko wyglda bardzo adnie. Przejrzelimy kilka metod wysyki, jakie moemy oferowa swoim klientom. Musimy jednak wrci to wspomnianego wczeniej problemu zwizanego z koniecznoci ustalenia, kiedy pojawia si ma dany modu. Na rysunku 7.27 doskonale
wida, o co tutaj chodzi:

Rysunek 7.27.

Na tym rysunku mona zauway, e klient moe wybiera spord dwch opcji. Oczywicie
klient na pewno wybierze tasze rozwizanie, ktre w tym przypadku wynika bdzie z tabeli
stawek skonfigurowanej tak, e zamwienia opiewajce na kwot powyej 100 z dostarczane s
za darmo. Opcja opaty za sztuk dodaje po prostu 2,50 z za kad wybran pozycj, a zatem
oglny koszt tej formy wysyki bdzie wzrasta, podczas gdy koszt tej drugiej bdzie spada.
Niestety bardzo niemi dla nas wiadomoci, i to niezalenie od wybranej metody wysyki,
jest to, e produkty maj zosta dostarczone do Afryki, a to bdzie nasz zlokalizowan w Polsce
ksigarni kosztowao wicej, ni wynosi caa kwota zamwienia.

Prosz pamita, e darmow wysyk po przekroczeniu pewnej sumy zamwienia mona wczy na
stronie Shipping sekcji Suma zamwienia (znale j mona pod sekcj Wysyka w kategorii Moduy).

Proponuj zatem poeksperymentowa z ustawieniami w sekcji Suma zamwienia i dokadnie


pozna udostpniane tam funkcje. Wszystkie opcje w tej sekcji s bardzo proste, dlatego nie
bd ich tutaj opisywa, ale ich dokadniejsze poznanie pozostawi w gestii Czytelnika.

252

Rozdzia 7. Podatki, patnoci i wysyki

Poczta Polska Paczki


W Polsce na pewno przyda si modu, ktry mona pobra z witryny pakietu osCommerce,
spod adresu http://www.oscommerce.com/community/contributions,1820. Jest to prosta przerbka moduu tabeli stawek uzupeniona o dane opat stosowanych przez Poczt Polsk przy wysyaniu paczek. Modu ten wystpuje w dwch wersjach: dla paczek zwykych i priorytetowych.
Zgodnie z zaleceniami autora przed zainstalowaniem tego moduu naley przygotowa sobie
kopi plikw table.php znajdujcych si w katalogach catalog/includes/modules/shipping i catalog/
includes/languages/polish/modules/shipping. Dopiero wtedy bezpiecznie mona skopiowa pliki
table.php i prior.php we wskazane miejsca. Po zainstalowaniu i odpowiednim skonfigurowaniu
moduw (opcj Shipping Table lepiej pozostawi bez zmian, chyba e Poczta Polska zmieniaby stawki za przesyki) klient bdzie mia do wyboru dwie nowe opcje przesyki przedstawione na rysunku 7.28.

Rysunek 7.28.

Autor moduu zaleca jeszcze, eby osoby korzystajce z tego moduu zmieniy w panelu administracyjnym w kategorii Konfiguracja, w sekcji Shipping/Packaging warto opcji Enter the Maximum Package Weight you will Ship i naday jej warto 10. Po prostu Poczta Polska nie zajmuje
si przesyaniem paczek o wadze wikszej ni 10 kg.

Stawki strefowe
Ten modu jest o tyle interesujcy, e pozwala na wybranie ceny wysyki w zalenoci od strefy
i oglnej wagi caego zamwienia. Niestety na razie modu ograniczony jest do obsugi tylko
jednej strefy, przez co nie nadaje si do stosowania przy wysykach do wielu stref. Na rysunku

253

osCommerce. Tworzenie sklepw internetowych

7.29 zobaczy mona efekt uycia tego moduu w sytuacji, gdy zakupw chciaby dokona klient
mieszkajcy poza Polsk.

Rysunek 7.29.

No c, adna z przedstawionych opcji nie jest idealna, jakie wic bdzie najlepsze rozwizanie? Najlepiej bdzie, jeeli zastosujemy kombinacj rnych moduw, ktre bd wczane
i wyczane przez definicje stref. Niestety nawet to nie rozwie cakowicie tego problemu,
jeeli zakadamy utworzenie sklepu oferujcego towary na caym wiecie. Przyjrzyjmy si jednak
szczegom rozwizania zastosowanego dla przykadowej ksigarni.

Rozwizanie wysyek dla ksigarni Contechst Books


Znakomita wikszo sprzeday ksigarni Contechst Books bdzie miaa miejsce w Polsce,
dlatego polskim klientom chcielibymy zaoferowa jak najlepsze usugi dostarczania ksiek,
wcznie z dodatkow opat dla klientw, ktrzy chcieliby, eby ich ksiki zostay dostarczone
tak szybko, jak tylko jest to moliwe. Oznacza to, e na terytorium Polski moemy klientom
zaoferowa wysyk towarw kurierem (za sta opat) albo odpowiednio wolniejsz wysyk
pocztow o cenie zrnicowanej wzgldem wagi zamwionych towarw (tutaj wykorzystamy
modu ze stawkami wagowymi Poczty Polskiej).
Oprcz zamwie z Polski oczekujemy rwnie klientw z innych krajw Europy, dlatego dla
nich rwnie musimy przygotowa jaki plan wysyek. W tym miejscu posuymy si moduem
stawek strefowych. Na razie ogranicza on nas do zaledwie jednej strefy, a to na pewno nie bdzie
wystarczajce, jeeli chcemy dostarcza ksiki do caej Europy. Musimy zatem wprowadzi
do niego pewne modyfikacje, ktre pozwol nam zdefiniowa dowoln liczb stref.
W pliku catalog/includes/modules/shipping/zones.php prosz odszuka poniszy wiersz kodu:
$this->num_zones = 1;

W wierszu tym poda trzeba liczb stref, jak bdziemy obsugiwali w naszym sklepie:
$this->num_zones = 4;

254

Rozdzia 7. Podatki, patnoci i wysyki

Teraz trzeba jeszcze ponownie zainstalowa modu; inaczej wprowadzone zmiany nie bd miay
adnego efektu. Niestety ponowna instalacja moduu powoduje utrat wszystkich dotychczasowych ustawie, dlatego przed jej wykonaniem naley zapisa sobie wszystkie dotychczasowe
ustawienia tego moduu. Teraz mona ju edytowa opcje moduu, ktre na potrzeby przykadowego sklepu zostay ustalone tak jak na rysunku 7.30.

Rysunek 7.30.

Przedstawione tu stawki nie s istotne; to w kocu tylko przykad. Wane jest to, e mamy ju
przygotowane bardzo solidne zasady dostarczania ksiek, ktre mona jeszcze sprawdzi, przegldajc opcje udostpniane klientom z rnych zaktkw Europy. Jak mona oczekiwa, klient
zgaszajcy si do nas z Niemiec otrzymuje tylko jedn opcj (prosz spojrze na rysunek 7.31).
Prosz zwrci uwag na to, e klienci zagraniczni nie mog skorzysta z opcji zarezerwowanych wycznie dla klientw z Polski. Dokadnie o to nam chodzio. Na razie mona nie przejmowa si przedstawionymi kwotami, one i tak mog si zmienia, a poza tym czsto uzalenione
s od wybranej oferty przewonika. Na zakoczenie prosz przyjrze si jeszcze rysunkowi
7.32, na ktrym przedstawione zostay moliwoci wyboru prezentowane klientom z Polski.

255

osCommerce. Tworzenie sklepw internetowych

Rysunek 7.31.

Rysunek 7.32.

Teraz ju chyba kady widzi, dlaczego najlepszym rozwizaniem jest kombinacja rnych opcji
wysykowych. Po prostu w ten sposb klienci z Polski mog wybra szybk wysyk kuriersk,
ale maj te do wyboru wolniejsz wysyk pocztow, ktra na pewno bdzie nieco tasza.

Przygotowanie spjnej polityki patnoci i przesyek jest jednym z waniejszych elementw


przy uruchamianiu internetowego sklepu. Po zakoczeniu lektury tego rozdziau Czytelnicy powinni dokadnie wiedzie, co trzeba zrobi, eby zaimplementowa wszystkie funkcje sklepu

256

Rozdzia 7. Podatki, patnoci i wysyki

zwizane z patnociami i wysykami. Mam nadziej, e kady zdecyduje si na obsug patnoci kartami kredytowymi za porednictwem znanych i odpowiednio zabezpieczonych instytucji i nikt nie bdzie podejmowa niepotrzebnego ryzyka. Musz tutaj powtrzy, e naley
korzysta wycznie z zaufanych dostawcw takich usug. Niestety na tym rynku rwnie nie
brakuje nieuczciwych firm.
Na tym etapie kady powinien mie ju uruchomione wszystkie funkcje zwizane z patnociami, wcznie z wymaganymi do ich funkcjonowania kontami. Oprcz tego ceny zamwie
powinny mie ju doliczane opaty za wysyk najlepiej dopasowan do wymaga okrelonego
klienta. Nie jest to jednak koniec prac. Prosz sobie przypomnie, e z serwerami PayPal nadal
komunikujemy si bez adnego szyfrowania. Co gorsza, jak dotd nie zabezpieczylimy adnej
czci naszej witryny, a to oznacza, e wamywacz nie bdzie mia najmniejszych problemw
z uzyskaniem dostpu do dowolnej jej czci.
Prosz te pamita o koniecznoci dokadnego przetestowania kadej moliwej kombinacji
patnoci, nieprawidowych patnoci, rnych wysyek, nieprawidowych adresw itd. Dopiero
po bezproblemowym przeprowadzeniu wszystkich tych testw bdziemy mogli powiedzie,
e wszystkie mechanizmy s na tyle stabilne i skuteczne, e witryn mona udostpni w internecie. Przyznaj, e w czasie pracy na komputerze roboczym nasze moliwoci przeprowadzania testw mog by nieco ograniczone, ale w nastpnym rozdziale omawia bd sprawy
zwizane z bezpieczestwem, a wtedy bdziemy mogli przenie sklep na serwer w internecie
i przeprowadzi gruntowne testy. Oczywicie mona te poczeka a do rozdziau 11. i spokojnie zrobi wszystko zgodnie ze wskazwkami podawanymi w ksice.

257

You might also like