Como corrigir o cálculo de comissões do Revenue Sharing no Tutor LMS
O que é comissão errada no Revenue Sharing do Tutor LMS?
O Revenue Sharing do Tutor LMS é o recurso que divide a receita de cada venda de curso entre o administrador da plataforma e o instrutor que criou o curso. Ele é ativado em Tutor LMS, Configurações, Monetization, pela opção Enable Revenue Sharing, e o corte é definido no campo Sharing Percentage, que distribui o valor em porcentagem entre admin e instrutor. Quando esse cálculo sai errado, o instrutor recebe um valor menor ou maior do que o combinado e o relatório de ganhos passa a não bater com as vendas reais.
O ponto que mais gera confusão é o momento em que a comissão é gravada. O Tutor LMS calcula e registra o earning do instrutor no instante da venda, usando o Sharing Percentage vigente naquele momento. Alterar a porcentagem depois não recalcula vendas antigas, então registros gerados antes da mudança permanecem com o valor antigo. Some a isso a opção Deduct Fees, que retira uma taxa fixa ou percentual do valor total antes da divisão, e o resultado é uma comissão que parece errada quando na verdade segue uma configuração que o administrador não revisou.
Como identificar
- No painel do instrutor, em Dashboard e Earnings, o valor recebido por venda não corresponde ao Sharing Percentage configurado em Monetization.
- O relatório do addon de relatórios (Reports) mostra o ganho do admin e do instrutor somando menos que o preço pago pelo aluno, sem explicação visível.
- Após alterar o Sharing Percentage, vendas novas usam o percentual novo, mas as antigas continuam com o valor anterior no histórico de Earnings.
- O instrutor reclama que a comissão veio menor do que o combinado, e o valor descontado bate exatamente com uma taxa configurada em Deduct Fees.
- Em instalações com a moeda configurada com casas decimais, o total dividido fica com diferença de centavos por causa de arredondamento na divisão percentual.
Como prevenir
- Defina o Sharing Percentage e a política de Deduct Fees logo na configuração inicial, antes de liberar o primeiro curso pago, para que todos os earnings nasçam com a divisão correta.
- Documente em que data cada alteração do Sharing Percentage foi feita, já que o Tutor LMS não recalcula vendas antigas e o histórico fica com percentuais diferentes.
- Combine por escrito com cada instrutor se a porcentagem incide sobre o valor cheio ou sobre o valor já com taxa descontada, para alinhar a expectativa com o que o Deduct Fees realmente faz.
- Evite trocar o autor de um curso já vendido; se precisar, registre que os earnings antigos continuam vinculados ao instrutor original.
- Confira o relatório de ganhos periodicamente, somando a parte do admin e do instrutor para garantir que batem com o preço pago pelo aluno menos as taxas.
Causa
- O campo Sharing Percentage em Tutor LMS, Configurações, Monetization está definido com um corte diferente do combinado com o instrutor (por exemplo, 70 por cento para o admin em vez de para o instrutor), invertendo ou reduzindo a parte de quem ensina.
- A opção Deduct Fees está ativa com um Fee Amount em valor fixo ou percentual que é retirado do total da venda antes da divisão, então o instrutor recebe a porcentagem sobre um valor já reduzido, e não sobre o preço cheio do curso.
- O Sharing Percentage foi alterado depois que vendas já tinham ocorrido: o Tutor LMS grava o earning no momento da compra com o percentual vigente e não recalcula registros passados, deixando o histórico com valores de configurações diferentes.
- O Enable Revenue Sharing foi ativado depois de já existirem cursos vendidos, então as vendas anteriores não geraram divisão de comissão e aparecem zeradas ou só para o admin no relatório de ganhos.
- Um curso foi atribuído a um instrutor diferente do autor original (troca de author do post do curso) após a venda, fazendo o earning ficar vinculado ao instrutor antigo enquanto o relatório atual mostra o novo.
Como resolver
- Confirme o Sharing Percentage em Monetization: Abra as configurações de monetização e verifique para quem está indo cada fatia. O Sharing Percentage define em porcentagem como a receita é dividida entre admin e instrutor, então confirme que o valor reservado ao instrutor é o combinado.
Painel WP -> Tutor LMS -> Configurações -> aba Monetization Confirme que Enable Revenue Sharing está ativo Ajuste o Sharing Percentage para o corte correto (ex.: instrutor 70, admin 30) e salve - Revise a opção Deduct Fees: Se uma taxa está sendo descontada antes da divisão, o instrutor recebe sobre um valor menor. Verifique o Deduct Fees e seu Fee Amount, pois essa taxa sai do total da venda antes do Sharing Percentage ser aplicado.
Painel WP -> Tutor LMS -> Configurações -> Monetization -> seção de taxas Verifique se Deduct Fees está ativo e o valor em Fee Amount & Type (fixo ou percentual) Desative Deduct Fees ou ajuste o Fee Amount conforme a política acordada e salve - Entenda que valores antigos não recalculam: O ganho é gravado no momento da venda com o percentual da época. Mudar o Sharing Percentage agora só vale para vendas futuras, então compare a data de cada earning com a data em que a configuração mudou antes de tratar como erro de cálculo.
Painel WP -> Tutor LMS -> Reports -> filtre por período Compare a data de cada earning com a data da última alteração do Sharing Percentage Trate só os registros posteriores à correção como referência do valor esperado - Confira o earning gravado no banco de dados: Para auditar um valor específico, consulte a tabela de earnings do Tutor LMS e compare o percentual gravado com a venda. Faça backup antes de qualquer leitura ou ajuste direto no banco.
Acesse o phpMyAdmin ou rode um cliente MySQL com acesso ao banco do site Liste os ganhos: SELECT * FROM wp_tutor_earnings ORDER BY created_at DESC LIMIT 20; Compare instructor_amount, admin_amount e instructor_rate de cada linha com a venda correspondente - Recalcule um earning específico via código quando necessário: Se um único registro ficou com percentual antigo e precisa ser corrigido, ajuste-o em ambiente de teste com um snippet que recalcula a divisão a partir do valor total da venda e do percentual atual, em vez de editar centavos à mão.
Faça backup do banco de dados antes de executar Rode o snippet da seção de código em um site de staging primeiro Confirme no relatório de Earnings que o valor recalculado bate com o esperado
<?php
/**
* Recalcula a divisao de um earning especifico do Tutor LMS a partir do
* valor total da venda e do Sharing Percentage atual do instrutor.
* Rode em STAGING e com backup. $earning_id = id da linha em wp_tutor_earnings.
*/
function full_tutor_recalcula_earning( $earning_id, $instructor_rate ) {
global $wpdb;
$table = $wpdb->prefix . 'tutor_earnings';
$row = $wpdb->get_row(
$wpdb->prepare( "SELECT course_price_total, deduct_fees_amount FROM {$table} WHERE earning_id = %d", $earning_id )
);
if ( ! $row ) {
return false;
}
// Base = preco total menos a taxa ja descontada (Deduct Fees), igual ao fluxo do plugin.
$base = (float) $row->course_price_total - (float) $row->deduct_fees_amount;
$instructor_amount = round( $base * ( $instructor_rate / 100 ), 2 );
$admin_amount = round( $base - $instructor_amount, 2 );
return $wpdb->update(
$table,
array(
'instructor_amount' => $instructor_amount,
'admin_amount' => $admin_amount,
'instructor_rate' => $instructor_rate,
'admin_rate' => 100 - $instructor_rate,
),
array( 'earning_id' => $earning_id ),
array( '%f', '%f', '%d', '%d' ),
array( '%d' )
);
}














