PHP code example of tigr / yandex-kassa

1. Go to this page and download the library: Download tigr/yandex-kassa library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

tigr / yandex-kassa example snippets




    use TiGR\YandexKassa\YandexKassaHelper;
    use TiGR\YandexKassa\Exception\AuthorizationErrorException;
    use TiGR\YandexKassa\Exception\BadRequestException;

    $helper = new YandexKassaHelper(KASSA_SHOP_ID, KASSA_SHOP_PASSWORD);

    $errorStatus = YandexKassaHelper::STATUS_BAD_REQUEST;

    if ($helper->isCheckOrderAction()) {
        $errorStatus = YandexKassaHelper::STATUS_PAYMENT_REJECTED;
    }

    try {
        $helper->parseRequest($_POST);
    } catch (AuthorizationErrorException $e) {
        // ... handle this exception ...

        return $this->xmlResponse($helper->buildResponse(null, $e->getMessage()));
    } catch (BadRequestException $e) {
        // ... handle this exception ...

        return $this->xmlResponse($helper->buildResponse(null, $e->getMessage()));
    } catch (\Exception $e) {
        // ... handle this exception ...

        return $this->xmlResponse($helper->buildResponse($errorStatus));
    }

    try {
        $payment = $helper->getPayment();

        // ... do some validation using $payment data ...

        if ($helper->isPaymentAvisoAction()) {
            // ... Mark this payment as settled in your system ...
            // ... log successful transaction, if needed ...
            // ... notify user of successful transaction. if needed ...
        }

        return $this->xmlResponse($helper->buildResponse(/* successful by default */));
    } catch (\Exception $e) {
        // ... handle this exception ...

        return $this->xmlResponse(
            $helper->buildResponse(YandexKassaHelper::STATUS_PAYMENT_REJECTED, $e->getMessage())
        );
    }