@@verze 4 @@conf+:eshop_conf.php /* ---- Nastavení GoPay ---- */ if (!isset($onlineplatba_system)) $onlineplatba_system = array(); // GoPay $onlineplatba_system[] = 'gopay2'; $onlineplatba_konfigurace['gopay2'] = array( // Tyto údaje sdělí klient 'goid' => 12345, 'clientId' => '12345', 'clientSecret' => 'abcde', // Má GoPay pracovat v testovacím módu? // Pro testování - návod na https://help.gopay.com/cs/s/h1 'testMode' => true, // Volitelně - automatické přepínání stavů objednávky, změní-li se stav platby 'switch' => array( GoPay\Definition\Response\PaymentStatus::PAID => 1 ), // Volitelně - podmínky na automatické přepnutí. V jakém stavu musí být objednávka, aby platilo pravidlo pro automatické přepnutí? // Zde např. že obejdnávka musí být nezpracovaná (stav 0), aby došlo k přepnutí na stav Přijatá (1), pokud se úspěšně zaplatí (status PAID) 'switchFrom' => array( 1 => array(0) ), // Volitelně funkce pro dodatečnou transformaci dat o platbě předávaných do GoPay // function (array $paymentData, EshopObjednavka $order) { return $upravenePaymentData; } // $paymentData viz https://doc.gopay.com/cs/?shell#standardní-platba 'paymentDataCallback' => null, // Volitelně, EET. // O GoPay EET více na https://help.gopay.com/cs/s/vX // EET v režimu A je jednodušší a od nás není potřeba nic dělat, vhodné pro e-shopy prodávající jen v jediné sazbě DPH. Zde nech [eet] = false nebo undefined // EET v režimu B znamená, že náš e-shop musí dodávat nějaká data navíc. // // Defaultní implementace: // 'eet' => true // // Vlastní implementace: 'eet' => function(EshopObjednavka $order) { return Gopay2\Eet; } // Pro vlastní implementaci lze využít třídu EetCalculator, jen pozor, ta vrací generickou třídu EetData, my potřebujeme vrátit Gopay2\Eet // // 'eet' => function($order) { // $defaultCalculator = new EetCalculator(); // $eetData = $defaultCalculator->calculate($order); // $goPayEet = GoPay2\Eet::fromEetData($eetData, $order); // $goPayEet->dic_poverujiciho = "111111111"; // return $goPayEet; // } ); /* Stavy: GoPay\Definition\Response\PaymentStatus::CREATED => 'Platba vytvořena', GoPay\Definition\Response\PaymentStatus::PAYMENT_METHOD_CHOSEN => 'Platební metoda vybrána', GoPay\Definition\Response\PaymentStatus::CANCELED => 'Platba byla zrušena', GoPay\Definition\Response\PaymentStatus::TIMEOUTED => 'Životnost platby vypršela', GoPay\Definition\Response\PaymentStatus::PAID => 'Zaplaceno', GoPay\Definition\Response\PaymentStatus::AUTHORIZED => 'Schváleno, čeká na zaplacení', GoPay\Definition\Response\PaymentStatus::REFUNDED => 'Platba vrácena', GoPay\Definition\Response\PaymentStatus::PARTIALLY_REFUNDED => 'Platba byla částečně vrácena', */ @@init GoPay2\Client::integrate(); @@reflection if (!isset($moduly["eshop"])) return "nelze"; eval(nactinastavenimodulu("eshop")); if (!isset($enhanced_online_payments) or !$enhanced_online_payments) return "nelze"; if (GenericPaymentSystem::isSystemRegistered("gopay2")) return "ano"; return "ne";