Responses are generated using AI and may contain mistakes.
Nova release: Tokenization SDK 5.0.0 — O Tokenization SDK 5.0.0 ganha o método destroy() para desmontar uma instância, recusa containers já usados por outra instância e valida os campos antes de tokenizar. Ver release notes
{
"sellerId": "27ae4860-55ac-4e48-a417-1038dbdf1049",
"rules": [
{
"id": "88ccd2aa-c3cb-4ff6-bca7-3bc3812da801",
"percentage": 0,
"fixedAmount": 0,
"paymentMethod": "pix",
"createdAt": "2026-09-29T14:49:54.612Z",
"updatedAt": "2026-09-29T14:49:54.612Z"
},
{
"id": "7f28ac5a-05d5-4a40-997d-2f172702a369",
"percentage": 1.99,
"fixedAmount": 0,
"paymentMethod": "credit",
"installment": 1,
"createdAt": "2026-09-29T14:49:54.612Z",
"updatedAt": "2026-09-29T14:49:54.612Z"
},
{
"id": "2d0d8935-6b77-4fef-8ec9-625986f38ab4",
"percentage": 2.49,
"fixedAmount": 0,
"paymentMethod": "credit",
"installment": 2,
"createdAt": "2026-09-29T14:49:54.612Z",
"updatedAt": "2026-09-29T14:49:54.612Z"
}
],
"warnings": [
"assinaturas aceitam split só em percentual, e com a taxa desta subconta ligada, uma assinatura com split por valor que inclua este seller tem as cobranças recusadas com platform_fee_requires_percentage_split quando a regra própria dele vale para o método e a parcela da cobrança"
]
}
Platform Fee
Criar regras de platform fee de um seller
Cria regras de platform fee próprias de um seller dentro da subconta. A regra do seller substitui a regra da subconta para ele, método a método e só nas parcelas que ela cobre. O que a regra do seller não cobre segue a regra da subconta.
O corpo aceita as mesmas formas do POST /v1/merchants/{merchantId}/platform-fee: regra avulsa, installmentRates, installments e fórmula, em array ou em objeto com a lista em rules. As diferenças para a regra da subconta:
No crédito, a regra do seller aceita só percentual por parcela. Qualquer fixedAmount diferente de 0, em qualquer forma do corpo, recusa a requisição com 400. Em pix e boleto, o seller aceita percentual, valor fixo ou os dois.
Como na subconta, paymentMethod: default é recusado com 400 e PLATFORM_FEE_DEFAULT_RULE_DISCONTINUED, e o corpo aceita até 50 objetos de regra.
O seller precisa estar cadastrado nesta subconta. Seller de outro cliente, de outra subconta ou sem subconta responde 404 com PLATFORM_FEE_SELLER_NOT_FOUND, com o mesmo corpo nos três casos.
Para isentar o seller num método, envie percentage: 0 e fixedAmount: 0 na mesma regra. Para ele voltar a seguir a regra da subconta, apague a regra dele com DELETE /v1/merchants/{merchantId}/platform-fee/{platformFeeId}.
A resposta traz as regras gravadas e um aviso fixo em warnings sobre assinaturas com split por valor.
{
"sellerId": "27ae4860-55ac-4e48-a417-1038dbdf1049",
"rules": [
{
"id": "88ccd2aa-c3cb-4ff6-bca7-3bc3812da801",
"percentage": 0,
"fixedAmount": 0,
"paymentMethod": "pix",
"createdAt": "2026-09-29T14:49:54.612Z",
"updatedAt": "2026-09-29T14:49:54.612Z"
},
{
"id": "7f28ac5a-05d5-4a40-997d-2f172702a369",
"percentage": 1.99,
"fixedAmount": 0,
"paymentMethod": "credit",
"installment": 1,
"createdAt": "2026-09-29T14:49:54.612Z",
"updatedAt": "2026-09-29T14:49:54.612Z"
},
{
"id": "2d0d8935-6b77-4fef-8ec9-625986f38ab4",
"percentage": 2.49,
"fixedAmount": 0,
"paymentMethod": "credit",
"installment": 2,
"createdAt": "2026-09-29T14:49:54.612Z",
"updatedAt": "2026-09-29T14:49:54.612Z"
}
],
"warnings": [
"assinaturas aceitam split só em percentual, e com a taxa desta subconta ligada, uma assinatura com split por valor que inclua este seller tem as cobranças recusadas com platform_fee_requires_percentage_split quando a regra própria dele vale para o método e a parcela da cobrança"
]
}
Identificador do seller, cadastrado nesta subconta
Body
application/json
Array de regras · object[]
Objeto com rules · object
Uma regra de platform fee.
Em pix e boleto, informe percentage, fixedAmount ou os dois.
Em credit, use uma destas formas, sem combinar formas no mesmo objeto:
Regra avulsa: installment com percentage e/ou fixedAmount.
Tabela curta: installmentRates.
Tabela longa: installments.
Fórmula: maxInstallments e base, com growth, surcharges, overrides e cap opcionais.
Nas três formas de tabela e fórmula, a regra aceita só as chaves da forma escolhida mais paymentMethod. Uma chave desconhecida, como capp no lugar de cap, recusa a configuração inteira com 400, em vez de ser ignorada.
Na fórmula, o percentual e o valor fixo de cada parcela n, de 1 até maxInstallments, são calculados nesta ordem:
Parte de base.percentage e base.fixedAmount.
Aplica growth quando n é maior ou igual a growth.from.
Soma as surcharges com fromInstallment menor ou igual a n.
Limita ao cap.
Substitui pelo overrides da parcela, quando houver.
Arredonda o percentual para 2 casas decimais, com meio para cima.
Se alguma parcela calculada passar de 100%, a configuração inteira é recusada.
Método de pagamento ao qual a regra se aplica. A regra genérica default foi descontinuada: paymentMethod: default é recusado com 400 e PLATFORM_FEE_DEFAULT_RULE_DISCONTINUED.
Percentual da taxa (0-100) com até 2 casas decimais. Ao menos um entre percentage e fixedAmount deve ser informado. Não pode ser combinado com installmentRates, installments ou fórmula.
Valor fixo da taxa em centavos, de 0 a 2147483647. Ao menos um entre percentage e fixedAmount deve ser informado. Não pode ser combinado com installmentRates, installments ou fórmula.
Número exato de parcelas ao qual a regra se aplica, de 1 a 24. Obrigatório na regra avulsa de credit; proibido nos demais métodos. Cada parcela tem a própria regra: installment: 3 vale só para vendas em 3x, e 2x e 3x podem ter taxas diferentes.
Somente credit. Tabela curta: lista de percentuais em que a posição é o número de parcelas. O primeiro item vale para 1x, o segundo para 2x, e assim por diante. Cada item vai de 0 a 100, com até 2 casas decimais. Grava uma regra por parcela, só com percentual: as parcelas gravadas por esta lista ficam sem valor fixo. Para valor fixo por parcela, use installments.
Somente credit. Tabela longa: uma entrada por parcela, com percentual, valor fixo ou os dois. Aceita parcelas salteadas, e cada parcela pode aparecer uma vez só. Cada entrada aceita apenas installment, percentage e fixedAmount: qualquer outra chave, inclusive uma dessas com grafia diferente, recusa a requisição com 400.
Somente credit, na fórmula. Teto do percentual e do valor fixo calculados. A parcela que passa do teto fica com o valor do teto. cap.percentage é obrigatório quando growth.mode é exponential.
Show child attributes
Response
Regras criadas com sucesso. A resposta traz as regras como ficaram gravadas, com uma regra por parcela no crédito.
Regras de um seller como ficaram gravadas, na resposta do POST e do PUT da rota de seller
Avisos fixos, em português, sobre o que uma regra de seller muda em outros fluxos. Hoje, o aviso sobre assinaturas com split por valor.
Was this page helpful?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Malga","description":"Documentação da Malga: API REST, SDKs, métodos de pagamento, provedores e referência OpenAPI para orquestração de pagamentos.","colors":{"primary":"#2FAC9B","light":"#39BFAD","dark":"#257C70"},"logo":{"light":"https://mintcdn.com/malga/vYWnjE_PEfqgCqeH/logo/light.svg?fit=max\u0026auto=format\u0026n=vYWnjE_PEfqgCqeH\u0026q=85\u0026s=60c63b525307d9a355741f58c18f3420","dark":"https://mintcdn.com/malga/Hsm6lJPRMWAJPkG-/logo/wordmark-white.svg?fit=max\u0026auto=format\u0026n=Hsm6lJPRMWAJPkG-\u0026q=85\u0026s=ea50ce46c10489c67470715f235e1bf0","href":"https://docs.malga.io"},"favicon":"https://mintcdn.com/malga/vYWnjE_PEfqgCqeH/logo/malga.svg?fit=max\u0026auto=format\u0026n=vYWnjE_PEfqgCqeH\u0026q=85\u0026s=d532b4d127383a206703b91b519fd67a","api":{"openapi":["api-reference/api-spec.yaml"],"playground":{"display":"interactive"},"examples":{"languages":["curl","javascript","go"],"prefill":true}},"navbar":{"primary":{"type":"button","label":"Quero testar","href":"https://malga.io/contato"}},"footer":{"socials":{"youtube":"https://www.youtube.com/@gomalga","linkedin":"https://www.linkedin.com/company/gomalga","instagram":"https://www.instagram.com/gomalga"},"links":[{"header":"Produto","items":[{"label":"Dashboard","href":"https://dashboard.malga.io/"},{"label":"Status","href":"https://status.malga.io/"}]},{"header":"Documentação","items":[{"label":"Introdução","href":"/documentations/welcome/introduction"},{"label":"Primeiros passos","href":"/documentations/welcome/primeiros-passos"},{"label":"Referência da API","href":"/api-reference/about-apis"},{"label":"SDKs","href":"/sdks/intro-sdk"},{"label":"Release Notes","href":"/release-notes/releases"}]},{"header":"Empresa","items":[{"label":"Site Malga","href":"https://malga.io"},{"label":"Contato","href":"https://malga.io/contato"}]}]},"search":{"prompt":"Pesquise ou pergunte algo..."},"seo":{"metatags":{"og:site_name":"Malga Docs","og:locale":"pt_BR"},"organization":{"name":"Malga","url":"https://malga.io","logo":"https://docs.malga.io/logo/light.svg","sameAs":["https://www.youtube.com/@gomalga","https://www.linkedin.com/company/gomalga/","https://www.instagram.com/gomalga"]},"indexing":"navigable"},"fonts":{"family":"Inter"},"integrations":{"amplitude":{"apiKey":"f26848c73ccd2e9606c95dac0cf0e765"},"ga4":{"measurementId":"G-RBZL7T96QN"},"hotjar":{"hjid":"2305294","hjsv":"6"}},"banner":{"content":"Nova release: **Tokenization SDK 5.0.0** — O Tokenization SDK 5.0.0 ganha o método destroy() para desmontar uma instância, recusa containers já usados por outra instância e valida os campos antes de tokenizar. [Ver release notes](/release-notes/2026-10-28-Release-Notes)","dismissible":true},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"thumbnails":{"appearance":"dark","background":"https://mintcdn.com/malga/Hsm6lJPRMWAJPkG-/images/og-background.png?fit=max\u0026auto=format\u0026n=Hsm6lJPRMWAJPkG-\u0026q=85\u0026s=0acfaa17c5dd44e8c7d07b15292eed66","fonts":{"family":"Inter"}},"markdown":{"instructions":["Responda em português brasileiro, na segunda pessoa (\"você\"), com base na documentação Malga.","Não invente endpoints, parâmetros, status codes ou comportamentos de API. Se não estiver na docs, diga que não encontrou e indique a página mais próxima.","Use os headers X-Client-Id e X-Api-Key nos exemplos de autenticação.","Motor de Assinaturas refere-se a /v1/subscriptions* (cycles, trial, retentativas, webhooks subscription.*). Não chame de \"motor de recorrência\".","Recorrência (provedor) é paymentMethod.recurrence em POST /v1/charges (initial / subsequent / unscheduled), distinto do Motor de Assinaturas.","Sandbox é ambiente de testes e não afeta produção."]},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"Dashboard","icon":"table-layout","href":"https://dashboard.malga.io/"},{"anchor":"YouTube","icon":"youtube","href":"https://www.youtube.com/@gomalga"},{"anchor":"Status Page","icon":"signal-strong","href":"https://status.malga.io/"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"malga","hasAudioNarration":false,"actualSubdomain":"malga","customDomains":["docs.malga.io"],"gitSource":{"type":"github","owner":"plughacker","repo":"malga-docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae0c09c4d9226ccd8884395","collectionId":"1b1a4115-682b-42cb-8cbf-9ecca38c6f90","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae0c09c4d9226ccd8884395"},"feedback":{"thumbs":true,"agentFeedback":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"REMOVE_BRANDING":{"status":"DISABLED"},"CONTEXTUAL_FEEDBACK":{"status":"DISABLED"},"CODE_SNIPPET_FEEDBACK":{"status":"DISABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae0c09c4d9226ccd8884395","clientVersion":"0.0.4006","searchFilterCounts":[{"language":"default","tag":"Documentação","count":183},{"language":"default","tag":"Release Notes","count":174},{"language":"default","tag":"Referência da API","count":105},{"language":"default","tag":"SDKs","count":66},{"language":"default","tag":"Conexões","count":49},{"language":"default","tag":"Guias","count":47},{"language":"default","tag":"API SDKs","count":46},{"language":"default","tag":"Analytics","count":39},{"language":"default","tag":"Analytics API","count":39},{"language":"default","tag":"Serviços adicionais","count":38}]},"assistantConfig":{"enableStarterQuestions":false},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"styles.css","content":".card a:not(.card){border-bottom:1.5px solid #c3f4ef;font-weight:600}.card a:not(.card):hover{border-bottom:2px solid #c3f4ef}html:not(.dark) .card a:not(.card){color:var(--tw-prose-links);min-width:1em!important}:root{--malgreen-200:#BAE7C9;--malgreen-300:#38BFAD;--malgreen-400:#2FAC9B;--malblack-100:#666666;--malblack-200:#4D4D4D;--malblack-300:#333333;--malblack-400:#1A1A1A;--malwhite-100:#FFFFFF;--malwhite-200:#F9F9F9;--malwhite-300:#F1F1F1;--malwhite-500:#CBCBCB;--malred-200:#FFA4B3;--malinfo-100:#E1EEF4;--malinfo-300:#3C8DDD;--malinfo-400:#1e61b6;--malsuccess-100:#e4f2e8;--malsuccess-200:#bae7c9;--malsuccess-300:#00ae42;--malsuccess-400:#009033;--malsuccess-500:#00601B;--malwarning-100:#FFF8E6;--malwarning-200:#F9DF8D;--malwarning-300:#FFA400;--malwarning-400:#F0941A;--malwarning-500:#D47129;--malerror-100:#ffd2dc;--post-bg:#3C8DDD;--get-bg:#009033;--patch-bg:#F0941B;--delete-bg:#D12E2d}html:not(.dark) .text-gray-700,html:not(.dark) .text-gray-800,html:not(.dark) .text-gray-900{color:var(--malblack-400)}.text-primary{color:var(--malgreen-400)}.prose :where(h1, h2, h3, h4, h5, h6):not(:where([class~=not-prose] *)){color:var(--malblack-400)}.prose :where(h1, h2, h3, h4, h5, h6):where([class=dark] *):not(:where([class~=not-prose] *)){color:var(--malwhite-200)}.prose :where(thead th):not(:where([class~=not-prose] *)){color:var(--malblack-100)}:is(.dark .prose :where(thead th):not(:where([class~=not-prose] *))){color:var(--malwhite-500)}:is(.dark .prose :is(h1, h2, h3, h4, h5, h6)){color:var(--malwhite-200)}html:not(.dark) .text-gray-600{color:var(--malblack-200)}html:not(.dark) .text-gray-500{color:var(--malblack-100)}.text-gray-200{color:var(--malwhite-200)}.text-gray-400{color:var(--malwhite-500)}.z-10{color:var(--malgreen-300)}#navbar .text-gray-600,#sidebar li .text-gray-600,#sidebar li .text-gray-700,.card .text-gray-600,.prose{color:var(--malblack-100)}:is(.dark .prose){color:var(--malwhite-500)}:is(.dark .dark\\:text-gray-200){color:var(--malwhite-200)}:is(.dark .dark\\:text-gray-400){color:var(--malwhite-500)}:is(.dark .dark\\:text-primary-light){--tw-text-opacity:1;color:var(--malgreen-300)}:is(.dark #topbar-cta-button .dark\\:bg-primary-light\\/10){background-color:var(--malgreen-400)}#sidebar li .bg-primary\\/10{background-color:rgba(47,172,155,.1);color:var(--malgreen-400)}:is(.dark #sidebar li .text-gray-600){color:var(--malwhite-500)!important}:is(.dark #sidebar .dark\\:text-gray-200){color:var(--malwhite-300)}:is(.dark #navbar .dark\\:text-gray-400),:is(.dark #sidebar li .text-gray-700){color:var(--malwhite-500)!important}:is(.dark #navbar .dark\\:text-primary-light){color:var(--malwhite-100)}:is(.dark #table-of-contents .text-primary){color:var(--malgreen-400)}:is(.dark .card .dark\\:text-gray-400){color:var(--malwhite-500)}:is(.dark .card h2){color:var(--malwhite-200)}.method-nav-pill,.method-nav-pill>span{display:inline-flex;align-items:center;justify-content:center}.method-nav-pill{width:2.5rem;flex-shrink:0}.method-nav-pill>span{width:100%;box-sizing:border-box;text-align:center}.bg-\\[\\#3064E3\\]{background-color:var(--malinfo-400);color:var(--malwhite-100)}:is(.dark .bg-\\[\\#3064E3\\]){background-color:var(--malinfo-300)}.text-white{color:var(--malwhite-100)}:is(.dark .dark\\:bg-blue-400\\/20){color:var(--malinfo-300)}html:not(.dark) .bg-blue-400\\/20{background-color:var(--malinfo-100);color:var(--malinfo-400)}html:not(.dark) .bg-green-400\\/20{background-color:var(--malsuccess-100);color:var(--get-bg)}:is(.dark .dark\\:text-green-400){color:var(--malsuccess-300)}html:not(.dark) .bg-orange-400\\/20{background-color:var(--malwarning-100);color:var(--patch-bg)}:is(.dark .dark\\:text-orange-400){color:var(--malwarning-300)}html:not(.dark) .bg-red-400\\/20{background-color:var(--malerror-100);color:var(--delete-bg)}:is(.dark .dark\\:text-red-400){color:var(--malred-200)}:is(.dark .dark\\:bg-primary-light){background-color:var(--malgreen-400)}.stroke-gray-400{stroke:var(--malgreen-400)}:is(.dark .dark\\:text-emerald-200),:is(.dark svg.text-emerald-600){color:var(--malsuccess-200)}:is(.dark .dark\\:text-amber-200){color:var(--malwarning-200)}:is(.dark svg.text-amber-400){stroke:var(--malwarning-300)}.malga-icon-box .malga-icon[id=amex],.malga-icon-box .malga-icon[id=dinners],.malga-icon-box .malga-icon[id=discover],.malga-icon-box .malga-icon[id=elo],.malga-icon-box .malga-icon[id=jcb],.malga-icon-box .malga-icon[id=master],.malga-icon-box .malga-icon[id=sodexo],.malga-icon-box .malga-icon[id=visa],.malga-icon-box .malga-icon[id=vr]{width:55px!important;height:55px!important}.prose tbody tr:nth-child(odd){background-color:var(--malwhite-200)}:is(.dark .prose tbody tr:nth-child(odd)){background-color:var(--malblack-400)}td:is(:first-child){padding-left:8px}td:is(:last-child){padding-right:8px}td{vertical-align:middle!important}td[align=center],td[align=left],td[align=right]{text-align:center;vertical-align:middle!important}td[align=left],td[align=right]{text-align:left}td[align=right]{text-align:right}td>span{height:36px!important}th{white-space:nowrap}:is(.dark .prose :where(.malga-check-badge):not(:where([class~=not-prose] *))){background-color:var(--malblack-300)}.malga-check-badge{height:fit-content;white-space:nowrap}.check-icon>p{margin:0!important}.table-legend>p{font-size:12px;margin:0}.mx-1{margin:0 1em}.prose :where(img.table-flow-view){margin-top:0;margin-bottom:0;margin-inline:auto}.providers-matrix{--providers-matrix-sticky-bg:rgb(var(--background-light, 255 255 255));--providers-matrix-fade:rgb(var(--background-light, 255 255 255));--providers-matrix-sticky-shadow:rgb(0 0 0 / 0.06);margin-bottom:1.5rem;max-width:100%;min-width:0;box-sizing:border-box}:is(.dark .providers-matrix){--providers-matrix-sticky-bg:rgb(var(--background-dark, 10 13 14));--providers-matrix-fade:rgb(var(--background-dark, 10 13 14));--providers-matrix-sticky-shadow:rgb(0 0 0 / 0.45)}.providers-matrix-top-scroll{position:sticky;top:7.5rem;z-index:5;overflow-x:auto;overflow-y:hidden;width:100%;max-width:100%;min-width:0;box-sizing:border-box;margin-top:.25rem;margin-bottom:1rem;min-height:12px;background:0 0;border:0;border-radius:0;scrollbar-width:thin;scrollbar-color:var(--malblack-100) transparent}.providers-matrix-top-scroll[data-overflow-x=false]{display:none}:is(.dark .providers-matrix-top-scroll){scrollbar-color:var(--malblack-100) transparent}.providers-matrix-top-scroll-inner{height:1px;pointer-events:none}.providers-matrix-viewport{position:relative;width:100%;max-width:100%;min-width:0}.providers-matrix-viewport::after{content:\"\";position:absolute;top:0;bottom:8px;right:0;width:1.25rem;z-index:4;pointer-events:none;opacity:0;transition:opacity 120ms ease;background:linear-gradient(to left,var(--providers-matrix-fade),transparent)}.providers-matrix-viewport[data-overflow-right=true]::after{opacity:1}.providers-matrix-scroll{overflow-x:auto;overflow-y:hidden;width:100%;max-width:100%;min-width:0;box-sizing:border-box;border:0;border-radius:0;background:0 0;scrollbar-width:thin;scrollbar-color:var(--malblack-100) transparent}.providers-matrix-scroll::-webkit-scrollbar,.providers-matrix-top-scroll::-webkit-scrollbar{height:8px}.providers-matrix-scroll::-webkit-scrollbar-track,.providers-matrix-top-scroll::-webkit-scrollbar-track{background:0 0}.providers-matrix-scroll::-webkit-scrollbar-thumb,.providers-matrix-top-scroll::-webkit-scrollbar-thumb{background:var(--malblack-100);border-radius:999px}.providers-matrix-scroll::-webkit-scrollbar-thumb:hover,.providers-matrix-top-scroll::-webkit-scrollbar-thumb:hover{background:var(--malgreen-300)}.providers-matrix-scroll table{margin-top:0!important;margin-bottom:0!important;width:max-content!important;min-width:0!important;max-width:none!important;background:0 0;display:table!important;overflow:visible!important}.providers-matrix-scroll td,.providers-matrix-scroll th{min-width:0!important}.providers-matrix-scroll[data-overflow-x=true]{overflow-x:scroll}.providers-matrix-scroll td:first-child,.providers-matrix-scroll th:first-child{position:sticky;left:0;z-index:2;min-width:11rem!important;background-color:var(--providers-matrix-sticky-bg);box-shadow:4px 0 8px -6px var(--providers-matrix-sticky-shadow)}.providers-matrix-scroll tbody tr:nth-child(odd) td:first-child{background-color:var(--malwhite-200)}:is(.dark .providers-matrix-scroll tbody tr:nth-child(odd) td:first-child){background-color:var(--malblack-400)}.providers-matrix-scroll thead th:first-child{z-index:3}"}],"page":{"pagePath":"api-reference/merchants/criar-regras-de-platform-fee-do-seller","slug":"/api-reference/merchants/criar-regras-de-platform-fee-do-seller","pageMetadata":{"openapi":"post /v1/merchants/{merchantId}/sellers/{sellerId}/platform-fee","title":"Criar regras de platform fee de um seller","description":"Cria regras de platform fee próprias de um seller dentro da subconta. A regra do seller substitui a regra da subconta para ele, método a método e só nas parcelas que ela cobre. O que a regra do seller não cobre segue a regra da subconta.\n\nO corpo aceita as mesmas formas do `POST /v1/merchants/{merchantId}/platform-fee`: regra avulsa, `installmentRates`, `installments` e fórmula, em array ou em objeto com a lista em `rules`. As diferenças para a regra da subconta:\n\n- No crédito, a regra do seller aceita só percentual por parcela. Qualquer `fixedAmount` diferente de 0, em qualquer forma do corpo, recusa a requisição com `400`. Em `pix` e `boleto`, o seller aceita percentual, valor fixo ou os dois.\n\nComo na subconta, `paymentMethod: default` é recusado com `400` e `PLATFORM_FEE_DEFAULT_RULE_DISCONTINUED`, e o corpo aceita até 50 objetos de regra.\n\nO seller precisa estar cadastrado nesta subconta. Seller de outro cliente, de outra subconta ou sem subconta responde `404` com `PLATFORM_FEE_SELLER_NOT_FOUND`, com o mesmo corpo nos três casos.\n\nPara isentar o seller num método, envie `percentage: 0` e `fixedAmount: 0` na mesma regra. Para ele voltar a seguir a regra da subconta, apague a regra dele com `DELETE /v1/merchants/{merchantId}/platform-fee/{platformFeeId}`.\n\nA resposta traz as regras gravadas e um aviso fixo em `warnings` sobre assinaturas com split por valor.\n","href":"/api-reference/merchants/criar-regras-de-platform-fee-do-seller"},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n li: \"li\",\n p: \"p\",\n ul: \"ul\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsx(_components.p, {\n children: \"Cria regras de platform fee próprias de um seller dentro da subconta. A regra do seller substitui a regra da subconta para ele, método a método e só nas parcelas que ela cobre. O que a regra do seller não cobre segue a regra da subconta.\"\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"O corpo aceita as mesmas formas do \", _jsx(_components.code, {\n children: \"POST /v1/merchants/{merchantId}/platform-fee\"\n }), \": regra avulsa, \", _jsx(_components.code, {\n children: \"installmentRates\"\n }), \", \", _jsx(_components.code, {\n children: \"installments\"\n }), \" e fórmula, em array ou em objeto com a lista em \", _jsx(_components.code, {\n children: \"rules\"\n }), \". As diferenças para a regra da subconta:\"]\n }), \"\\n\", _jsxs(_components.ul, {\n children: [\"\\n\", _jsxs(_components.li, {\n children: [\"No crédito, a regra do seller aceita só percentual por parcela. Qualquer \", _jsx(_components.code, {\n children: \"fixedAmount\"\n }), \" diferente de 0, em qualquer forma do corpo, recusa a requisição com \", _jsx(_components.code, {\n children: \"400\"\n }), \". Em \", _jsx(_components.code, {\n children: \"pix\"\n }), \" e \", _jsx(_components.code, {\n children: \"boleto\"\n }), \", o seller aceita percentual, valor fixo ou os dois.\"]\n }), \"\\n\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Como na subconta, \", _jsx(_components.code, {\n children: \"paymentMethod: default\"\n }), \" é recusado com \", _jsx(_components.code, {\n children: \"400\"\n }), \" e \", _jsx(_components.code, {\n children: \"PLATFORM_FEE_DEFAULT_RULE_DISCONTINUED\"\n }), \", e o corpo aceita até 50 objetos de regra.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"O seller precisa estar cadastrado nesta subconta. Seller de outro cliente, de outra subconta ou sem subconta responde \", _jsx(_components.code, {\n children: \"404\"\n }), \" com \", _jsx(_components.code, {\n children: \"PLATFORM_FEE_SELLER_NOT_FOUND\"\n }), \", com o mesmo corpo nos três casos.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Para isentar o seller num método, envie \", _jsx(_components.code, {\n children: \"percentage: 0\"\n }), \" e \", _jsx(_components.code, {\n children: \"fixedAmount: 0\"\n }), \" na mesma regra. Para ele voltar a seguir a regra da subconta, apague a regra dele com \", _jsx(_components.code, {\n children: \"DELETE /v1/merchants/{merchantId}/platform-fee/{platformFeeId}\"\n }), \".\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"A resposta traz as regras gravadas e um aviso fixo em \", _jsx(_components.code, {\n children: \"warnings\"\n }), \" sobre assinaturas com split por valor.\"]\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"openapi":"post /v1/merchants/{merchantId}/sellers/{sellerId}/platform-fee","title":"Criar regras de platform fee de um seller","description":"Cria regras de platform fee próprias de um seller dentro da subconta. A regra do seller substitui a regra da subconta para ele, método a método e só nas parcelas que ela cobre. O que a regra do seller não cobre segue a regra da subconta.\n\nO corpo aceita as mesmas formas do `POST /v1/merchants/{merchantId}/platform-fee`: regra avulsa, `installmentRates`, `installments` e fórmula, em array ou em objeto com a lista em `rules`. As diferenças para a regra da subconta:\n\n- No crédito, a regra do seller aceita só percentual por parcela. Qualquer `fixedAmount` diferente de 0, em qualquer forma do corpo, recusa a requisição com `400`. Em `pix` e `boleto`, o seller aceita percentual, valor fixo ou os dois.\n\nComo na subconta, `paymentMethod: default` é recusado com `400` e `PLATFORM_FEE_DEFAULT_RULE_DISCONTINUED`, e o corpo aceita até 50 objetos de regra.\n\nO seller precisa estar cadastrado nesta subconta. Seller de outro cliente, de outra subconta ou sem subconta responde `404` com `PLATFORM_FEE_SELLER_NOT_FOUND`, com o mesmo corpo nos três casos.\n\nPara isentar o seller num método, envie `percentage: 0` e `fixedAmount: 0` na mesma regra. Para ele voltar a seguir a regra da subconta, apague a regra dele com `DELETE /v1/merchants/{merchantId}/platform-fee/{platformFeeId}`.\n\nA resposta traz as regras gravadas e um aviso fixo em `warnings` sobre assinaturas com split por valor.\n","href":"/api-reference/merchants/criar-regras-de-platform-fee-do-seller"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/_mintlify/custom/malga/e062f6bdf470a4a7/scripts/generate-providers/generate-providers-docs.js","/_mintlify/custom/malga/1d6eb6c3defb1781/scripts/generate-providers/generate-providers-table.js","/_mintlify/custom/malga/511878d47a4717b9/scripts/generate-providers/index.js","/_mintlify/custom/malga/07cc1cd1c4f6158b/scripts/generate-providers/update-mint-file.js","/_mintlify/custom/malga/4789795b14062ad2/scripts/generate-providers/utils.js","/_mintlify/custom/malga/f193bde54c02ce17/script.js"],"openApiReferenceData":{"operation":{"operationId":"createSellerPlatformFeeRules","summary":"Criar regras de platform fee de um seller","description":"Cria regras de platform fee próprias de um seller dentro da subconta. A regra do seller substitui a regra da subconta para ele, método a método e só nas parcelas que ela cobre. O que a regra do seller não cobre segue a regra da subconta.\n\nO corpo aceita as mesmas formas do `POST /v1/merchants/{merchantId}/platform-fee`: regra avulsa, `installmentRates`, `installments` e fórmula, em array ou em objeto com a lista em `rules`. As diferenças para a regra da subconta:\n\n- No crédito, a regra do seller aceita só percentual por parcela. Qualquer `fixedAmount` diferente de 0, em qualquer forma do corpo, recusa a requisição com `400`. Em `pix` e `boleto`, o seller aceita percentual, valor fixo ou os dois.\n\nComo na subconta, `paymentMethod: default` é recusado com `400` e `PLATFORM_FEE_DEFAULT_RULE_DISCONTINUED`, e o corpo aceita até 50 objetos de regra.\n\nO seller precisa estar cadastrado nesta subconta. Seller de outro cliente, de outra subconta ou sem subconta responde `404` com `PLATFORM_FEE_SELLER_NOT_FOUND`, com o mesmo corpo nos três casos.\n\nPara isentar o seller num método, envie `percentage: 0` e `fixedAmount: 0` na mesma regra. Para ele voltar a seguir a regra da subconta, apague a regra dele com `DELETE /v1/merchants/{merchantId}/platform-fee/{platformFeeId}`.\n\nA resposta traz as regras gravadas e um aviso fixo em `warnings` sobre assinaturas com split por valor.\n","parameters":["a4b4a1a7-9409-46d2-bc46-aca18f2ed883","55d133cf-d56c-4214-a0f6-51ea6eced29b"],"requestBody":"0fc3abb7-bb79-4c35-a45b-edd2cc9139f0","responses":{"201":"b4deed5b-84b3-45f0-8ee5-ba5e599e082d","400":"89a49329-a439-48e0-b3ca-64f40dcbc1d0","404":"f50006d5-bdb0-442d-b7a8-e2d20673dfeb","409":"37634b02-9e3c-49fa-9e4c-f6d2de99e83a","422":"9c51122c-15ea-4c21-84f8-e92a6a13f6dc","503":"30697625-f91c-424f-b2bd-10eaf9d3176d"},"tags":["Merchants"],"method":"post","type":"path","servers":["64890168-26f6-4fab-b914-43c3dc7795e1"],"security":["203706cc-ec4a-44b9-8fe5-2687a27c94a3"],"path":"/v1/merchants/{merchantId}/sellers/{sellerId}/platform-fee","baseUrlOptions":["https://api.malga.io"],"title":"Criar regras de platform fee de um seller","codeSamples":[],"requestExampleLanguages":["bash","javascript","go"],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated","prefillPlaygroundWithExample":true,"prefillPlaygroundExamples":[{"body.oneOf.1.rules.items.0.paymentMethod":"pix","body.oneOf.1.rules.items.0.percentage":0,"body.oneOf.1.rules.items.0.fixedAmount":0,"body.oneOf.1.rules.items.1.paymentMethod":"credit","body.oneOf.1.rules.items.1.installmentRates.items.0":1.99,"body.oneOf.1.rules.items.1.installmentRates.items.1":2.49}]},"dependencies":{"parameters":{"a4b4a1a7-9409-46d2-bc46-aca18f2ed883":{"name":"merchantId","required":true,"in":"path","description":"Identificador do merchant","schema":{"type":"string","format":"uuid","isRequired":true,"description":"Identificador do merchant","uniqueKey":"","typeLabel":"string\u003cuuid>"}},"55d133cf-d56c-4214-a0f6-51ea6eced29b":{"name":"sellerId","required":true,"in":"path","description":"Identificador do seller, cadastrado nesta subconta","schema":{"type":"string","format":"uuid","isRequired":true,"description":"Identificador do seller, cadastrado nesta subconta","uniqueKey":"","typeLabel":"string\u003cuuid>"}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"oneOf":[{"type":"array","items":{"type":"object","description":"Uma regra de platform fee.\n\nEm `pix` e `boleto`, informe `percentage`, `fixedAmount` ou os dois.\n\nEm `credit`, use uma destas formas, sem combinar formas no mesmo objeto:\n\n- **Regra avulsa**: `installment` com `percentage` e/ou `fixedAmount`.\n- **Tabela curta**: `installmentRates`.\n- **Tabela longa**: `installments`.\n- **Fórmula**: `maxInstallments` e `base`, com `growth`, `surcharges`, `overrides` e `cap` opcionais.\n\nNas três formas de tabela e fórmula, a regra aceita só as chaves da forma escolhida mais `paymentMethod`. Uma chave desconhecida, como `capp` no lugar de `cap`, recusa a configuração inteira com `400`, em vez de ser ignorada.\n\nNa fórmula, o percentual e o valor fixo de cada parcela `n`, de 1 até `maxInstallments`, são calculados nesta ordem:\n\n1. Parte de `base.percentage` e `base.fixedAmount`.\n2. Aplica `growth` quando `n` é maior ou igual a `growth.from`.\n3. Soma as `surcharges` com `fromInstallment` menor ou igual a `n`.\n4. Limita ao `cap`.\n5. Substitui pelo `overrides` da parcela, quando houver.\n6. Arredonda o percentual para 2 casas decimais, com meio para cima.\n\nSe alguma parcela calculada passar de 100%, a configuração inteira é recusada.\n","required":["paymentMethod"],"properties":{"paymentMethod":{"type":"string","enum":["credit","pix","boleto"],"description":"Método de pagamento ao qual a regra se aplica. A regra genérica `default` foi descontinuada: `paymentMethod: default` é recusado com `400` e `PLATFORM_FEE_DEFAULT_RULE_DISCONTINUED`.\n","example":"credit","isRequired":true,"uniqueKey":"oneOf.0.items.[INDEX].paymentMethod","typeLabel":"enum\u003cstring>"},"percentage":{"type":"number","format":"float","minimum":0,"maximum":100,"description":"Percentual da taxa (0-100) com até 2 casas decimais. Ao menos um entre `percentage` e `fixedAmount` deve ser informado. Não pode ser combinado com `installmentRates`, `installments` ou fórmula.","example":2.5,"uniqueKey":"oneOf.0.items.[INDEX].percentage","typeLabel":"number\u003cfloat>"},"fixedAmount":{"type":"integer","minimum":0,"maximum":2147483647,"description":"Valor fixo da taxa em centavos, de 0 a 2147483647. Ao menos um entre `percentage` e `fixedAmount` deve ser informado. Não pode ser combinado com `installmentRates`, `installments` ou fórmula.","example":50,"uniqueKey":"oneOf.0.items.[INDEX].fixedAmount","typeLabel":"integer"},"installment":{"type":"integer","minimum":1,"maximum":24,"description":"Número exato de parcelas ao qual a regra se aplica, de 1 a 24. **Obrigatório** na regra avulsa de `credit`; **proibido** nos demais métodos. Cada parcela tem a própria regra: `installment: 3` vale só para vendas em 3x, e 2x e 3x podem ter taxas diferentes.\n","example":3,"uniqueKey":"oneOf.0.items.[INDEX].installment","typeLabel":"integer"},"installmentRates":{"type":"array","minItems":1,"maxItems":24,"items":{"type":"number","format":"float","minimum":0,"maximum":100,"uniqueKey":"oneOf.0.items.[INDEX].installmentRates.items.[INDEX]","typeLabel":"number\u003cfloat>"},"description":"Somente `credit`. Tabela curta: lista de percentuais em que a posição é o número de parcelas. O primeiro item vale para 1x, o segundo para 2x, e assim por diante. Cada item vai de 0 a 100, com até 2 casas decimais. Grava uma regra por parcela, só com percentual: as parcelas gravadas por esta lista ficam sem valor fixo. Para valor fixo por parcela, use `installments`.\n","example":[2.99,5.11,6.86,8.64,10.45,12.29,14.45,16.35,18.29,20.26,22.26,24.3],"uniqueKey":"oneOf.0.items.[INDEX].installmentRates","typeLabel":"number\u003cfloat>[]"},"installments":{"type":"array","minItems":1,"maxItems":24,"description":"Somente `credit`. Tabela longa: uma entrada por parcela, com percentual, valor fixo ou os dois. Aceita parcelas salteadas, e cada parcela pode aparecer uma vez só. Cada entrada aceita apenas `installment`, `percentage` e `fixedAmount`: qualquer outra chave, inclusive uma dessas com grafia diferente, recusa a requisição com `400`.\n","items":{"type":"object","additionalProperties":false,"description":"Uma parcela da tabela longa. Ao menos um entre `percentage` e `fixedAmount` deve ser informado. Chaves além destas três são recusadas.","required":["installment"],"properties":{"installment":{"type":"integer","minimum":1,"maximum":24,"description":"Número exato de parcelas","example":2,"isRequired":true,"uniqueKey":"oneOf.0.items.[INDEX].installments.items.[INDEX].installment","typeLabel":"integer"},"percentage":{"type":"number","format":"float","minimum":0,"maximum":100,"description":"Percentual da taxa da parcela (0-100), com até 2 casas decimais","example":5.11,"uniqueKey":"oneOf.0.items.[INDEX].installments.items.[INDEX].percentage","typeLabel":"number\u003cfloat>"},"fixedAmount":{"type":"integer","minimum":0,"maximum":2147483647,"description":"Valor fixo da taxa da parcela em centavos, de 0 a 2147483647","example":50,"uniqueKey":"oneOf.0.items.[INDEX].installments.items.[INDEX].fixedAmount","typeLabel":"integer"}},"uniqueKey":"oneOf.0.items.[INDEX].installments.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.items.[INDEX].installments","typeLabel":"object[]"},"maxInstallments":{"type":"integer","minimum":1,"maximum":24,"description":"Somente `credit`. **Obrigatório** na fórmula. Última parcela gerada pela fórmula, que grava regras de 1x até `maxInstallments`.","example":8,"uniqueKey":"oneOf.0.items.[INDEX].maxInstallments","typeLabel":"integer"},"base":{"type":"object","description":"Somente `credit`. **Obrigatório** na fórmula. Taxa de partida de todas as parcelas, sobre a qual o crescimento e as sobretaxas são aplicados.","required":["percentage"],"properties":{"percentage":{"type":"number","format":"float","minimum":0,"maximum":100,"description":"Percentual de partida (0-100), com até 2 casas decimais","example":2.79,"isRequired":true,"uniqueKey":"oneOf.0.items.[INDEX].base.percentage","typeLabel":"number\u003cfloat>"},"fixedAmount":{"type":"integer","minimum":0,"maximum":2147483647,"description":"Valor fixo de partida em centavos. Quando omitido, é 0.","example":0,"uniqueKey":"oneOf.0.items.[INDEX].base.fixedAmount","typeLabel":"integer"}},"uniqueKey":"oneOf.0.items.[INDEX].base","typeLabel":"object"},"growth":{"type":"object","description":"Somente `credit`, na fórmula. Define como o percentual cresce a partir de uma parcela. O crescimento não altera o valor fixo.\n","properties":{"mode":{"type":"string","enum":["none","linear","exponential"],"default":"none","description":"`none` repete o percentual da base em todas as parcelas e não aceita `step`, `rate` nem `from`. `linear` soma `step` pontos percentuais a cada parcela. `exponential` multiplica o percentual da base por `1 + rate` a cada parcela e exige `cap.percentage`.\n","example":"linear","uniqueKey":"oneOf.0.items.[INDEX].growth.mode","typeLabel":"enum\u003cstring>"},"step":{"type":"number","format":"float","minimum":0,"maximum":100,"description":"**Obrigatório** em `linear` e aceito só nesse modo. Pontos percentuais somados a cada parcela a partir de `from`. Com base de 2.79 e `step` de 0.20 a partir de 2x, 2x fica com 2.99 e 3x com 3.19.\n","example":0.2,"uniqueKey":"oneOf.0.items.[INDEX].growth.step","typeLabel":"number\u003cfloat>"},"rate":{"type":"number","format":"float","minimum":0,"maximum":100,"description":"**Obrigatório** em `exponential` e aceito só nesse modo. Crescimento composto por parcela, em fração, e não em percentual: `0.06` aumenta o percentual em 6% a cada parcela a partir de `from`, e `10` aumenta em 1000%.\n","example":0.06,"uniqueKey":"oneOf.0.items.[INDEX].growth.rate","typeLabel":"number\u003cfloat>"},"from":{"type":"integer","minimum":2,"maximum":24,"default":2,"description":"Primeira parcela que cresce, de 2 até `maxInstallments`. As parcelas anteriores ficam com o percentual da base.","example":2,"uniqueKey":"oneOf.0.items.[INDEX].growth.from","typeLabel":"integer"}},"uniqueKey":"oneOf.0.items.[INDEX].growth","typeLabel":"object"},"surcharges":{"type":"array","maxItems":24,"description":"Somente `credit`, na fórmula. Sobretaxas que entram a partir de uma parcela e valem dali em diante. Sobretaxas diferentes se acumulam.","items":{"type":"object","description":"Sobretaxa somada a partir de uma parcela. Ao menos um entre `percentage` e `fixedAmount` deve ser informado, e cada `fromInstallment` pode aparecer uma vez só.","required":["fromInstallment"],"properties":{"fromInstallment":{"type":"integer","minimum":1,"maximum":24,"description":"Primeira parcela que recebe a sobretaxa, de 1 até `maxInstallments`","example":7,"isRequired":true,"uniqueKey":"oneOf.0.items.[INDEX].surcharges.items.[INDEX].fromInstallment","typeLabel":"integer"},"percentage":{"type":"number","format":"float","minimum":0,"maximum":100,"description":"Pontos percentuais somados, com até 2 casas decimais","example":0.5,"uniqueKey":"oneOf.0.items.[INDEX].surcharges.items.[INDEX].percentage","typeLabel":"number\u003cfloat>"},"fixedAmount":{"type":"integer","minimum":0,"maximum":2147483647,"description":"Valor fixo somado, em centavos","example":50,"uniqueKey":"oneOf.0.items.[INDEX].surcharges.items.[INDEX].fixedAmount","typeLabel":"integer"}},"uniqueKey":"oneOf.0.items.[INDEX].surcharges.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.items.[INDEX].surcharges","typeLabel":"object[]"},"overrides":{"type":"array","maxItems":24,"description":"Somente `credit`, na fórmula. Valor final de parcelas específicas, que substitui o valor calculado.","items":{"type":"object","description":"Valor final de uma parcela. Substitui o percentual e o valor fixo calculados para ela. Cada parcela pode aparecer uma vez só, e o valor não pode passar do `cap`.\n","required":["installment","percentage"],"properties":{"installment":{"type":"integer","minimum":1,"maximum":24,"description":"Parcela substituída, de 1 até `maxInstallments`","example":10,"isRequired":true,"uniqueKey":"oneOf.0.items.[INDEX].overrides.items.[INDEX].installment","typeLabel":"integer"},"percentage":{"type":"number","format":"float","minimum":0,"maximum":100,"description":"Percentual final da parcela (0-100), com até 2 casas decimais","example":4,"isRequired":true,"uniqueKey":"oneOf.0.items.[INDEX].overrides.items.[INDEX].percentage","typeLabel":"number\u003cfloat>"},"fixedAmount":{"type":"integer","minimum":0,"maximum":2147483647,"description":"Valor fixo final da parcela em centavos. Quando omitido, é 0.","example":0,"uniqueKey":"oneOf.0.items.[INDEX].overrides.items.[INDEX].fixedAmount","typeLabel":"integer"}},"uniqueKey":"oneOf.0.items.[INDEX].overrides.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.items.[INDEX].overrides","typeLabel":"object[]"},"cap":{"type":"object","description":"Somente `credit`, na fórmula. Teto do percentual e do valor fixo calculados. A parcela que passa do teto fica com o valor do teto. `cap.percentage` é obrigatório quando `growth.mode` é `exponential`.\n","properties":{"percentage":{"type":"number","format":"float","minimum":0,"maximum":100,"description":"Teto do percentual (0-100), com até 2 casas decimais","example":4.6,"uniqueKey":"oneOf.0.items.[INDEX].cap.percentage","typeLabel":"number\u003cfloat>"},"fixedAmount":{"type":"integer","minimum":0,"maximum":2147483647,"description":"Teto do valor fixo, em centavos","example":100,"uniqueKey":"oneOf.0.items.[INDEX].cap.fixedAmount","typeLabel":"integer"}},"uniqueKey":"oneOf.0.items.[INDEX].cap","typeLabel":"object"}},"uniqueKey":"oneOf.0.items.[INDEX]","typeLabel":"object"},"title":"Array de regras","maxItems":50,"minItems":1,"uniqueKey":"oneOf.0","typeLabel":"Array de regras · object[]"},{"type":"object","title":"Objeto com rules","required":["rules"],"properties":{"rules":{"type":"array","minItems":1,"maxItems":50,"description":"Regras de platform fee. Aceita o mesmo conteúdo do corpo em array, com até 50 objetos de regra.","items":{"type":"object","description":"Uma regra de platform fee.\n\nEm `pix` e `boleto`, informe `percentage`, `fixedAmount` ou os dois.\n\nEm `credit`, use uma destas formas, sem combinar formas no mesmo objeto:\n\n- **Regra avulsa**: `installment` com `percentage` e/ou `fixedAmount`.\n- **Tabela curta**: `installmentRates`.\n- **Tabela longa**: `installments`.\n- **Fórmula**: `maxInstallments` e `base`, com `growth`, `surcharges`, `overrides` e `cap` opcionais.\n\nNas três formas de tabela e fórmula, a regra aceita só as chaves da forma escolhida mais `paymentMethod`. Uma chave desconhecida, como `capp` no lugar de `cap`, recusa a configuração inteira com `400`, em vez de ser ignorada.\n\nNa fórmula, o percentual e o valor fixo de cada parcela `n`, de 1 até `maxInstallments`, são calculados nesta ordem:\n\n1. Parte de `base.percentage` e `base.fixedAmount`.\n2. Aplica `growth` quando `n` é maior ou igual a `growth.from`.\n3. Soma as `surcharges` com `fromInstallment` menor ou igual a `n`.\n4. Limita ao `cap`.\n5. Substitui pelo `overrides` da parcela, quando houver.\n6. Arredonda o percentual para 2 casas decimais, com meio para cima.\n\nSe alguma parcela calculada passar de 100%, a configuração inteira é recusada.\n","required":["paymentMethod"],"properties":{"paymentMethod":{"type":"string","enum":["credit","pix","boleto"],"description":"Método de pagamento ao qual a regra se aplica. A regra genérica `default` foi descontinuada: `paymentMethod: default` é recusado com `400` e `PLATFORM_FEE_DEFAULT_RULE_DISCONTINUED`.\n","example":"credit","isRequired":true,"uniqueKey":"oneOf.1.rules.items.[INDEX].paymentMethod","typeLabel":"enum\u003cstring>"},"percentage":{"type":"number","format":"float","minimum":0,"maximum":100,"description":"Percentual da taxa (0-100) com até 2 casas decimais. Ao menos um entre `percentage` e `fixedAmount` deve ser informado. Não pode ser combinado com `installmentRates`, `installments` ou fórmula.","example":2.5,"uniqueKey":"oneOf.1.rules.items.[INDEX].percentage","typeLabel":"number\u003cfloat>"},"fixedAmount":{"type":"integer","minimum":0,"maximum":2147483647,"description":"Valor fixo da taxa em centavos, de 0 a 2147483647. Ao menos um entre `percentage` e `fixedAmount` deve ser informado. Não pode ser combinado com `installmentRates`, `installments` ou fórmula.","example":50,"uniqueKey":"oneOf.1.rules.items.[INDEX].fixedAmount","typeLabel":"integer"},"installment":{"type":"integer","minimum":1,"maximum":24,"description":"Número exato de parcelas ao qual a regra se aplica, de 1 a 24. **Obrigatório** na regra avulsa de `credit`; **proibido** nos demais métodos. Cada parcela tem a própria regra: `installment: 3` vale só para vendas em 3x, e 2x e 3x podem ter taxas diferentes.\n","example":3,"uniqueKey":"oneOf.1.rules.items.[INDEX].installment","typeLabel":"integer"},"installmentRates":{"type":"array","minItems":1,"maxItems":24,"items":{"type":"number","format":"float","minimum":0,"maximum":100,"uniqueKey":"oneOf.1.rules.items.[INDEX].installmentRates.items.[INDEX]","typeLabel":"number\u003cfloat>"},"description":"Somente `credit`. Tabela curta: lista de percentuais em que a posição é o número de parcelas. O primeiro item vale para 1x, o segundo para 2x, e assim por diante. Cada item vai de 0 a 100, com até 2 casas decimais. Grava uma regra por parcela, só com percentual: as parcelas gravadas por esta lista ficam sem valor fixo. Para valor fixo por parcela, use `installments`.\n","example":[2.99,5.11,6.86,8.64,10.45,12.29,14.45,16.35,18.29,20.26,22.26,24.3],"uniqueKey":"oneOf.1.rules.items.[INDEX].installmentRates","typeLabel":"number\u003cfloat>[]"},"installments":{"type":"array","minItems":1,"maxItems":24,"description":"Somente `credit`. Tabela longa: uma entrada por parcela, com percentual, valor fixo ou os dois. Aceita parcelas salteadas, e cada parcela pode aparecer uma vez só. Cada entrada aceita apenas `installment`, `percentage` e `fixedAmount`: qualquer outra chave, inclusive uma dessas com grafia diferente, recusa a requisição com `400`.\n","items":{"type":"object","additionalProperties":false,"description":"Uma parcela da tabela longa. Ao menos um entre `percentage` e `fixedAmount` deve ser informado. Chaves além destas três são recusadas.","required":["installment"],"properties":{"installment":{"type":"integer","minimum":1,"maximum":24,"description":"Número exato de parcelas","example":2,"isRequired":true,"uniqueKey":"oneOf.1.rules.items.[INDEX].installments.items.[INDEX].installment","typeLabel":"integer"},"percentage":{"type":"number","format":"float","minimum":0,"maximum":100,"description":"Percentual da taxa da parcela (0-100), com até 2 casas decimais","example":5.11,"uniqueKey":"oneOf.1.rules.items.[INDEX].installments.items.[INDEX].percentage","typeLabel":"number\u003cfloat>"},"fixedAmount":{"type":"integer","minimum":0,"maximum":2147483647,"description":"Valor fixo da taxa da parcela em centavos, de 0 a 2147483647","example":50,"uniqueKey":"oneOf.1.rules.items.[INDEX].installments.items.[INDEX].fixedAmount","typeLabel":"integer"}},"uniqueKey":"oneOf.1.rules.items.[INDEX].installments.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.rules.items.[INDEX].installments","typeLabel":"object[]"},"maxInstallments":{"type":"integer","minimum":1,"maximum":24,"description":"Somente `credit`. **Obrigatório** na fórmula. Última parcela gerada pela fórmula, que grava regras de 1x até `maxInstallments`.","example":8,"uniqueKey":"oneOf.1.rules.items.[INDEX].maxInstallments","typeLabel":"integer"},"base":{"type":"object","description":"Somente `credit`. **Obrigatório** na fórmula. Taxa de partida de todas as parcelas, sobre a qual o crescimento e as sobretaxas são aplicados.","required":["percentage"],"properties":{"percentage":{"type":"number","format":"float","minimum":0,"maximum":100,"description":"Percentual de partida (0-100), com até 2 casas decimais","example":2.79,"isRequired":true,"uniqueKey":"oneOf.1.rules.items.[INDEX].base.percentage","typeLabel":"number\u003cfloat>"},"fixedAmount":{"type":"integer","minimum":0,"maximum":2147483647,"description":"Valor fixo de partida em centavos. Quando omitido, é 0.","example":0,"uniqueKey":"oneOf.1.rules.items.[INDEX].base.fixedAmount","typeLabel":"integer"}},"uniqueKey":"oneOf.1.rules.items.[INDEX].base","typeLabel":"object"},"growth":{"type":"object","description":"Somente `credit`, na fórmula. Define como o percentual cresce a partir de uma parcela. O crescimento não altera o valor fixo.\n","properties":{"mode":{"type":"string","enum":["none","linear","exponential"],"default":"none","description":"`none` repete o percentual da base em todas as parcelas e não aceita `step`, `rate` nem `from`. `linear` soma `step` pontos percentuais a cada parcela. `exponential` multiplica o percentual da base por `1 + rate` a cada parcela e exige `cap.percentage`.\n","example":"linear","uniqueKey":"oneOf.1.rules.items.[INDEX].growth.mode","typeLabel":"enum\u003cstring>"},"step":{"type":"number","format":"float","minimum":0,"maximum":100,"description":"**Obrigatório** em `linear` e aceito só nesse modo. Pontos percentuais somados a cada parcela a partir de `from`. Com base de 2.79 e `step` de 0.20 a partir de 2x, 2x fica com 2.99 e 3x com 3.19.\n","example":0.2,"uniqueKey":"oneOf.1.rules.items.[INDEX].growth.step","typeLabel":"number\u003cfloat>"},"rate":{"type":"number","format":"float","minimum":0,"maximum":100,"description":"**Obrigatório** em `exponential` e aceito só nesse modo. Crescimento composto por parcela, em fração, e não em percentual: `0.06` aumenta o percentual em 6% a cada parcela a partir de `from`, e `10` aumenta em 1000%.\n","example":0.06,"uniqueKey":"oneOf.1.rules.items.[INDEX].growth.rate","typeLabel":"number\u003cfloat>"},"from":{"type":"integer","minimum":2,"maximum":24,"default":2,"description":"Primeira parcela que cresce, de 2 até `maxInstallments`. As parcelas anteriores ficam com o percentual da base.","example":2,"uniqueKey":"oneOf.1.rules.items.[INDEX].growth.from","typeLabel":"integer"}},"uniqueKey":"oneOf.1.rules.items.[INDEX].growth","typeLabel":"object"},"surcharges":{"type":"array","maxItems":24,"description":"Somente `credit`, na fórmula. Sobretaxas que entram a partir de uma parcela e valem dali em diante. Sobretaxas diferentes se acumulam.","items":{"type":"object","description":"Sobretaxa somada a partir de uma parcela. Ao menos um entre `percentage` e `fixedAmount` deve ser informado, e cada `fromInstallment` pode aparecer uma vez só.","required":["fromInstallment"],"properties":{"fromInstallment":{"type":"integer","minimum":1,"maximum":24,"description":"Primeira parcela que recebe a sobretaxa, de 1 até `maxInstallments`","example":7,"isRequired":true,"uniqueKey":"oneOf.1.rules.items.[INDEX].surcharges.items.[INDEX].fromInstallment","typeLabel":"integer"},"percentage":{"type":"number","format":"float","minimum":0,"maximum":100,"description":"Pontos percentuais somados, com até 2 casas decimais","example":0.5,"uniqueKey":"oneOf.1.rules.items.[INDEX].surcharges.items.[INDEX].percentage","typeLabel":"number\u003cfloat>"},"fixedAmount":{"type":"integer","minimum":0,"maximum":2147483647,"description":"Valor fixo somado, em centavos","example":50,"uniqueKey":"oneOf.1.rules.items.[INDEX].surcharges.items.[INDEX].fixedAmount","typeLabel":"integer"}},"uniqueKey":"oneOf.1.rules.items.[INDEX].surcharges.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.rules.items.[INDEX].surcharges","typeLabel":"object[]"},"overrides":{"type":"array","maxItems":24,"description":"Somente `credit`, na fórmula. Valor final de parcelas específicas, que substitui o valor calculado.","items":{"type":"object","description":"Valor final de uma parcela. Substitui o percentual e o valor fixo calculados para ela. Cada parcela pode aparecer uma vez só, e o valor não pode passar do `cap`.\n","required":["installment","percentage"],"properties":{"installment":{"type":"integer","minimum":1,"maximum":24,"description":"Parcela substituída, de 1 até `maxInstallments`","example":10,"isRequired":true,"uniqueKey":"oneOf.1.rules.items.[INDEX].overrides.items.[INDEX].installment","typeLabel":"integer"},"percentage":{"type":"number","format":"float","minimum":0,"maximum":100,"description":"Percentual final da parcela (0-100), com até 2 casas decimais","example":4,"isRequired":true,"uniqueKey":"oneOf.1.rules.items.[INDEX].overrides.items.[INDEX].percentage","typeLabel":"number\u003cfloat>"},"fixedAmount":{"type":"integer","minimum":0,"maximum":2147483647,"description":"Valor fixo final da parcela em centavos. Quando omitido, é 0.","example":0,"uniqueKey":"oneOf.1.rules.items.[INDEX].overrides.items.[INDEX].fixedAmount","typeLabel":"integer"}},"uniqueKey":"oneOf.1.rules.items.[INDEX].overrides.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.rules.items.[INDEX].overrides","typeLabel":"object[]"},"cap":{"type":"object","description":"Somente `credit`, na fórmula. Teto do percentual e do valor fixo calculados. A parcela que passa do teto fica com o valor do teto. `cap.percentage` é obrigatório quando `growth.mode` é `exponential`.\n","properties":{"percentage":{"type":"number","format":"float","minimum":0,"maximum":100,"description":"Teto do percentual (0-100), com até 2 casas decimais","example":4.6,"uniqueKey":"oneOf.1.rules.items.[INDEX].cap.percentage","typeLabel":"number\u003cfloat>"},"fixedAmount":{"type":"integer","minimum":0,"maximum":2147483647,"description":"Teto do valor fixo, em centavos","example":100,"uniqueKey":"oneOf.1.rules.items.[INDEX].cap.fixedAmount","typeLabel":"integer"}},"uniqueKey":"oneOf.1.rules.items.[INDEX].cap","typeLabel":"object"}},"uniqueKey":"oneOf.1.rules.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"oneOf.1.rules","typeLabel":"object[]"}},"uniqueKey":"oneOf.1","typeLabel":"Objeto com rules · object"}],"uniqueKey":"","typeLabel":"Array de regras · object[] | Objeto com rules · object"},"examples":{"PlatformFeeSellerCreateRequest":{"title":"PlatformFeeSellerCreateRequest","value":{"rules":[{"paymentMethod":"pix","percentage":0,"fixedAmount":0},{"paymentMethod":"credit","installmentRates":[1.99,2.49]}]}}},"exampleType":"examples"}},"exampleType":"examples"},"responses":{"b4deed5b-84b3-45f0-8ee5-ba5e599e082d":{"description":"Regras criadas com sucesso. A resposta traz as regras como ficaram gravadas, com uma regra por parcela no crédito.","content":{"application/json":{"schema":{"type":"object","description":"Regras de um seller como ficaram gravadas, na resposta do `POST` e do `PUT` da rota de seller","required":["sellerId","rules","warnings"],"properties":{"sellerId":{"type":"string","format":"uuid","description":"Seller dono das regras, em minúsculas","isRequired":true,"uniqueKey":"sellerId","typeLabel":"string\u003cuuid>"},"rules":{"type":"array","description":"Regras gravadas ou alteradas nesta requisição","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Identificador único da regra de platform fee","example":"74739f85-1bfa-40ae-a003-1c464c8e3c94","uniqueKey":"rules.items.[INDEX].id","typeLabel":"string\u003cuuid>"},"percentage":{"oneOf":[{"type":"number","format":"float","description":"Percentual da taxa aplicado","example":2.5,"uniqueKey":"rules.items.[INDEX].percentage.oneOf.0","typeLabel":"number\u003cfloat>"},{"type":"null","format":"float","description":"Percentual da taxa aplicado","example":2.5,"uniqueKey":"rules.items.[INDEX].percentage.oneOf.1","typeLabel":"null"}],"uniqueKey":"rules.items.[INDEX].percentage","typeLabel":"number\u003cfloat> | null"},"fixedAmount":{"oneOf":[{"type":"integer","description":"Valor fixo da taxa em centavos","example":50,"uniqueKey":"rules.items.[INDEX].fixedAmount.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Valor fixo da taxa em centavos","example":50,"uniqueKey":"rules.items.[INDEX].fixedAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"rules.items.[INDEX].fixedAmount","typeLabel":"integer | null"},"paymentMethod":{"type":"string","enum":["credit","pix","boleto"],"description":"Método de pagamento ao qual a regra se aplica","example":"credit","uniqueKey":"rules.items.[INDEX].paymentMethod","typeLabel":"enum\u003cstring>"},"installment":{"oneOf":[{"type":"integer","description":"Número exato de parcelas da regra, de 1 a 24. Presente apenas em regras de `credit`. Cada parcela tem no máximo uma regra ativa. Uma regra de `credit` sem `installment` vem da conversão da antiga regra `default` e vale para toda parcela sem regra própria.\n","example":3,"uniqueKey":"rules.items.[INDEX].installment.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Número exato de parcelas da regra, de 1 a 24. Presente apenas em regras de `credit`. Cada parcela tem no máximo uma regra ativa. Uma regra de `credit` sem `installment` vem da conversão da antiga regra `default` e vale para toda parcela sem regra própria.\n","example":3,"uniqueKey":"rules.items.[INDEX].installment.oneOf.1","typeLabel":"null"}],"uniqueKey":"rules.items.[INDEX].installment","typeLabel":"integer | null"},"createdAt":{"type":"string","format":"date-time","description":"Data de criação da regra","example":"2024-01-15T10:30:00.000Z","uniqueKey":"rules.items.[INDEX].createdAt","typeLabel":"string\u003cdate-time>"},"updatedAt":{"type":"string","format":"date-time","description":"Data da última atualização da regra","example":"2024-01-15T10:30:00.000Z","uniqueKey":"rules.items.[INDEX].updatedAt","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"rules.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"rules","typeLabel":"object[]"},"warnings":{"type":"array","description":"Avisos fixos, em português, sobre o que uma regra de seller muda em outros fluxos. Hoje, o aviso sobre assinaturas com split por valor.","items":{"type":"string","uniqueKey":"warnings.items.[INDEX]","typeLabel":"string"},"isRequired":true,"uniqueKey":"warnings","typeLabel":"string[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"PlatformFeeSellerCreateResponse":{"title":"PlatformFeeSellerCreateResponse","value":{"sellerId":"27ae4860-55ac-4e48-a417-1038dbdf1049","rules":[{"id":"88ccd2aa-c3cb-4ff6-bca7-3bc3812da801","percentage":0,"fixedAmount":0,"paymentMethod":"pix","createdAt":"2026-09-29T14:49:54.612Z","updatedAt":"2026-09-29T14:49:54.612Z"},{"id":"7f28ac5a-05d5-4a40-997d-2f172702a369","percentage":1.99,"fixedAmount":0,"paymentMethod":"credit","installment":1,"createdAt":"2026-09-29T14:49:54.612Z","updatedAt":"2026-09-29T14:49:54.612Z"},{"id":"2d0d8935-6b77-4fef-8ec9-625986f38ab4","percentage":2.49,"fixedAmount":0,"paymentMethod":"credit","installment":2,"createdAt":"2026-09-29T14:49:54.612Z","updatedAt":"2026-09-29T14:49:54.612Z"}],"warnings":["assinaturas aceitam split só em percentual, e com a taxa desta subconta ligada, uma assinatura com split por valor que inclua este seller tem as cobranças recusadas com platform_fee_requires_percentage_split quando a regra própria dele vale para o método e a parcela da cobrança"]}}},"exampleType":"examples"}},"exampleType":"examples"},"89a49329-a439-48e0-b3ca-64f40dcbc1d0":{"description":"Dados inválidos. O campo `error.code` identifica o motivo:\n\n- `PLATFORM_FEE_INVALID_RULE`: regra inválida, como nas regras da subconta, e também valor fixo diferente de 0 no crédito do seller.\n- `PLATFORM_FEE_INSTALLMENT_REQUIRED`: regra avulsa de `credit` sem `installment`.\n- `PLATFORM_FEE_DEFAULT_RULE_DISCONTINUED`: o corpo traz `paymentMethod: default`.\n- `PLATFORM_FEE_DUPLICATE_RULE`: a mesma parcela ou o mesmo método repetido no corpo.\n\nNenhuma regra é gravada quando a requisição é recusada.\n","content":{"application/json":{"examples":{"PlatformFeeSellerCreditFixedAmountError":{"title":"PlatformFeeSellerCreditFixedAmountError","value":{"error":{"type":"bad_request","code":"PLATFORM_FEE_INVALID_RULE","message":"Invalid platform fee rule: a seller credit rule accepts percentage only, so fixedAmount must be 0 or left out","details":"Invalid platform fee rule: a seller credit rule accepts percentage only, so fixedAmount must be 0 or left out"}}},"PlatformFeeDefaultRuleDiscontinuedError":{"title":"PlatformFeeDefaultRuleDiscontinuedError","value":{"error":{"type":"bad_request","code":"PLATFORM_FEE_DEFAULT_RULE_DISCONTINUED","message":"The generic platform fee rule was discontinued: configure a rule per payment method, and per installment on credit","details":"The generic platform fee rule was discontinued: configure a rule per payment method, and per installment on credit"}}}},"exampleType":"examples"}},"exampleType":"examples"},"f50006d5-bdb0-442d-b7a8-e2d20673dfeb":{"description":"Merchant não encontrado, ou seller que não é deste cliente, é de outra subconta ou não tem subconta (`PLATFORM_FEE_SELLER_NOT_FOUND`).","content":{"application/json":{"examples":{"PlatformFeeSellerNotFoundError":{"title":"PlatformFeeSellerNotFoundError","value":{"error":{"type":"not_found","code":"PLATFORM_FEE_SELLER_NOT_FOUND","message":"Seller 'ad782263-51bd-4ef8-a3ec-213e85cd26be' not found for merchantId '193a9529-7683-452a-bd2a-55867bbe869a'"}}}},"exampleType":"examples"}},"exampleType":"examples"},"37634b02-9e3c-49fa-9e4c-f6d2de99e83a":{"description":"O seller já tem regra para o método ou para a parcela informada (`PLATFORM_FEE_RULE_ALREADY_EXISTS`). A regra da subconta e a regra de outro seller com o mesmo método e a mesma parcela não conflitam.","content":{"application/json":{"examples":{"PlatformFeeSellerRuleAlreadyExistsError":{"title":"PlatformFeeSellerRuleAlreadyExistsError","value":{"error":{"type":"conflict","code":"PLATFORM_FEE_RULE_ALREADY_EXISTS","message":"Platform fee rule already exists for merchantId '193a9529-7683-452a-bd2a-55867bbe869a', sellerId '27ae4860-55ac-4e48-a417-1038dbdf1049', paymentMethod 'credit' (2x)","details":"Platform fee rule already exists for merchantId '193a9529-7683-452a-bd2a-55867bbe869a', sellerId '27ae4860-55ac-4e48-a417-1038dbdf1049', paymentMethod 'credit' (2x)"}}}},"exampleType":"examples"}},"exampleType":"examples"},"9c51122c-15ea-4c21-84f8-e92a6a13f6dc":{"description":"O seller ainda não tem regra própria e a subconta já tem 200 sellers com regra, com a taxa ligada ou desligada (`PLATFORM_FEE_SELLER_LIMIT_REACHED`). Nada é gravado. Alterar as regras de um seller que já tem regra não conta, e apagar todas as regras de um seller libera a vaga.","content":{"application/json":{"examples":{"PlatformFeeSellerLimitReachedError":{"title":"PlatformFeeSellerLimitReachedError","value":{"error":{"type":"unprocessable_entity","code":"PLATFORM_FEE_SELLER_LIMIT_REACHED","message":"Merchant '45de8552-47a4-4501-acee-a24a3fc50e6d' has reached the limit of 200 sellers with their own platform fee rules: a new seller cannot get rules of its own, and the rules of the sellers that already have them can still be changed"}}}},"exampleType":"examples"}},"exampleType":"examples"},"30697625-f91c-424f-b2bd-10eaf9d3176d":{"description":"O serviço de sellers não respondeu e não foi possível conferir a subconta do seller (`SELLER_SERVICE_UNAVAILABLE`). Nada é gravado. Tente de novo.","content":{"application/json":{"examples":{"SellerServiceUnavailableError":{"title":"SellerServiceUnavailableError","value":{"error":{"type":"service_unavailable","code":"SELLER_SERVICE_UNAVAILABLE","message":"Seller service is temporarily unavailable; retry the request"}}}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"203706cc-ec4a-44b9-8fe5-2687a27c94a3":{"X-Client-ID":{"type":"apiKey","in":"header","name":"X-Client-Id","scopes":[],"schemeName":"X-Client-ID"},"X-Api-Key":{"type":"apiKey","in":"header","name":"X-Api-Key","scopes":[],"schemeName":"X-Api-Key"}}},"servers":{"64890168-26f6-4fab-b914-43c3dc7795e1":{"url":"https://api.malga.io","description":"Production"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"X-Client-Id","scopes":[],"schemeName":"X-Client-ID"},"schema":{"title":"X-Client-Id","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"X-Client-ID","name":"X-Client-Id"},{"scheme":{"type":"apiKey","in":"header","name":"X-Api-Key","scopes":[],"schemeName":"X-Api-Key"},"schema":{"title":"X-Api-Key","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"X-Api-Key","name":"X-Api-Key"}],"title":"X-Client-ID \u0026 X-Api-Key"}]},"originalFileLocation":"api-reference/api-spec.yaml"},"subdomain":"malga","siteName":"Malga","title":"Criar regras de platform fee de um seller - Malga","relatedPagesConfig":{"enabled":true,"limit":4,"mode":"automatic"},"navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-08T19:00:35.949Z","originalFileLocation":"api-reference/merchants/criar-regras-de-platform-fee-do-seller.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Cria regras de platform fee próprias de um seller dentro da subconta. A regra do seller substitui a regra da subconta para ele, método a método e só nas parcelas que ela cobre. O que a regra do seller não cobre segue a regra da subconta. O corpo aceita as mesmas formas do POST /v1/merchants/{merchantId}/platform-fee: regra avulsa, installmentRates, installments e fórmula, em array ou em objeto com a lista em rules. As diferenças para a regra da subconta: - No crédito, a regra do seller aceita só percentual por parcela. Qualquer fixedAmount diferente de 0, em qualquer forma do corpo, recusa a requisição com 400. Em pix e boleto, o seller aceita percentual, valor fixo ou os dois. Como na subconta, paymentMethod: default é recusado com 400 e PLATFORM_FEE_DEFAULT_RULE_DISCONTINUED, e o corpo aceita até 50 objetos de regra. O seller precisa estar cadastrado nesta subconta. Seller de outro cliente, de outra subconta ou sem subconta responde 404 com PLATFORM_FEE_SELLER_NOT_FOUND, com o mesmo corpo nos três casos. Para isentar o seller num método, envie percentage: 0 e fixedAmount: 0 na mesma regra. Para ele voltar a seguir a regra da subconta, apague a regra dele com DELETE /v1/merchants/{merchantId}/platform-fee/{platformFeeId}. A resposta traz as regras gravadas e um aviso fixo em warnings sobre assinaturas com split por valor.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Malga\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/malga/FRGYPTtLcTku4cpj/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/malga/FRGYPTtLcTku4cpj/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/malga/FRGYPTtLcTku4cpj/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/malga/FRGYPTtLcTku4cpj/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/malga/FRGYPTtLcTku4cpj/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/malga/FRGYPTtLcTku4cpj/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/malga/FRGYPTtLcTku4cpj/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/malga/FRGYPTtLcTku4cpj/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/malga/FRGYPTtLcTku4cpj/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Criar regras de platform fee de um seller - Malga\">\u003cmeta data-mint-head property=\"og:description\" content=\"Cria regras de platform fee próprias de um seller dentro da subconta. A regra do seller substitui a regra da subconta para ele, método a método e só nas parcelas que ela cobre. O que a regra do seller não cobre segue a regra da subconta. O corpo aceita as mesmas formas do POST /v1/merchants/{merchantId}/platform-fee: regra avulsa, installmentRates, installments e fórmula, em array ou em objeto com a lista em rules. As diferenças para a regra da subconta: - No crédito, a regra do seller aceita só percentual por parcela. Qualquer fixedAmount diferente de 0, em qualquer forma do corpo, recusa a requisição com 400. Em pix e boleto, o seller aceita percentual, valor fixo ou os dois. Como na subconta, paymentMethod: default é recusado com 400 e PLATFORM_FEE_DEFAULT_RULE_DISCONTINUED, e o corpo aceita até 50 objetos de regra. O seller precisa estar cadastrado nesta subconta. Seller de outro cliente, de outra subconta ou sem subconta responde 404 com PLATFORM_FEE_SELLER_NOT_FOUND, com o mesmo corpo nos três casos. Para isentar o seller num método, envie percentage: 0 e fixedAmount: 0 na mesma regra. Para ele voltar a seguir a regra da subconta, apague a regra dele com DELETE /v1/merchants/{merchantId}/platform-fee/{platformFeeId}. A resposta traz as regras gravadas e um aviso fixo em warnings sobre assinaturas com split por valor.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Malga Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.malga.io/api-reference/merchants/criar-regras-de-platform-fee-do-seller\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://malga.mintlify.app/_mintlify/api/og/v2?division=Platform+Fee\u0026amp;title=Criar+regras+de+platform+fee+de+um+seller\u0026amp;description=Cria+regras+de+platform+fee+pr%C3%B3prias+de+um+seller+dentro+da+subconta.+A+regra+do+seller+substitui+a+regra+da+subconta+para+ele%2C+m%C3%A9todo+a+m%C3%A9todo+e+s%C3%B3+nas+parcela\u0026amp;theme=0a64d774e3bd06ffb7acdfa7\u0026amp;signature=43c6303f0a685384550e8c990c87e145447c2ad10a37fee60a4dfbb776a37ed2\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Criar regras de platform fee de um seller - Malga\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Cria regras de platform fee próprias de um seller dentro da subconta. A regra do seller substitui a regra da subconta para ele, método a método e só nas parcelas que ela cobre. O que a regra do seller não cobre segue a regra da subconta. O corpo aceita as mesmas formas do POST /v1/merchants/{merchantId}/platform-fee: regra avulsa, installmentRates, installments e fórmula, em array ou em objeto com a lista em rules. As diferenças para a regra da subconta: - No crédito, a regra do seller aceita só percentual por parcela. Qualquer fixedAmount diferente de 0, em qualquer forma do corpo, recusa a requisição com 400. Em pix e boleto, o seller aceita percentual, valor fixo ou os dois. Como na subconta, paymentMethod: default é recusado com 400 e PLATFORM_FEE_DEFAULT_RULE_DISCONTINUED, e o corpo aceita até 50 objetos de regra. O seller precisa estar cadastrado nesta subconta. Seller de outro cliente, de outra subconta ou sem subconta responde 404 com PLATFORM_FEE_SELLER_NOT_FOUND, com o mesmo corpo nos três casos. Para isentar o seller num método, envie percentage: 0 e fixedAmount: 0 na mesma regra. Para ele voltar a seguir a regra da subconta, apague a regra dele com DELETE /v1/merchants/{merchantId}/platform-fee/{platformFeeId}. A resposta traz as regras gravadas e um aviso fixo em warnings sobre assinaturas com split por valor.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://malga.mintlify.app/_mintlify/api/og/v2?division=Platform+Fee\u0026amp;title=Criar+regras+de+platform+fee+de+um+seller\u0026amp;description=Cria+regras+de+platform+fee+pr%C3%B3prias+de+um+seller+dentro+da+subconta.+A+regra+do+seller+substitui+a+regra+da+subconta+para+ele%2C+m%C3%A9todo+a+m%C3%A9todo+e+s%C3%B3+nas+parcela\u0026amp;theme=0a64d774e3bd06ffb7acdfa7\u0026amp;signature=43c6303f0a685384550e8c990c87e145447c2ad10a37fee60a4dfbb776a37ed2\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/malga/FRGYPTtLcTku4cpj/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Malga\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#2FAC9B\">\u003cmeta data-mint-head name=\"og:locale\" content=\"pt_BR\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.malga.io/api-reference/merchants/criar-regras-de-platform-fee-do-seller\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/merchants/criar-regras-de-platform-fee-do-seller.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://malga.io/#organization\",\"name\":\"Malga\",\"url\":\"https://malga.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://docs.malga.io/logo/light.svg\"},\"sameAs\":[\"https://www.youtube.com/@gomalga\",\"https://www.linkedin.com/company/gomalga/\",\"https://www.instagram.com/gomalga\"]},{\"@type\":\"WebSite\",\"@id\":\"https://docs.malga.io#website\",\"name\":\"Malga\",\"url\":\"https://docs.malga.io\",\"publisher\":{\"@id\":\"https://malga.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.malga.io/api-reference/merchants/criar-regras-de-platform-fee-do-seller#webpage\",\"url\":\"https://docs.malga.io/api-reference/merchants/criar-regras-de-platform-fee-do-seller\",\"name\":\"Criar regras de platform fee de um seller\",\"description\":\"Cria regras de platform fee próprias de um seller dentro da subconta. A regra do seller substitui a regra da subconta para ele, método a método e só nas parcelas que ela cobre. O que a regra do seller não cobre segue a regra da subconta. O corpo aceita as mesmas formas do POST /v1/merchants/{merchantId}/platform-fee: regra avulsa, installmentRates, installments e fórmula, em array ou em objeto com a lista em rules. As diferenças para a regra da subconta: - No crédito, a regra do seller aceita só percentual por parcela. Qualquer fixedAmount diferente de 0, em qualquer forma do corpo, recusa a requisição com 400. Em pix e boleto, o seller aceita percentual, valor fixo ou os dois. Como na subconta, paymentMethod: default é recusado com 400 e PLATFORM_FEE_DEFAULT_RULE_DISCONTINUED, e o corpo aceita até 50 objetos de regra. O seller precisa estar cadastrado nesta subconta. Seller de outro cliente, de outra subconta ou sem subconta responde 404 com PLATFORM_FEE_SELLER_NOT_FOUND, com o mesmo corpo nos três casos. Para isentar o seller num método, envie percentage: 0 e fixedAmount: 0 na mesma regra. Para ele voltar a seguir a regra da subconta, apague a regra dele com DELETE /v1/merchants/{merchantId}/platform-fee/{platformFeeId}. A resposta traz as regras gravadas e um aviso fixo em warnings sobre assinaturas com split por valor.\",\"dateModified\":\"2026-10-08T19:00:35.949Z\",\"isPartOf\":{\"@id\":\"https://docs.malga.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs.malga.io/api-reference/merchants/criar-regras-de-platform-fee-do-seller#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.malga.io/api-reference/merchants/criar-regras-de-platform-fee-do-seller#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Merchants\",\"item\":\"https://docs.malga.io/api-reference/merchants/listagem-de-merchants-cadastrados\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Platform Fee\",\"item\":\"https://docs.malga.io/api-reference/merchants/ativar-desativar-platform-fee\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Criar regras de platform fee de um seller\",\"item\":\"https://docs.malga.io/api-reference/merchants/criar-regras-de-platform-fee-do-seller\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.malga.io/api-reference/merchants/criar-regras-de-platform-fee-do-seller#apireference\",\"headline\":\"Criar regras de platform fee de um seller\",\"name\":\"Criar regras de platform fee de um seller\",\"description\":\"Cria regras de platform fee próprias de um seller dentro da subconta. A regra do seller substitui a regra da subconta para ele, método a método e só nas parcelas que ela cobre. O que a regra do seller não cobre segue a regra da subconta. O corpo aceita as mesmas formas do POST /v1/merchants/{merchantId}/platform-fee: regra avulsa, installmentRates, installments e fórmula, em array ou em objeto com a lista em rules. As diferenças para a regra da subconta: - No crédito, a regra do seller aceita só percentual por parcela. Qualquer fixedAmount diferente de 0, em qualquer forma do corpo, recusa a requisição com 400. Em pix e boleto, o seller aceita percentual, valor fixo ou os dois. Como na subconta, paymentMethod: default é recusado com 400 e PLATFORM_FEE_DEFAULT_RULE_DISCONTINUED, e o corpo aceita até 50 objetos de regra. O seller precisa estar cadastrado nesta subconta. Seller de outro cliente, de outra subconta ou sem subconta responde 404 com PLATFORM_FEE_SELLER_NOT_FOUND, com o mesmo corpo nos três casos. Para isentar o seller num método, envie percentage: 0 e fixedAmount: 0 na mesma regra. Para ele voltar a seguir a regra da subconta, apague a regra dele com DELETE /v1/merchants/{merchantId}/platform-fee/{platformFeeId}. A resposta traz as regras gravadas e um aviso fixo em warnings sobre assinaturas com split por valor.\",\"url\":\"https://docs.malga.io/api-reference/merchants/criar-regras-de-platform-fee-do-seller\",\"mainEntityOfPage\":{\"@id\":\"https://docs.malga.io/api-reference/merchants/criar-regras-de-platform-fee-do-seller#webpage\"},\"dateModified\":\"2026-10-08T19:00:35.949Z\",\"publisher\":{\"@id\":\"https://malga.io/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.malga.io#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Malga\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Malga","nav":{"global":{"anchors":[{"anchor":"Dashboard","icon":"table-layout","href":"https://dashboard.malga.io/"},{"anchor":"YouTube","icon":"youtube","href":"https://www.youtube.com/@gomalga"},{"anchor":"Status Page","icon":"signal-strong","href":"https://status.malga.io/"}]},"tabs":[{"tab":"Documentação","pages":[{"title":"Documentação","href":"/documentations/welcome/introduction"}]},{"tab":"SDKs","pages":[{"title":"SDKs","href":"/sdks/tokenization/v2/intro"}]},{"tab":"Referência da API","groups":[{"group":"Visão Geral","pages":[{"title":"Sobre as APIs da Malga","href":"/api-reference/about-apis"},{"title":"Autenticação","href":"/api-reference/authentication"}]},{"group":"Sub-keys","pages":[{"title":"Criar sub-key","openapi":"post /v1/auth","href":"/api-reference/client-token/criar-nova-chave-publica-para-uso-no-client-side"},{"title":"Remover sub-key","openapi":"delete /v1/auth/{id}","href":"/api-reference/client-token/remover-sub-key"}]},{"group":"Cards","pages":[{"openapi":"get /v1/cards","title":"Listar cartões","href":"/api-reference/cards/listar-cartoes"},{"openapi":"post /v1/cards","title":"Criar novo cartão a partir de token","href":"/api-reference/cards/criar-novo-cartao-a-partir-de-token"},{"openapi":"get /v1/cards/{id}","title":"Recuperar detalhes de cartão","href":"/api-reference/cards/recuperar-detalhes-de-cartao"}]},{"group":"Tokens","pages":[{"openapi":"post /v1/tokens","title":"Criar um novo token","href":"/api-reference/tokens/criar-um-novo-token"}]},{"group":"3DS2 Malga","pages":[{"title":"Criar um novo setup","openapi":"post /v1/charges/3ds/setup","href":"/api-reference/3ds-malga/criar-um-novo-setup"}]},{"group":"Charges","pages":[{"openapi":"get /v1/charges","title":"Listar cobranças","href":"/api-reference/charges/listar-cobrancas"},{"title":"Realizar nova cobrança","openapi":"post /v1/charges","href":"/api-reference/charges/realizar-nova-cobranca"},{"openapi":"get /v1/charges/{id}","title":"Recuperar detalhes de cobrança","href":"/api-reference/charges/recuperar-detalhes-de-cobranca"},{"openapi":"post /v1/charges/{id}","title":"Alterar o status de uma cobrança no ambiente de sandbox","href":"/api-reference/charges/alterar-o-status-de-uma-cobranca-no-ambiente-de-sandbox"},{"openapi":"patch /v1/charges/{id}/antifraud","title":"Alterar o status do antifraude no ambiente de sandbox","href":"/api-reference/charges/alterar-o-status-do-antifraude-no-ambiente-de-sandbox"},{"openapi":"post /v1/charges/{id}/capture","title":"Capturar cobrança pre-autorizada","href":"/api-reference/charges/capturar-cobranca-pre-autorizada"},{"openapi":"post /v1/charges/{id}/void","title":"Estornar cobrança aprovada","href":"/api-reference/charges/estornar-cobranca-aprovada"}]},{"group":"Sessions","pages":[{"openapi":"post /v1/sessions","title":"Criar nova sessão","href":"/api-reference/sessions/criar-nova-sessao"},{"title":"Listar sessões","openapi":"get /v1/sessions","href":"/api-reference/sessions/listar-sessoes"},{"openapi":"get /v1/sessions/{id}","title":"Recuperar detalhes de uma sessão","href":"/api-reference/sessions/recuperar-detalhes-de-uma-sessao"},{"openapi":"patch /v1/sessions/{id}","title":"Atualizar relevância de uma sessão","href":"/api-reference/sessions/atualizar-o-status-de-uma-sessao"},{"openapi":"post /v1/sessions/{id}/charge","title":"Pagar uma sessão","href":"/api-reference/sessions/pagar-uma-sessao"},{"openapi":"post /v1/sessions/{id}/purchase","title":"Pagar uma sessão com múltiplos cartões","href":"/api-reference/sessions/pagar-uma-sessao-com-multiplos-cartoes"},{"openapi":"post /v1/sessions/{id}/cancel","title":"Cancelar uma sessão","href":"/api-reference/sessions/cancelar-uma-sessao"},{"title":"Recuperar o histórico da sessão","openapi":"get /v1/sessions/{id}/history","href":"/api-reference/sessions/recuperar-o-historico-da-sessao"},{"openapi":"get /v1/sessions/{id}/link","title":"Recupera sessão com os dados das configurações da empresa","href":"/api-reference/sessions/recupera-sessao-com-os-dados-das-configuracoes-da-empresa"}]},{"group":"Purchases","pages":[{"openapi":"post /v1/purchases","title":"Criar uma Venda com múltiplos cartões","href":"/api-reference/purchases/criar-nova-venda"},{"openapi":"get /v1/purchases","title":"Listar Vendas","href":"/api-reference/purchases/listar-vendas"},{"openapi":"get /v1/purchases/{id}","title":"Recuperar detalhes de uma Venda","href":"/api-reference/purchases/recuperar-detalhes-de-uma-venda"},{"openapi":"get /v1/purchases/{id}/history","title":"Recuperar o histórico de uma Venda","href":"/api-reference/purchases/recuperar-o-historico-da-venda"},{"openapi":"post /v1/purchases/{id}/capture","title":"Capturar uma Venda pré-autorizada","href":"/api-reference/purchases/capturar-venda-pre-autorizada"},{"openapi":"post /v1/purchases/{id}/void","title":"Cancelar ou estornar uma Venda","href":"/api-reference/purchases/cancelar-ou-estornar-venda"}]},{"group":"Subscriptions","pages":[{"openapi":"post /v1/subscriptions","title":"Criação de uma nova assinatura","href":"/api-reference/subscriptions/criacao-de-uma-nova-assinatura"},{"openapi":"get /v1/subscriptions","title":"Listagem de assinaturas","href":"/api-reference/subscriptions/listagem-de-assinaturas"},{"openapi":"get /v1/subscriptions/{id}","title":"Recuperar detalhes de assinatura","href":"/api-reference/subscriptions/recuperar-detalhes-de-assinatura"},{"openapi":"get /v1/subscriptions/{id}/cycles","title":"Listar cycles de uma assinatura","href":"/api-reference/subscriptions/listagem-de-cycles-de-uma-assinatura"},{"openapi":"get /v1/subscriptions/{id}/cycles/{cycleId}","title":"Recuperar detalhes de um cycle específico","href":"/api-reference/subscriptions/recuperar-detalhes-de-cycle"},{"openapi":"put /v1/subscriptions/{id}","title":"Atualizar assinatura","href":"/api-reference/subscriptions/atualizar-assinatura"},{"openapi":"patch /v1/subscriptions/{id}/cancel","title":"Cancelar assinatura","href":"/api-reference/subscriptions/cancelar-assinatura"},{"openapi":"patch /v1/subscriptions/{id}/pause","title":"Pausar assinatura","href":"/api-reference/subscriptions/pausar-assinatura"},{"openapi":"patch /v1/subscriptions/{id}/resume","title":"Reativar assinatura","href":"/api-reference/subscriptions/reativar-assinatura"},{"openapi":"patch /v1/subscriptions/settings","title":"Atualizar configurações do cliente","href":"/api-reference/subscriptions/atualizar-configuracoes-do-cliente"},{"openapi":"get /v1/subscriptions/settings","title":"Obter configurações do cliente","href":"/api-reference/subscriptions/obter-configuracoes-do-cliente"}]},{"group":"Customers","pages":[{"openapi":"get /v1/customers","title":"Listagem de customers cadastrados","href":"/api-reference/customers/listagem-de-customers-cadastrados"},{"openapi":"post /v1/customers","title":"Criação de novo customer para cobrança","href":"/api-reference/customers/criacao-de-novo-customer-para-cobranca"},{"openapi":"get /v1/customers/{id}","title":"Recuperar detalhes de customer","href":"/api-reference/customers/recuperar-detalhes-de-customer"},{"openapi":"delete /v1/customers/{id}","title":"Deletar customer pelo id","href":"/api-reference/customers/deletar-customer-pelo-id"},{"openapi":"patch /v1/customers/{id}","title":"Atualizar customer pelo id","href":"/api-reference/customers/atualizar-customer-pelo-id"},{"openapi":"get /v1/customers/{customer_id}/cards","title":"Listagem dos cartões do customer","href":"/api-reference/customers/listagem-dos-cartoes-do-customer"},{"openapi":"post /v1/customers/{customer_id}/cards","title":"Adicionar cartão de crédito ao customer","href":"/api-reference/customers/adicionar-cartao-de-credito-ao-customer"}]},{"group":"Merchants","pages":[{"openapi":"get /v1/merchants","title":"Listagem de merchants cadastrados","href":"/api-reference/merchants/listagem-de-merchants-cadastrados"},{"openapi":"post /v1/merchants","title":"Criação de novo merchant para cobrança","href":"/api-reference/merchants/criacao-de-novo-merchant-para-cobranca"},{"openapi":"get /v1/merchants/{id}","title":"Recuperar detalhes de merchant pelo id","href":"/api-reference/merchants/recuperar-detalhes-de-merchant-pelo-id"},{"openapi":"delete /v1/merchants/{id}","title":"Deletar merchant pelo id","href":"/api-reference/merchants/deletar-merchant-pelo-id"},{"openapi":"patch /v1/merchants/{id}","title":"Atualizar configurações de merchant","href":"/api-reference/merchants/atualizar-configuracoes-de-merchant"},{"group":"Platform Fee","pages":[{"openapi":"patch /v1/merchants/{merchantId}/platform-fee/enabled","title":"Ativar ou desativar platform fee do merchant","href":"/api-reference/merchants/ativar-desativar-platform-fee"},{"openapi":"post /v1/merchants/{merchantId}/platform-fee","title":"Criar regras de platform fee","href":"/api-reference/merchants/criar-regras-de-platform-fee"},{"openapi":"get /v1/merchants/{merchantId}/platform-fee","title":"Listar regras de platform fee","href":"/api-reference/merchants/listar-regras-de-platform-fee"},{"openapi":"put /v1/merchants/{merchantId}/platform-fee","title":"Atualizar regras de platform fee","href":"/api-reference/merchants/atualizar-regras-de-platform-fee"},{"openapi":"delete /v1/merchants/{merchantId}/platform-fee/{platformFeeId}","title":"Deletar uma regra de platform fee pelo ID","description":"Remove uma regra pelo `id`, seja da subconta ou de um seller dela. Apagar a regra de um seller faz ele voltar a seguir a regra da subconta naquele método ou parcela.\n\nCom a platform fee ligada, a última regra da subconta não pode ser removida: a resposta é `400` com `PLATFORM_FEE_RULES_REQUIRED_WHILE_ENABLED`, e a regra continua. Crie outra regra da subconta antes ou desligue a platform fee. Regras de seller não contam e podem ser removidas sempre.\n","href":"/api-reference/merchants/deletar-regras-de-platform-fee"},{"openapi":"post /v1/merchants/{merchantId}/sellers/{sellerId}/platform-fee","title":"Criar regras de platform fee de um seller","href":"/api-reference/merchants/criar-regras-de-platform-fee-do-seller"},{"openapi":"get /v1/merchants/{merchantId}/sellers/{sellerId}/platform-fee","title":"Listar regras de platform fee de um seller","description":"Retorna as regras próprias ativas do seller nesta subconta e a flag de ativação da subconta. `rules` vem vazia quando o seller segue a regra da subconta em todos os métodos.\n\nPara ver as regras de todos os sellers junto com as da subconta, e o estado de cada método e parcela, use `GET /v1/merchants/{merchantId}/platform-fee`.\n","href":"/api-reference/merchants/listar-regras-de-platform-fee-do-seller"},{"openapi":"put /v1/merchants/{merchantId}/sellers/{sellerId}/platform-fee","title":"Atualizar regras de platform fee de um seller","href":"/api-reference/merchants/atualizar-regras-de-platform-fee-do-seller"}]}]},{"group":"Providers","pages":[{"openapi":"patch /v1/providers/{id}","title":"Atualizar configurações de provedores do merchant","href":"/api-reference/providers/atualizar-configuracoes-de-provider-de-merchant"}]},{"group":"Vendors","pages":[{"openapi":"get /v1/vendors","title":"Listagem de vendedores paginada","href":"/api-reference/vendors/listagem-paginada-de-vendedores"},{"openapi":"post /v1/vendors","title":"Criação de um novo vendedor","href":"/api-reference/vendors/criacao-de-um-novo-vendedor"},{"openapi":"patch /v1/vendors/{id}","title":"Atualizar um vendedor","href":"/api-reference/vendors/atualizacao-de-vendedor-pelo-id"},{"openapi":"get /v1/vendors/{id}","title":"Recuperar detalhes de um vendedor","href":"/api-reference/vendors/consultar-um-vendedor-pelo-id"},{"openapi":"delete /v1/vendors/{id}","title":"Deletar vededor pelo id","href":"/api-reference/vendors/deletar-vendedor-por-id"}]},{"group":"Sellers","pages":[{"openapi":"post /v1/sellers","title":"Criação de um novo recebedor","href":"/api-reference/sellers/criacao-de-um-novo-recebedor"},{"openapi":"get /v1/sellers/{id}","title":"Consultar um recebedor pelo ID","href":"/api-reference/sellers/consultar-um-recebedor-pelo-id"},{"openapi":"get /v1/sellers","title":"Consultar recebedores por listagem paginada","href":"/api-reference/sellers/consultar-um-recebedor-por-listagem-paginada"},{"openapi":"delete /v1/sellers/{id}","title":"Deletar recebedor por ID","href":"/api-reference/sellers/deletar-recebedor-por-id"},{"openapi":"patch /v1/sellers/{id}","title":"Atualização de recebedor pelo ID","href":"/api-reference/sellers/atualizacao-de-recebedor-pelo-id"},{"openapi":"delete /v1/sellers/{id}/plan","title":"Desvincular plano de venda de um recebedor","href":"/api-reference/sellers/desvincular-plano-de-venda-de-um-recebedor"},{"title":"Alterar status de recebedor no Sandbox","openapi":"post /v1/sellers/{id}/status","href":"/api-reference/sellers/alterar-o-status-de-um-recebedor-no-ambiente-de-sandbox"},{"openapi":"post /v1/sellers/documents","title":"Upload de documento","href":"/api-reference/sellers/upload-de-documento"},{"openapi":"get /v1/sellers/documents","title":"Listar documentos","href":"/api-reference/sellers/listar-documentos"},{"openapi":"get /v1/sellers/documents/{documentId}","title":"Consultar documento","href":"/api-reference/sellers/consultar-documento"},{"openapi":"delete /v1/sellers/documents/{documentId}","title":"Deletar documento","href":"/api-reference/sellers/deletar-documento"},{"openapi":"get /v1/sellers/registration-reviews","title":"Listar processos de revisão cadastral","href":"/api-reference/sellers/listar-processos-de-revisao-cadastral"},{"openapi":"get /v1/sellers/{sellerId}/registration-reviews","title":"Listar processos de revisão cadastral de um recebedor","href":"/api-reference/sellers/listar-processos-de-revisao-cadastral-de-um-recebedor"},{"openapi":"post /v1/sellers/{sellerId}/registration-reviews/{processId}/submit","title":"Enviar os dados coletados de uma revisão cadastral","href":"/api-reference/sellers/enviar-dados-de-revisao-cadastral"}]},{"group":"Payouts","pages":[{"openapi":"get /v1/payouts/balance","title":"Consultar saldo","href":"/api-reference/payouts/consultar-saldo-de-payouts"},{"openapi":"get /v1/payouts/payment-batches","title":"Listar repasses","href":"/api-reference/payouts/listar-payment-batches"},{"openapi":"get /v1/payouts/payment-batches/{id}","title":"Consultar repasse pelo ID","href":"/api-reference/payouts/consultar-payment-batch-pelo-id"},{"openapi":"get /v1/payouts/payment-batches/{id}/orders","title":"Listar ordens de pagamento de um repasse","href":"/api-reference/payouts/listar-ordens-de-um-payment-batch"},{"openapi":"get /v1/payouts/orders","title":"Listar ordens de pagamento","href":"/api-reference/payouts/listar-ordens"},{"openapi":"get /v1/payouts/orders/{id}","title":"Consultar ordem de pagamento pelo ID","href":"/api-reference/payouts/consultar-ordem-pelo-id"}]},{"group":"Plans","pages":[{"openapi":"get /v1/subacquirer/plans","title":"Listar planos de venda","href":"/api-reference/subacquirer/listar-planos-de-venda"}]},{"group":"Prepayment","tag":"BETA","pages":[{"openapi":"get /v1/subacquirer/prepayment/receivables","title":"Consultar recebíveis disponíveis para antecipação","href":"/api-reference/prepayment/consultar-recebiveis-disponiveis-para-antecipacao"},{"openapi":"post /v1/subacquirer/prepayment","title":"Simular antecipação","href":"/api-reference/prepayment/simular-antecipacao"},{"openapi":"get /v1/subacquirer/prepayment","title":"Listar antecipações","href":"/api-reference/prepayment/listar-antecipacoes"},{"openapi":"get /v1/subacquirer/prepayment/{id}","title":"Recuperar detalhes de uma antecipação","href":"/api-reference/prepayment/consultar-antecipacao"},{"openapi":"post /v1/subacquirer/prepayment/{id}/commit","title":"Confirmar antecipação (aceite)","href":"/api-reference/prepayment/confirmar-antecipacao"}]},{"group":"Receipts","pages":[{"openapi":"post /v1/subacquirer/{transactionId}/receipts","title":"Gerar documento comprobatório de estorno","href":"/api-reference/receipts/gerar-documento-comprobatorio"}]},{"group":"Flows","pages":[{"openapi":"get /v1/flows","title":"Recuperar todos os fluxos paginado","href":"/api-reference/flows/recuperar-todos-os-fluxos-paginado"},{"openapi":"get /v1/flows/{id}","title":"Consultar um fluxo pelo id","href":"/api-reference/flows/consultar-um-fluxo-pelo-id"}]},{"group":"Webhooks","pages":[{"openapi":"get /v1/webhooks","title":"Listagem de webhooks cadastrados","href":"/api-reference/webhooks/listagem-de-webhooks-cadastrados"},{"openapi":"post /v1/webhooks","title":"Criação de novo webhook para notificação","href":"/api-reference/webhooks/criacao-de-novo-webhook-para-notificacao"},{"openapi":"get /v1/webhooks/{id}","title":"Recuperar detalhes de webhook","href":"/api-reference/webhooks/recuperar-detalhes-de-webhook"},{"openapi":"delete /v1/webhooks/{id}","title":"Deletar webhook pelo id","href":"/api-reference/webhooks/deletar-webhook-pelo-id"},{"openapi":"patch /v1/webhooks/{id}","title":"Atualizar webhook pelo id","href":"/api-reference/webhooks/atualizar-webhook-pelo-id"}]},{"group":"Settings","pages":[{"title":"Configurar link de pagamento personalizado","openapi":"post /v1/settings","href":"/api-reference/settings/criar-configuracao-de-link-de-pagamento"},{"title":"Recuperar configuração de link de pagamento personalizado","openapi":"get /v1/settings","href":"/api-reference/settings/recuperar-configuracao-de-link-de-pagamento"},{"title":"Editar configuração de link de pagamento","openapi":"patch /v1/settings","href":"/api-reference/settings/editar-configuracao-de-link-de-pagamento"}]}]},{"tab":"Analytics","pages":[{"title":"Analytics","href":"/analytics/intro"}]},{"tab":"Release Notes","pages":[{"title":"Release Notes","href":"/release-notes/2026-10-28-Release-Notes"}]}]},"title":"Criar regras de platform fee de um seller - Malga","buildId":"dpl_2xiSHD9XEvLsPGPcfoMtkLTB3dy9","deploymentId":"dpl_2xiSHD9XEvLsPGPcfoMtkLTB3dy9","dynamics":["10e4515597","c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["BannerMarkdown-B-Glu166.js","dist-zbf22OZA.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","clsx-Cs6nMGht.js","html-void-elements-mCSPHezU.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","OpenApiReferenceProvider-DmVyH30O.js","utils-BHQqGGOd.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-CD-E4BIt.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Bp5Lq9Ds.js","snippetPresets-C4xAVCFP.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-CgXVLxUC.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BF8I5oUf.js","shallow-Byd0lWnC.js","getApiPlaygroundDisplay-BGOZG1OK.js","CodeSnippet-CpvQL0CY.js","CodeSnippets-B8wkBKXa.js","Page-CBCH2P7b.js","getPastedJson-Ry3scI3Y.js","icon-D7a9HcdD.js","MethodPill-CJ8pmHhz.js","DuplicateIcon-rh1HJF0t.js","createIcon-DvGznqYs.js","DynamicMarkdown-Cc6AuSHS.js","SectionHeading-B4A0S-ep.js","axios-vUo_bRtp.js","Markdown-Cc16CX65.js","AssistantPageLink-C_fs-y5n.js"]}