PHPackages                             freeline/pdv - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. freeline/pdv

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

freeline/pdv
============

Pacote Laravel do Simples PDV para uso standalone ou integrado ao ERP Freeline.

0.2.1(4w ago)0193↓50%proprietaryPHP ^8.2

Since May 21Compare

[ Source](https://github.com/Freeline-Informatica/pdv)[ Packagist](https://packagist.org/packages/freeline/pdv)[ RSS](/packages/freeline-pdv/feed)WikiDiscussions Synced 3w ago

READMEChangelog (3)Dependencies (4)Versions (4)Used By (0)

Freeline PDV
============

[](#freeline-pdv)

Pacote Laravel do PDV Freeline para uso dentro do SimplesLaravel ou em uma instalacao standalone. O pacote registra rotas, views, assets, middlewares e migrations pelo `Freeline\Pdv\PdvServiceProvider`.

Requisitos
----------

[](#requisitos)

- PHP 8.2 ou superior.
- Laravel 12.
- `notagil/integration-sdk` na versao exigida pelo pacote.
- Acesso ao pacote Composer `freeline/pdv`.

Instalacao no SimplesLaravel
----------------------------

[](#instalacao-no-simpleslaravel)

No diretorio raiz do SimplesLaravel, instale ou atualize o pacote:

```
composer require freeline/pdv:^0.2.2 notagil/integration-sdk:0.3.2 -W
```

Se o Composer ainda nao conhecer o repositorio do pacote, registre o repositorio VCS antes do `require`:

```
composer config repositories.freeline-pdv vcs https://github.com/Freeline-Informatica/pdv
composer require freeline/pdv:^0.2.2 notagil/integration-sdk:0.3.2 -W
```

Depois limpe caches e confirme a descoberta do provider:

```
php artisan optimize:clear
php artisan package:discover
```

Configuracao para ERP
---------------------

[](#configuracao-para-erp)

Publique a configuracao:

```
php artisan vendor:publish --tag=pdv-config
```

No SimplesLaravel, o arquivo `config/pdv.php` deve manter o pacote em modo ERP e desabilitar as migrations standalone:

```
return [
    'mode' => env('PDV_MODE', 'erp'),
    'load_migrations' => true,
    'load_standalone_migrations' => false,
    'load_standalone_routes' => false,
    'web_session_auth' => true,
    'access_permission' => env('PDV_ACCESS_PERMISSION', 'pdv.acessar'),
    'web_middleware' => ['web', 'auth', 'verified', 'pdv.web.access'],

    'models' => [
        'user' => App\Models\User::class,
        'product' => App\Domain\Produtos\Models\Produto::class,
        'produto' => App\Domain\Produtos\Models\Produto::class,
        'estabelecimento' => App\Domain\Pessoas\Models\Estabelecimento::class,
    ],

    'adapters' => [
        'product_catalog' => App\Infrastructure\Pdv\Adapters\ErpProductCatalogRepository::class,
        'stock_movement' => App\Infrastructure\Pdv\Adapters\ErpStockMovementService::class,
        'operator' => App\Infrastructure\Pdv\Adapters\ErpOperatorResolver::class,
        'company_context' => App\Infrastructure\Pdv\Adapters\ErpCompanyContextResolver::class,
        'fiscal_config' => App\Infrastructure\Pdv\Adapters\ErpFiscalConfigProvider::class,
        'payment_methods' => App\Infrastructure\Pdv\Adapters\ErpPaymentMethodRepository::class,
    ],

    'vite_inputs' => [
        'resources/js/pdv/app.js',
    ],
];
```

Variaveis de ambiente usuais:

```
PDV_MODE=erp
PDV_LOAD_MIGRATIONS=true
PDV_LOAD_STANDALONE_MIGRATIONS=false
PDV_FRONTEND_PATH=pdv
PDV_API_PREFIX=api/pdv
PDV_ACCESS_PERMISSION=pdv.acessar
```

Assets e frontend
-----------------

[](#assets-e-frontend)

Publique os assets quando instalar ou atualizar o pacote:

```
php artisan vendor:publish --tag=pdv-assets --force
```

No SimplesLaravel, mantenha o entrypoint local apontando para o pacote:

```
// resources/js/pdv/app.js
import '../../../vendor/freeline/pdv/resources/app/js/app.js';
```

O `vite.config.ts` do SimplesLaravel precisa incluir `resources/js/pdv/app.js`nos inputs e liberar leitura de `vendor/freeline/pdv` no `server.fs.allow`durante desenvolvimento.

Depois compile:

```
npm install
npm run build
```

Migrations necessarias
----------------------

[](#migrations-necessarias)

O provider carrega migrations diretamente do pacote. Nao e necessario copiar arquivos para `database/migrations`.

### SimplesLaravel / ERP

[](#simpleslaravel--erp)

No ERP rode somente as migrations `core`. O proprio provider faz isso quando `PDV_MODE=erp` e `PDV_LOAD_STANDALONE_MIGRATIONS=false`.

Antes de aplicar em producao, revise o plano:

```
php artisan migrate --pretend
```

Execute:

```
php artisan migrate --force
```

Se precisar rodar explicitamente apenas as migrations core do pacote:

```
php artisan migrate --path=vendor/freeline/pdv/database/migrations/core --force
```

Nao rode `database/migrations/standalone` no SimplesLaravel. Essas migrations criam tabelas base que o ERP ja possui ou resolve por adapters.

### Standalone

[](#standalone)

Em uma instalacao standalone, deixe o modo padrao ou configure:

```
PDV_MODE=standalone
PDV_LOAD_STANDALONE_MIGRATIONS=true
```

Depois rode:

```
php artisan migrate --force
```

Nesse modo o provider carrega `database/migrations/core` e `database/migrations/standalone`.

Rotas
-----

[](#rotas)

Por padrao:

- Frontend: `/pdv`
- API: `/api/pdv`

Esses prefixos podem ser alterados por:

```
PDV_FRONTEND_PATH=pdv
PDV_API_PREFIX=api/pdv
```

Atualizacao do pacote
---------------------

[](#atualizacao-do-pacote)

Para atualizar o pacote no SimplesLaravel:

```
composer update freeline/pdv notagil/integration-sdk -W
php artisan optimize:clear
php artisan vendor:publish --tag=pdv-assets --force
php artisan migrate --force
npm run build
```

Use `php artisan migrate --pretend` antes do `migrate --force` quando estiver validando uma atualizacao em ambiente critico.

###  Health Score

40

—

FairBetter than 86% of packages

Maintenance94

Actively maintained with recent releases

Popularity15

Limited adoption so far

Community2

Small or concentrated contributor base

Maturity38

Early-stage or recently created project

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 ~17 days

Total

3

Last Release

29d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/299b8502a3c252fd7733814f2219701cb8b38d15519fabb338ee47e6564c48a0?d=identicon)[sabbajohn](/maintainers/sabbajohn)

### Embed Badge

![Health badge](/badges/freeline-pdv/health.svg)

```
[![Health](https://phpackages.com/badges/freeline-pdv/health.svg)](https://phpackages.com/packages/freeline-pdv)
```

###  Alternatives

[markwalet/nova-modal-response

A Laravel Nova asset for Modal responses on an action.

17878.9k](/packages/markwalet-nova-modal-response)[crumbls/layup

A visual page builder plugin for Filament 5 — Divi-style grid layouts with extensible widgets.

592.8k2](/packages/crumbls-layup)[duncanmcclean/statamic-cargo

Comprehensive e-commerce addon for Statamic. Build bespoke e-commerce sites without the complexity.

3518.3k](/packages/duncanmcclean-statamic-cargo)[tomshaw/electricgrid

A feature-rich Livewire package designed for projects that require dynamic, interactive data tables.

119.4k](/packages/tomshaw-electricgrid)

PHPackages © 2026

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