Эффективные методы проверки кодов покупки Envato на PHP

Envato — это популярный рынок цифровых продуктов, включая темы, плагины и другие творческие ресурсы. Разработчику важно проверить подлинность кода покупки Envato, чтобы гарантировать, что только законные пользователи смогут получить доступ к вашим продуктам или услугам премиум-класса. В этой статье мы рассмотрим несколько методов реализации проверки кода покупки Envato на PHP, а также приведем примеры кода.

Метод 1: интеграция API Envato
Envato предоставляет мощный API, который позволяет вам напрямую проверять коды покупок. Вот пример того, как вы можете использовать Envato API для проверки кода покупки:

$purchaseCode = "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"; // Replace with the actual purchase code
$apiUrl = "https://api.envato.com/v3/market/author/sale";
$apiKey = "your_envato_api_key";
$ch = curl_init($apiUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Authorization: Bearer $apiKey"
]);
curl_setopt($ch, CURLOPT_POSTFIELDS, [
    "code" => $purchaseCode
]);
$response = curl_exec($ch);
curl_close($ch);
$result = json_decode($response, true);
if ($result && isset($result['item']) && $result['item']['id'] == 12345) {
    // Code verification successful
} else {
    // Code verification failed
}

Метод 2: сопоставление кода покупки и идентификатора товара.
Другой метод предполагает сохранение кодов покупки и связанных идентификаторов товаров в вашей базе данных. Когда пользователь вводит код покупки, вы можете проверить, соответствует ли он сохраненному идентификатору товара. Вот пример:

$purchaseCode = "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"; // Replace with the actual purchase code
$storedPurchaseCode = "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"; // Replace with the stored purchase code
$storedItemId = 12345; // Replace with the stored item ID
if ($purchaseCode === $storedPurchaseCode) {
    // Code verification successful
    // Now check if the item ID matches
    if ($itemId == $storedItemId) {
        // Item ID matches, code is valid
    } else {
        // Item ID doesn't match, code is invalid
    }
} else {
    // Code verification failed
}

Метод 3: Проверка лицензионного ключа
Если вы выдаете лицензионные ключи своим клиентам, вы можете использовать библиотеку лицензирования или внедрить собственную систему проверки лицензионных ключей. Вот пример использования библиотеки php-license-manager:

use PhpLicenseManager\LicenseManager;
$licenseKey = "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"; // Replace with the license key
$manager = new LicenseManager();
$result = $manager->verifyLicense($licenseKey);
if ($result->isValid()) {
    // License key verification successful
} else {
    // License key verification failed
}

Внедрение проверки кода покупки Envato в PHP имеет решающее значение для защиты ваших продуктов премиум-класса. В этой статье мы рассмотрели три метода: интеграцию Envato API, сопоставление кода покупки и идентификатора товара, а также проверку лицензионного ключа. Выберите метод, который лучше всего соответствует вашим требованиям, и убедитесь, что только авторизованные пользователи смогут получить доступ к вашим ценным цифровым активам.