PHPackages                             mateusfbi/totvs-rm-soap-laravel - 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. [HTTP &amp; Networking](/categories/http)
4. /
5. mateusfbi/totvs-rm-soap-laravel

ActiveLibrary[HTTP &amp; Networking](/categories/http)

mateusfbi/totvs-rm-soap-laravel
===============================

Biblioteca de Conexão SOAP para integração com TOTVS RM usando Laravel

v2.0.4(3mo ago)222MITPHPPHP ^8.0

Since Jun 27Pushed 3mo ago1 watchersCompare

[ Source](https://github.com/mateusfbi/totvs-rm-soap-laravel)[ Packagist](https://packagist.org/packages/mateusfbi/totvs-rm-soap-laravel)[ RSS](/packages/mateusfbi-totvs-rm-soap-laravel/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (7)DependenciesVersions (10)Used By (0)

TotvsRmSoap
===========

[](#totvsrmsoap)

Este projeto é uma implementação em PHP para integração com o serviço SOAP da Totvs RM com o Framework Laravel.

Requisitos
----------

[](#requisitos)

- PHP 8.0 ou superior
- Framework Laravel
- Extensão SOAP,XML do PHP
- Composer

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

[](#instalação)

Instale as dependências via Composer: `composer install mateusfbi/totvs-rm-soap-laravel`

publicar o arquivo de configuração no diretório config `php artisan vendor:publish --tag=config`

Configuração
------------

[](#configuração)

1. Adicione e configure as variáveis de ambiente no arquivo `.env`.

- TOTVSRM\_WSURL=
- TOTVSRM\_USER=usuario
- TOTVSRM\_PASS=senha

2. Configurar URL por empresa (coligada) no arquivo `config/totvsrmsoap.php` (recomendado):

```
// config/totvsrmsoap.php
'companies' => [
    '01' => 'http://rm-empresa01:8051',
    '02' => 'http://rm-empresa02:8051',
],
```

Opcionalmente, é possível usar `.env` com a variável `TOTVSRM_COMPANIES` no formato:

TOTVSRM\_COMPANIES="01|[http://rm-empresa01:8051;02|http://rm-empresa02:8051](http://rm-empresa01:8051;02%7Chttp://rm-empresa02:8051)"

```

3. Configure o timeout da conexão (opcional):

No `.env`:

```

TOTVSRM\_CONNECTION\_TIMEOUT=1800 # tempo em segundos

```

Ou no arquivo `config/totvsrmsoap.php`:
```php
'connection_timeout' => env('TOTVSRM_CONNECTION_TIMEOUT', 1800),

```

Uso
---

[](#uso)

Para utilizar os serviços, você pode injetar as classes de serviço diretamente em seus controllers ou outros serviços, ou usar o helper `app()` do Laravel. O provedor de serviços se encarregará de instanciar as classes com suas dependências.

### Exemplo com Injeção de Dependência

[](#exemplo-com-injeção-de-dependência)

```
use Illuminate\Routing\Controller;
use mateusfbi\TotvsRmSoap\Services\DataServer;

class MeuController extends Controller
{
    public function buscarDados(DataServer $ds)
    {
        $ds->setDataServer("GlbColigadaDataBR");
        $ds->setContexto("CODSISTEMA=G;CODCOLIGADA=0;CODUSUARIO=mestre");
        $ds->setFiltro("1=1");
        $result = $ds->readView();

        if (array_key_exists('GColigada', $result)) {
            $result = $result['GColigada'];
        } else {
            $result = [];
        }

        dd($result);
    }
}
```

### Exemplo com o helper `app()`

[](#exemplo-com-o-helper-app)

Você também pode obter uma instância de um serviço usando os aliases registrados:

- `totvs.consulta_sql`
- `totvs.data_server`
- `totvs.formula_visual`
- `totvs.process`
- `totvs.report`

```
$ds = app('totvs.data_server');
$ds->setDataServer("GlbColigadaDataBR");
$ds->setContexto("CODSISTEMA=G;CODCOLIGADA=0;CODUSUARIO=mestre");
$ds->setFiltro("1=1");
$result = $ds->readView();

// ...
```

### Uso com URL por empresa

[](#uso-com-url-por-empresa)

Todos os serviços expõem `forCompany($codigo)` para selecionar a URL base a partir do mapeamento configurado. Ex.:

```
use mateusfbi\TotvsRmSoap\Facades\TotvsRM;

// Via Facade
$ds = TotvsRM::dataServer()->forCompany('01');
$ds->setDataServer('GlbColigadaDataBR');
$ds->setContexto('CODSISTEMA=G;CODCOLIGADA=1;CODUSUARIO=mestre');
$ds->setFiltro('1=1');
$result = $ds->readView();

// Via helper app()
$sql = app('totvs.consulta_sql')->forCompany('02');
$sql->setSentenca('SENTENCA_EXEMPLO');
$sql->setColigada(2);
$sql->setSistema('G');
$sql->setParametros(['P1' => 'VALOR']);
$res = $sql->RealizarConsultaSQL();
```

Licença
-------

[](#licença)

Este projeto está licenciado sob a licença MIT. Veja o arquivo [LICENSE](LICENSE) para mais detalhes.

###  Health Score

39

—

LowBetter than 86% of packages

Maintenance82

Actively maintained with recent releases

Popularity10

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity47

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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

Every ~31 days

Recently: every ~24 days

Total

8

Last Release

96d ago

Major Versions

v1.0.2 → v2.0.02025-10-30

### Community

Maintainers

![](https://www.gravatar.com/avatar/82e5634cc19375e31b11302f453df454a1918700fa4bf5d334776e223a0b7454?d=identicon)[mateusfbi](/maintainers/mateusfbi)

---

Top Contributors

[![mateusfbi](https://avatars.githubusercontent.com/u/1020237?v=4)](https://github.com/mateusfbi "mateusfbi (37 commits)")

---

Tags

laravelsoaprmtotvstotvs-rm

### Embed Badge

![Health badge](/badges/mateusfbi-totvs-rm-soap-laravel/health.svg)

```
[![Health](https://phpackages.com/badges/mateusfbi-totvs-rm-soap-laravel/health.svg)](https://phpackages.com/packages/mateusfbi-totvs-rm-soap-laravel)
```

###  Alternatives

[palanik/lumen-cors

Cross-origin resource sharing (CORS) middleware for Lumen micro-framework.

101237.4k](/packages/palanik-lumen-cors)[api-platform/laravel

API Platform support for Laravel

59126.4k6](/packages/api-platform-laravel)[laravel-shift/curl-converter

A command line tool to convert curl requests to Laravel HTTP requests.

935.3k](/packages/laravel-shift-curl-converter)[alfrasc/laravel-matomo-tracker

A Laravel facade/wrapper for the matomo/matomo-php-tracker for server side Matomo tracking.

1923.9k](/packages/alfrasc-laravel-matomo-tracker)[behamin/service-proxy

for proxy or sending requests to other services with useful utilities

102.2k](/packages/behamin-service-proxy)

PHPackages © 2026

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