Planos para sellers
Lista os planos de assinatura que um novo seller pode contratar.
Uma rota única e pública para a página de cadastro de sellers. A contratação do plano acontece no cadastro do seller, que não faz parte desta seção.
Em um marketplace, os sellers (lojistas) pagam à plataforma por um plano: mensalidade, comissão sobre vendas e limites. Esta rota lista os planos ativos, para montar a página "Seja um vendedor". É pública.
/api/v1/storefront/vendor-plansPúblicaPlanos de assinatura que um seller pode contratar
Parâmetros de consulta
lang_codestringpadrão: pt-BRIdioma do nome e da descrição dos planos (
pt-BR, en...).Exemplo de requisição
bash
curl "$BASE_URL/api/v1/storefront/vendor-plans?lang_code=pt-BR"Resposta
200Planos
json
{
"plans": [
{
"id": 6,
"status": "A",
"position": 0,
"is_default": false,
"price_cents": 7770,
"periodicity": "month",
"commission_bps": 1000,
"fixed_commission_cents": 0,
"products_limit": 0,
"revenue_limit_cents": 1234567,
"vendor_store": false,
"categories": "",
"include_shipping": false,
"include_taxes": false,
"price_on_request": false,
"ministore_enabled": false,
"ministore_whatsapp_payment": false,
"ministore_pix_auto": false,
"ministore_orders_included": 0,
"ministore_excess_per_order_cents": 0,
"ministore_excess_percentage_bps": 0,
"created_at": "2026-07-11T18:37:36Z",
"updated_at": "2026-07-20T14:55:59Z",
"descriptions": [
{
"plan_id": 6,
"lang_code": "pt-BR",
"name": "Plano Essencial",
"description": "Para começar a vender."
}
],
"vendors_count": 0
}
],
"total": 1
}Campos da resposta
totalintegerQuantidade de planos.
plansarrayPlanos ativos, por posição.
idintegerId numérico do plano.
statusstringSempre
A (ativo) aqui.positionintegerOrdem de exibição.
is_defaultbooleanPlano pré-selecionado no cadastro.
price_centsintegerPreço por período, em centavos.
periodicitystringmonthyearonetimePeriodicidade do preço.
commission_bpsintegerComissão sobre as vendas, em pontos-base (
1000 = 10%).fixed_commission_centsintegerComissão fixa por pedido, em centavos.
products_limitintegerMáximo de produtos.
0 = ilimitado.revenue_limit_centsintegerTeto de faturamento, em centavos.
0 = ilimitado.vendor_storebooleanO seller pode ter página de loja própria.
categoriesstringIds de categorias permitidas, separados por vírgula. Vazio = todas.
include_shipping, include_taxesbooleanSe frete e impostos entram na base de cálculo da comissão.
price_on_requestbooleanPlano "sob consulta": não exiba
price_cents.ministore_*mixedRecursos da mini-loja do seller (venda por WhatsApp):
ministore_enabled, ministore_whatsapp_payment, ministore_pix_auto, ministore_search_*, ministore_dashboard_*, ministore_cart_recovery, ministore_crm, ministore_human_transfer, ministore_integrations (booleanos), ministore_orders_included (0 = ilimitado), ministore_excess_per_order_cents e ministore_excess_percentage_bps (excedente por pedido, em centavos e em pontos-base).descriptionsarrayNome e descrição no idioma pedido (
plan_id, lang_code, name, description). null se o plano não tem texto nesse idioma.vendors_countintegerNão é preenchido nesta rota (vem
0). Ignore.created_at, updated_atstringDatas (RFC 3339).
Erros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 500 | Falha ao ler os planos. | {"error":"failed to list plans","detail":"..."} |