Sub-contas - Atualizar nome, taxa e plano
Visão Geral
Três coisas mudam numa sub-conta pela plataforma: o nome (só enquanto o cadastro não foi enviado), a taxa simples (alterar ou remover) e o plano de taxas (atribuir ou retirar). A mudança de taxa vale para as próximas cobranças; as já feitas não são recalculadas.
Renomear
PATCH /v1/marketplace/sub-accounts/{companyId}{ "name": "Loja da Maria Confecções" }| Atributo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
name | string | Não | O nome do vendedor (1–100 caracteres). Aceito só com o cadastro ainda não enviado (status: "pending" e sem kycSubmittedAt): depois disso o nome faz parte do registro em análise e do que o provedor recebeu, e a resposta é 422 subAccountNameLocked. Pode vir junto de platformFee no mesmo corpo |
O webhook seller.updated sai para o vendedor (e para a plataforma, com account).
Uma sub-conta usa uma forma de taxa: ao atribuir um plano, a taxa simples deixa de valer; ao definir uma taxa simples numa sub-conta com plano, o plano continua atribuído e prevalece — retire o plano primeiro (planId: null) se a intenção é voltar à taxa simples.
Alterar a taxa simples
PATCH /v1/marketplace/sub-accounts/{companyId}Corpo da Requisição
{ "platformFee": { "type": "flat", "value": 300 } }Para remover a taxa simples:
{ "platformFee": null }| Atributo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
platformFee | object | null | Sim | A nova taxa (type: percentage até 100, ou flat em centavos; value maior que 0), ou null para remover. Nenhum outro campo é aceito |
Resposta (200 OK)
O objeto da sub-conta atualizado (campos em Visão Geral).
Atribuir ou retirar um plano
PUT /v1/marketplace/sub-accounts/{companyId}/planCorpo da Requisição
{ "planId": "rate_01hqzvplan1" }Para retirar o plano (a sub-conta volta à taxa simples, se houver):
{ "planId": null }| Atributo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
planId | string | null | Sim | Um plano da sua plataforma (rate_…), ou null |
Resposta (200 OK)
{ "id": "bus_01hqzvsub1", "planId": "rate_01hqzvplan1" }Erros
| HTTP | error.code | Quando |
|---|---|---|
| 400 | invalidParameters | Corpo inválido (campo desconhecido, taxa fora da faixa) |
| 404 | subAccountNotFound | O companyId não é uma sub-conta da sua plataforma |
| 422 | subAccountNameLocked | name numa sub-conta cujo cadastro já foi enviado |
| 404 | planNotFound | O planId não é um plano da sua plataforma |
| 409 | accountLevelReadOnlyInSandbox | Escrita com chave de sandbox |
Exemplo
curl -X PUT "https://api.selectwin.io/v1/marketplace/sub-accounts/bus_01hqzvsub1/plan" \
-H "SelectKey: sk_live_aBcDeFgHiJkLmNoPqRsTuVwXyZ" \
-H "Content-Type: application/json" \
-d '{ "planId": "rate_01hqzvplan1" }'Atualizado em 21 de outubro de 2026