Introdução

Como dividir parte dos valores recebidos.

O split de pagamento é uma funcionalidade que permite "dividir" valores recebidos através dos pagamentos entre uma ou várias carteiras (contas ASAAS) automaticamente.

🚧

  • O split de pagamentos é uma funcionalidade exclusiva da API do ASAAS, não podendo ser utilizado ou gerenciado através do uso pelo site;
  • Caso não tenha uma integração API e queira utilizar o split, você poderá usar outras alternativas como o Pluga, Make ou nosso plugin para WooCommerce.
  • Se a cobrança estiver sendo utilizada como garantia em uma operação de crédito, mesmo que em outra instituição financeira, o split não poderá ser realizado;
  • Para realizar o split, é preciso possuir o walletId (ID da carteira) de todos os envolvidos no split. O walletId é um dado retornado automaticamente na criação de subcontas e também pode ser recuperado via requisição caso você possua a chave de API da conta destino.

Por exemplo, consideremos o seguinte cenário hipotético: João faz uma venda de R$ 200,00 e Marcelo deve receber 20% do valor da venda. Neste caso, a cobrança deve ser criada na conta do João (pois é ele quem fez venda ou prestou o serviço), e através das configurações de Split será indicado que Marcelo deve receber os 20% do valor da cobrança. Desta maneira, ao registrar o recebimento da cobrança, o Asaas fará o débito desses 20% do valor da cobrança da conta do João e creditará os 20% na conta de Marcelo.

📘

O valor do split sempre será feito em cima do netValue que é o valor da cobrança descontados os valores de taxas aplicadas.

Fluxo de funcionamento de um split

Fluxo de funcionamento de um split

Ao configurar o Split é possível informar tanto valor fixo quanto percentual sobre a cobrança. No caso de percentual, o valor a ser transferido é calculado com base no valor líquido (após o desconto da tarifa do Asaas) da cobrança. Em caso de estorno da cobrança, o Split também será estornado, ou seja, todas as contas que receberam o saldo da cobrança em questão terão a transferência estornada.

O que preciso para utilizar o split?

Para fazer Split de cobranças é necessário que você tenha o walletId de todas as contas Asaas envolvidas nas transação.

🚧

Não há limite no número de walletId a serem enviados no split. A limitação sempre será o valor líquido total da cobrança em casos de valores fixos e a distribuição de 100% nos splits em valores percentuais.

WalletId

O walletId é retornado pelo Asaas no momento da criação da conta via API. Caso você não o tenha armazenado ou a conta não tenha sido criada via API, acesse nossa seção recuperar walletId para mais detalhes sobre como obtê-lo.

🚧

Você não deve indicar a própria carteira (walletId) ao realizar um split. Toda a diferença líquida que não foi direcionada via split será automaticamente creditada ao emissor da cobrança. Caso a própria carteira seja enviada na requisição, a API retornará uma exceção.

Status de Split

Os status disponíveis para Splits são:

  • PENDING, AWAITING_CREDIT, CANCELLED, DONE, REFUSED e REFUNDED.

Caso o status do Split seja REFUSED também receberá o preenchimento do campo refusalReason:

  • RECEIVABLE_UNIT_AFFECTED_BY_EXTERNAL_CONTRACTUAL_EFFECT: Split não executado devido à existência de efeitos de contrato.

Bloqueio por divergência de split

No momento em que ocorre o recebimento ou a antecipação de uma cobrança, caso o valor total do split seja superior ao valor líquido a receber, o montante e o split correspondente são bloqueados. Uma notificação via webhook é enviada, informando o bloqueio e concedendo um prazo de 2 dias úteis para ajuste do split.

Se o ajuste do split for realizado dentro do prazo e o novo valor total for igual ou inferior ao valor bloqueado, o desbloqueio é efetuado e o split processado. No entanto, caso o ajuste não seja feito dentro do prazo estipulado, o bloqueio é encerrado automaticamente por expiração, e os splits são cancelados. Nesse cenário, uma nova notificação via webhook é enviada, informando a liberação do valor e o cancelamento do split.

Eventos do webhook utilizados para comunicação:
● Para o fluxo de bloqueio: PAYMENT_SPLIT_DIVERGENCE_BLOCK
● Para o fluxo de desbloqueio por expiração do prazo: PAYMENT_SPLIT_DIVERGENCE_BLOCK_FINISHED