PHPackages                             marcosendler/laravel-gupshup-partner - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. marcosendler/laravel-gupshup-partner

ActiveLibrary[API Development](/categories/api)

marcosendler/laravel-gupshup-partner
====================================

Biblioteca completa para integração com as APIs de Parceiro do Gupshup para Laravel

v1.0.0(5mo ago)06MITPHPPHP ^8.1|^8.2|^8.3CI passing

Since Nov 20Pushed 5mo agoCompare

[ Source](https://github.com/marcosendler/laravel-gupshup-partner)[ Packagist](https://packagist.org/packages/marcosendler/laravel-gupshup-partner)[ RSS](/packages/marcosendler-laravel-gupshup-partner/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (6)Versions (3)Used By (0)

📱 Gupshup Partner API - Laravel Package
=======================================

[](#-gupshup-partner-api---laravel-package)

[![CI](https://github.com/marcosendler/laravel-gupshup-partner/actions/workflows/ci.yml/badge.svg)](https://github.com/marcosendler/laravel-gupshup-partner/actions/workflows/ci.yml/badge.svg)

[![Latest Version](https://camo.githubusercontent.com/e04952186faf767987ea62ea242b77c28c1c83cb4a47f9292d0ac66e0c82f21d/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f6d6172636f73656e646c65722f6c61726176656c2d677570736875702d706172746e6572)](https://github.com/marcosendler/laravel-gupshup-partner/releases)[![PHP Version](https://camo.githubusercontent.com/83dd395020c37276225039739320f6c8e7e99963ab21ee3d09282cb48dad2a60/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5048502d382e312532422d626c7565)](https://php.net)[![Laravel Version](https://camo.githubusercontent.com/ace109071ad31f340704b796d78f34a5e5c6ce7990623fa819212f693a52d7dd/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c61726176656c2d31302e7825374331312e782d726564)](https://laravel.com)[![License](https://camo.githubusercontent.com/f8df3091bbe1149f398a5369b2c39e896766f9f6efba3477c63e9b4aa940ef14/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d677265656e)](LICENSE)[![Tests](https://github.com/marcosendler/laravel-gupshup-partner/workflows/tests/badge.svg)](https://github.com/marcosendler/laravel-gupshup-partner/actions)[![Downloads](https://camo.githubusercontent.com/b917301fdd045e875eaa5f4294392f3e6ed1a60332f6b62b5ee2fc3b5eed5dae/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6d6172636f73656e646c65722f6c61726176656c2d677570736875702d706172746e6572)](https://packagist.org/packages/marcosendler/laravel-gupshup-partner)

Biblioteca completa e moderna para integração com as **APIs de Parceiro do Gupshup** em projetos Laravel. Gerencie apps, templates, mensagens, analytics, wallet e flows do WhatsApp Business de forma simples e eficiente.

🚀 Características
-----------------

[](#-características)

- ✅ **Completo**: Suporte a todas as APIs de Parceiro do Gupshup
- ✅ **Modular**: Arquitetura orientada a serviços
- ✅ **Cache Inteligente**: Cache automático de tokens
- ✅ **Type-Safe**: Tipagem forte em PHP 8.1+
- ✅ **Laravel-First**: Integração nativa com Laravel (Facades, Service Providers, Config)
- ✅ **Fácil de Usar**: API fluente e intuitiva
- ✅ **Tratamento de Erros**: Exceções customizadas e informativas
- ✅ **Testável**: Pronto para testes unitários e de integração

📦 Funcionalidades
-----------------

[](#-funcionalidades)

### 🔧 Gerenciamento de Apps

[](#-gerenciamento-de-apps)

- Listar apps vinculados ao parceiro
- Vincular novos apps
- Obter tokens de acesso
- Configurar ice breakers e mensagens de boas-vindas
- Verificar quality rating e messaging limits
- Gerenciar perfil e fotos

### 📝 Gerenciamento de Templates

[](#-gerenciamento-de-templates)

- CRUD completo de templates
- Suporte a todos os tipos: texto, imagem, vídeo, documento, localização, catálogo
- Templates carrossel (imagem e vídeo)
- Templates de autenticação
- Filtros por status e categoria

### 💬 Envio de Mensagens

[](#-envio-de-mensagens)

- Envio via templates
- Suporte a todos os tipos de mídia
- Mensagens LTO (Limited Time Offer)
- Mensagens de produto
- Mensagens CTA (Call To Action)
- Geração de Media IDs

### 📊 Analytics e Relatórios

[](#-analytics-e-relatórios)

- Logs de mensagens (inbound/outbound)
- Estatísticas de entrega, leitura e falhas
- Breakdown de uso diário
- Conversas por categoria
- Métricas resumidas e KPIs
- Análise de autenticação internacional

### 💰 Gerenciamento de Wallet

[](#-gerenciamento-de-wallet)

- Consulta de saldo
- Histórico de transações
- Extratos mensais
- Gerenciamento de overdraft
- Histórico de consumo
- Controle de comissões

### 🔄 Gerenciamento de Flows

[](#-gerenciamento-de-flows)

- CRUD de flows
- Importação de JSON do Meta Playground
- Preview de flows
- Publicação e depreciação
- Gerenciamento de subscrições

---

📋 Requisitos
------------

[](#-requisitos)

- PHP 8.1 ou superior
- Laravel 10.x ou 11.x
- Extensão cURL habilitada
- Conta de Parceiro Gupshup ativa

---

📦 Instalação
------------

[](#-instalação)

### Via Composer

[](#via-composer)

```
composer require marcosendler/laravel-gupshup-partner
```

### Publicar Configuração

[](#publicar-configuração)

```
php artisan vendor:publish --provider="GupshupPartner\GupshupPartnerServiceProvider" --tag="gupshup-config"
```

### Configurar Credenciais

[](#configurar-credenciais)

Adicione no arquivo `.env`:

```
GUPSHUP_PARTNER_EMAIL=seu-email@gupshup.com
GUPSHUP_PARTNER_PASSWORD=sua-senha
GUPSHUP_DEFAULT_APP_ID=seu-app-id-padrao
GUPSHUP_CACHE_ENABLED=true
```

### Limpar Cache

[](#limpar-cache)

```
php artisan config:clear
php artisan cache:clear
```

---

🎯 Uso Rápido
------------

[](#-uso-rápido)

```
use GupshupPartner\Facades\GupshupPartner;

// Listar apps
$apps = GupshupPartner::apps()->list();

// Obter templates
$templates = GupshupPartner::templates()->list('app-id');

// Enviar mensagem
GupshupPartner::messages()->sendTextTemplate(
    'app-id',
    '5511999999999',
    'template-id',
    ['Parâmetro 1', 'Parâmetro 2']
);

// Obter analytics de hoje
$analytics = GupshupPartner::analytics()->getTodayAnalytics('app-id');
```

---

💡 Exemplos de Uso
-----------------

[](#-exemplos-de-uso)

### Exemplo em Controller

[](#exemplo-em-controller)

```
namespace App\Http\Controllers;

use GupshupPartner\Facades\GupshupPartner;
use Illuminate\Http\Request;

class WhatsAppController extends Controller
{
    public function sendWelcome(Request $request)
    {
        $appId = config('gupshup.default_app.id');

        try {
            $response = GupshupPartner::messages()->sendTextTemplate(
                $appId,
                $request->phone,
                'welcome_template',
                [$request->name]
            );

            return response()->json([
                'success' => true,
                'message_id' => $response['messageId'] ?? null
            ]);
        } catch (\Exception $e) {
            return response()->json([
                'success' => false,
                'error' => $e->getMessage()
            ], 500);
        }
    }
}
```

### Gerenciamento de Apps

[](#gerenciamento-de-apps)

```
use GupshupPartner\Facades\GupshupPartner;

// Listar todos os apps
$apps = GupshupPartner::apps()->list();

// Vincular um app
$linkedApp = GupshupPartner::apps()->link('API_KEY', 'Nome do App');

// Obter token de acesso
$token = GupshupPartner::apps()->getToken('app-id');

// Configurar ice breakers
GupshupPartner::apps()->setIceBreakers('app-id', [
    'Olá! Como posso ajudar?',
    'Ver catálogo',
    'Falar com atendente'
]);
```

### Gerenciamento de Templates

[](#gerenciamento-de-templates)

```
// Listar templates
$templates = GupshupPartner::templates()->list($appId);

// Criar template de texto
$template = GupshupPartner::templates()->createText($appId, [
    'elementName' => 'boas_vindas',
    'category' => 'UTILITY',
    'languageCode' => 'pt_BR',
    'data' => 'Olá {{1}}, bem-vindo à {{2}}!'
]);

// Obter templates aprovados
$approved = GupshupPartner::templates()->getApproved($appId);
```

### Analytics

[](#analytics)

```
use Carbon\Carbon;

$appId = 'seu-app-id';
$hoje = Carbon::now()->format('Y-m-d');
$semanaAtras = Carbon::now()->subWeek()->format('Y-m-d');

// Analytics de hoje
$today = GupshupPartner::analytics()->getTodayAnalytics($appId);

// Métricas resumidas
$metrics = GupshupPartner::analytics()->getSummaryMetrics(
    $appId,
    $semanaAtras,
    $hoje
);

// Resultado:
// [
//     'total_sent' => 1000,
//     'total_delivered' => 980,
//     'delivery_rate' => 98.0,
//     'read_rate' => 86.7,
//     'failure_rate' => 2.0
// ]
```

Para exemplos detalhados, consulte [EXEMPLOS\_DE\_USO.md](EXEMPLOS_DE_USO.md).

---

🏗️ Arquitetura
--------------

[](#️-arquitetura)

A biblioteca segue uma arquitetura modular e orientada a serviços:

```
GupshupPartnerClient (Cliente Principal)
    ├── AppManagement (Gerenciamento de Apps)
    ├── TemplateManagement (Templates)
    ├── MessageManagement (Mensagens)
    ├── AnalyticsManagement (Analytics)
    ├── WalletManagement (Carteira)
    └── FlowManagement (Flows)

```

Cada módulo é independente e pode ser usado separadamente ou através da Facade principal.

---

🔐 Autenticação e Cache
----------------------

[](#-autenticação-e-cache)

A biblioteca gerencia automaticamente:

- **Partner Token**: Obtido via login, cached por 23 horas
- **App Tokens**: Obtidos por app, cached por 23 horas
- **Refresh Automático**: Tokens são renovados automaticamente quando expiram

---

🛡️ Tratamento de Erros
----------------------

[](#️-tratamento-de-erros)

```
use GupshupPartner\Facades\GupshupPartner;
use GupshupPartner\Exceptions\GupshupPartnerException;

try {
    $result = GupshupPartner::apps()->list();
} catch (GupshupPartnerException $e) {
    // Erro específico da API
    Log::error('Gupshup Error', [
        'status' => $e->getStatusCode(),
        'message' => $e->getMessage(),
        'data' => $e->getResponseData()
    ]);
}
```

---

🧪 Testes
--------

[](#-testes)

```
// Teste de exemplo
public function test_pode_listar_apps()
{
    $client = new GupshupPartner\GupshupPartnerClient(
        'test@example.com',
        'password'
    );

    $apps = $client->apps()->list();

    $this->assertIsArray($apps);
    $this->assertArrayHasKey('partnerAppsList', $apps);
}
```

Para rodar os testes localmente:

```
composer install
composer test
```

Ou:

```
vendor/bin/phpunit
```

---

🤝 Contribuindo
--------------

[](#-contribuindo)

Contribuições são bem-vindas! Por favor:

1. Fork o projeto
2. Crie uma branch para sua feature (`git checkout -b feature/MinhaFeature`)
3. Commit suas mudanças (`git commit -m 'Adiciona MinhaFeature'`)
4. Push para a branch (`git push origin feature/MinhaFeature`)
5. Abra um Pull Request

---

📝 Changelog
-----------

[](#-changelog)

### v1.0.0 (2024)

[](#v100-2024)

- ✨ Versão inicial
- ✅ Suporte completo às APIs de Parceiro
- ✅ Cache automático de tokens
- ✅ Integração nativa com Laravel
- ✅ Documentação completa

---

📄 Licença
---------

[](#-licença)

Este projeto está licenciado sob a Licença MIT - veja o arquivo [LICENSE](LICENSE) para detalhes.

---

🆘 Suporte
---------

[](#-suporte)

- 🐛 **Issues**: [GitHub Issues](https://github.com/marcosendler/laravel-gupshup-partner/issues)
- 📖 **Documentação Gupshup**:
- 💬 **Discussões**: [GitHub Discussions](https://github.com/marcosendler/laravel-gupshup-partner/discussions)

---

🙏 Agradecimentos
----------------

[](#-agradecimentos)

- [Gupshup](https://www.gupshup.io/) pela excelente plataforma de WhatsApp Business
- Comunidade Laravel pelo framework incrível
- Todos os contribuidores do projeto

---

**Desenvolvido com ❤️ para a comunidade Laravel**

**Nota**: Esta é uma biblioteca não-oficial. Para suporte oficial, consulte a [documentação do Gupshup](https://partner-docs.gupshup.io/).

###  Health Score

35

—

LowBetter than 79% of packages

Maintenance70

Regular maintenance activity

Popularity4

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity51

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 87.5% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

174d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/2c5653ab766a344e5fffb9efc58142c2fba5d000c95f183ca99e3189bd035427?d=identicon)[marcosendler](/maintainers/marcosendler)

---

Top Contributors

[![marcosendler](https://avatars.githubusercontent.com/u/4483800?v=4)](https://github.com/marcosendler "marcosendler (14 commits)")[![Copilot](https://avatars.githubusercontent.com/in/1143301?v=4)](https://github.com/Copilot "Copilot (2 commits)")

---

Tags

laravelmessagingwhatsappwhatsapp-businessgupshupPartner-API

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/marcosendler-laravel-gupshup-partner/health.svg)

```
[![Health](https://phpackages.com/badges/marcosendler-laravel-gupshup-partner/health.svg)](https://phpackages.com/packages/marcosendler-laravel-gupshup-partner)
```

###  Alternatives

[vluzrmos/slack-api

Wrapper for Slack.com WEB API.

102589.1k3](/packages/vluzrmos-slack-api)[torchlight/torchlight-laravel

A Laravel Client for Torchlight, the syntax highlighting API.

120452.8k11](/packages/torchlight-torchlight-laravel)[simplestats-io/laravel-client

Client for SimpleStats!

4515.5k](/packages/simplestats-io-laravel-client)[aedart/athenaeum

Athenaeum is a mono repository; a collection of various PHP packages

245.2k](/packages/aedart-athenaeum)[scriptdevelop/whatsapp-manager

Paquete para manejo de WhatsApp Business API en Laravel

762.6k](/packages/scriptdevelop-whatsapp-manager)[crenspire/laravel-whatsapp

Laravel WhatsApp Business API package

133.0k](/packages/crenspire-laravel-whatsapp)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
