joao-pedro-alves / hotmart-php-sdk
Biblioteca em PHP para utilização da API da Hotmart
Requires
- php: >=7.2
- guzzlehttp/guzzle: ^6.3
Requires (Dev)
- phpunit/phpunit: ^7.5
README
Biblioteca criada para viabilizar de forma simples a utilização das funcionalidades da API da Hotmart em projetos em PHP.
É altamente recomendado acessar a documentação oficial da API da Hotmart antes de utilizar essa biblioteca.
Índice
Instalação
Instale a biblioteca utilizando o comando
composer require joao-pedro-alves/hotmart-php-sdk
Testes
docker compose run php vendor/bin/phpunit
Configuração
Obtendo credenciais
Para iniciar a configuração da biblioteca é necessário antes obter as credenciais de acesso à API da Hotmart.
-
Acesse a área de Credenciais da Hotmart através da URL: https://app.hotmart.com/tools/credentials
-
Clique em "Criar credenciais"
-
Selecione "API Hotmart" e clique em "Criar credenciais"
-
Informe um nome para identificar essas credenciais, por exemplo "Aplicação Web" e prossiga clicando em "Criar credencial"
-
Salve as Chaves de acesso (Cliente ID, Client Secret e Basic), essas informações serão utilizadas para a configuração.
Configurando SDK
Instancie a classe de cliente da SDK passando como parâmetros os dados das credenciais obtidos no passo anterior
<?php use Hotmart; $hotmart = new Hotmart\Client( 'a60ea46d-fd4a-48b6-a10b-823a9c3c1a35', '5e7ab2d7-6cd3-2da5-bc6b-45e10ab15021', 'LTawYmU4NmQtZmQ0YS00OGI2LWGxMGItODkzYTljM2MxZTM1OjJlN7FhMmQ1LTZkZDctNJRmNS1iZTliLTk1ZTIwYmIxNTB1MX' );
API
Funcionalidades suportadas pela API da Hotmart.
Todos os métodos aceitam os parâmetros informados na documentação do end-point correspondente, assim como também seu valor de retorno.
Assinaturas
Operações relacionadas a assinaturas.
Obter assinaturas
<?php $hotmart = new Hotmart\Client('CLIENT_ID', 'CLIENT_SECRET', 'CLIENT_BASIC'); $hotmart->subscriptions()->get($paramsArray);
Sumário de assinaturas
<?php $hotmart = new Hotmart\Client('CLIENT_ID', 'CLIENT_SECRET', 'CLIENT_BASIC'); $hotmart->subscriptions()->summary($paramsArray);
Compras de assinantes
<?php $hotmart = new Hotmart\Client('CLIENT_ID', 'CLIENT_SECRET', 'CLIENT_BASIC'); $hotmart->subscriptions()->purchases($subscriberCode, $paramsArray);
Cancelar assinatura
<?php $hotmart = new Hotmart\Client('CLIENT_ID', 'CLIENT_SECRET', 'CLIENT_BASIC'); $hotmart->subscriptions()->cancel($subscriberCode, $paramsArray);
Cancelar lista de assinaturas
<?php $hotmart = new Hotmart\Client('CLIENT_ID', 'CLIENT_SECRET', 'CLIENT_BASIC'); $hotmart->subscriptions()->cancelList($subscriberCodeArray, $paramsArray);
Reativar assinatura
<?php $hotmart = new Hotmart\Client('CLIENT_ID', 'CLIENT_SECRET', 'CLIENT_BASIC'); $hotmart->subscriptions()->reactivate($subscriberCode, $paramsArray);
Reativar lista de assinaturas
<?php $hotmart = new Hotmart\Client('CLIENT_ID', 'CLIENT_SECRET', 'CLIENT_BASIC'); $hotmart->subscriptions()->reactivateList($subscriberCodeArray, $paramsArray);
Alterar dia da cobrança da assinatura
<?php $hotmart = new Hotmart\Client('CLIENT_ID', 'CLIENT_SECRET', 'CLIENT_BASIC'); $hotmart->subscriptions()->changeChargeDay($subscriberCode, $paramsArray);
Transações (vendas)
Operações relacionadas as vendas.
Histórico de vendas
<?php $hotmart = new Hotmart\Client('CLIENT_ID', 'CLIENT_SECRET', 'CLIENT_BASIC'); $hotmart->transactions()->history($paramsArray);
Sumário de vendas
<?php $hotmart = new Hotmart\Client('CLIENT_ID', 'CLIENT_SECRET', 'CLIENT_BASIC'); $hotmart->transactions()->summary($paramsArray);
Participantes de vendas
<?php $hotmart = new Hotmart\Client('CLIENT_ID', 'CLIENT_SECRET', 'CLIENT_BASIC'); $hotmart->transactions()->participants($paramsArray);
Comissões de vendas
<?php $hotmart = new Hotmart\Client('CLIENT_ID', 'CLIENT_SECRET', 'CLIENT_BASIC'); $hotmart->transactions()->commissions($paramsArray);
Detalhamento de preços de vendas
<?php $hotmart = new Hotmart\Client('CLIENT_ID', 'CLIENT_SECRET', 'CLIENT_BASIC'); $hotmart->transactions()->priceDetails($paramsArray);
Reembolso de venda
<?php $hotmart = new Hotmart\Client('CLIENT_ID', 'CLIENT_SECRET', 'CLIENT_BASIC'); $hotmart->transactions()->refund($transactionCode);
Área de membros
Operações relacionadas as informações da área de membros.
Obter módulos
<?php $hotmart = new Hotmart\Client('CLIENT_ID', 'CLIENT_SECRET', 'CLIENT_BASIC'); $hotmart->club()->modules('NOME_DO_SUBDOMINIO', $paramsArray);
Obter páginas de um módulo
<?php $hotmart = new Hotmart\Client('CLIENT_ID', 'CLIENT_SECRET', 'CLIENT_BASIC'); $hotmart->club()->modulePages($subDomain, $moduleId);
Obter usuários
<?php $hotmart = new Hotmart\Client('CLIENT_ID', 'CLIENT_SECRET', 'CLIENT_BASIC'); $hotmart->club()->users($subDomain);
Obter progresso de um usuário
<?php $hotmart = new Hotmart\Client('CLIENT_ID', 'CLIENT_SECRET', 'CLIENT_BASIC'); $hotmart->club()->userLessons($subDomain, $userId);