GH GambleHub

Impostos: VAT, GST, GGR e retenção

1) Mapa de conceitos

VAT/GST é um imposto indireto sobre o consumo. Em vários países, as taxas de jogo estão isentas/excluídas do VAT, mas sujeitas a impostos individuais (duty/levy). No entanto, serviços (PSP, afiliados, provedores de conteúdo, SaaS) são frequentemente sob VAT/GST.

Imposto GGR (Gaming/Gambling Duty) - Imposto sobre lucros brutos de jogos:
  • 'GGR = Stakes - Payouts'
  • Muitas vezes há ajustes (jackpots, bónus, apostas void) - estabeleça na política.
  • NGR - 'GGR - Bonuses - Provider revenue share - Platford fees - Taxes para apostas (se aplicável)' - margem gerencial.
  • Withholding Tax (WHT) é um imposto na fonte para pagamentos de serviços/royalties (afiliados, provedores de jogos, consultores). A taxa depende do contrato de dupla tributação (DTT) e do status do destinatário (W-8/W-9/certificados de residência).
  • Place of Supply/Nexus - regras que definem onde pagar VAT/GST/GGR (localização do jogador, licenças, local de serviço).

2) Quando surge VAT/GST e quando não

2. 1. Operações com jogador (B2C)

Em muitas jurisdições, as taxas/ganhos são isentas de VAT - em vez disso, imposto de jogo (GGR/turnover duty).
Bónus e fricções: Não é objeto de VAT, mas afeta a GGR/NGR e a base de impostos sobre impostos de jogo (veja as regras locais de bónus).

2. 2. Transações contábeis (B2B)

PSP/Aquirer, antifrode, KYC, hospedagem, SaaS, afiliados - normalmente sujeitos a VAT/GST de acordo com as regras de serviços.
É possível reverse a carga (autoatendimento do destinatário) e/ou WHT para pagamentos.
Royalties/RevShare aos estúdios é um potencial objeto de WHT (como royalties/serviços) + um possível VAT no local do destinatário/fornecedor.

2. 3. Malas de borda

DCC/conversão, FX-spread: não é VAT para jogo, mas o custo do serviço financeiro (normalmente sem VAT ou com regimes especiais) - leve em conta separadamente.
Comissão por conclusões: B2C-fee pode ser objeto de VAT como pagamento por serviço de plataforma.

3) Place of Suply e esquema de cálculo

Atividades de jogo: muitas vezes está ligado à jurisdição da licença e/ou localização do jogador. A chave é onde surge o imposto de jogo.
Serviços B2B: Local de implementação - Local do destinatário, aplicável reverse charge (o destinatário fatura e aceita a dedução).
Serviços digitais B2C (não jogos): O modo OSS/One-Stop Shop (UE) ou local GST está em vigor no local do cliente.

Prática: Segmenta os fluxos pelo país do jogador, país do contratante, tipo de serviço e regime fiscal (GGR, VAT, WHT).

4) Fórmulas e políticas de contabilidade

4. 1. GGR e imposto sobre a GGR


GGR = Σ Stakes_settled − Σ Payouts_settled
Tax_GGR = GGR × rate_GGR

Defina se os bónus, os jackpots, as apostas canceladas estão incluídos na base de dados.

4. 2. VAT/GST Serviços (por exemplo, reverse carga)


VAT_due (supplier side) = 0 (если reverse charge)
VAT_due (receiver side) = Net × rate_VAT
VAT_recoverable = VAT_due (if eligible for deduction)

4. 3. WHT (retenção na fonte)


WHT = Gross_Payment × rate_WHT(DTT/ domestic)
Net_to_Partner = Gross_Payment − WHT

Guarde a base da taxa, contrato, artigo DTT, certificados.

4. 4. NGR e «impostos na composição»


NGR = GGR − Bonuses − Provider RevShare − Platform Fees − Gaming Taxes

Anote NGR policy e a versão v1/v2 da fórmula para comparar períodos.

5) Contabilidade e fios (simplificado)

Imposto de jogo (GGR duty) é atribuído:
  • DT: Despesas Tributárias (GGR)
  • TC: Obrigações fiscais
VAT de serviços de contêineres (reverse carga):
  • DT: Gastos com VAT (auto-supressão)
  • Tac: IVA a pagar
  • DT: IVA para reembolso
  • TC: Despesas VAT (se tiver direito a dedução - troca)
Retenção WHT no pagamento à afiliada/estúdio:
  • DT: Custos de marketing/royalties
  • TC: Credor do sócio (bruto)
  • No pagamento: Dt: Credor do sócio (bruto) → Tac: Banco (neto), Tac: Impostos a pagar (WHT)

6) Modelo de dados (mínimo)


ref. tax_regimes (
regime_id PK, name, type -- VAT      GST      GGR      WHT
, country, rate, basis -- GGR    Net    Gross    Service
, effective_from, effective_to, meta
)

ref. place_rules (
rule_id PK, flow -- B2C_GAME      B2B_SERVICE      B2C_SERVICE
, country_source, country_destination, place, vat_mode -- STANDARD      REVERSE_CHARGE      EXEMPT
, meta
)

finance. tax_events (
id PK, tx_id, user_id, counterparty_id, flow_type,
base_amount_reporting, tax_type, tax_rate, tax_amount_reporting,
country_source, country_destination, place_rule_id,
evidence -- geoip, KYC country, billing country, ip logs, etc.
, occurred_at, created_at, version, meta
)

finance. withholding_ledger (
id PK, partner_id, country_source, country_dest,
gross_amount, wht_rate, wht_amount, treaty_article, certificate_ref,
period, paid_at, meta
)

dw. ggr_rollup (
d, geo, product, stakes, payouts, bonuses, jackpots, ggr, ggr_tax
)

7) ETL/processamento

1. Segmentação de eventos: 'flow _ tipo' (game B2C, service B2B, payouts, affiliate).
2. Atribuição de modo: por 'ref. place_rules` → VAT mode (standard/reverse/exempt).
3. Cálculo de bases e impostos: GGR, VAT/GST, WHT; logar a versão das fórmulas.
4. Pista Dock: armazenar evidence local de implementação (país KYC, IP, billing, BIN, geo PSP).
5. Agregações de 'dw. ggr_rollup`, `withholding_ledger`, `vat_subledger`.
6. Relatório regulador/fiscal, atitudes com parceiros (gross↔net para WHT).

8) Modelos SQL

8. 1. GGR por dia/país

sql
SELECT
DATE(settled_at) AS d,
country_player  AS geo,
SUM(stake_amount_reporting) AS stakes,
SUM(payout_amount_reporting) AS payouts,
SUM(stake_amount_reporting) - SUM(payout_amount_reporting) AS ggr
FROM dw. game_settled
WHERE settled_at BETWEEN:from AND:to
GROUP BY 1,2;

8. 2. Cobrança de imposto GGR

sql
INSERT INTO finance. tax_events (tx_id, flow_type, base_amount_reporting, tax_type, tax_rate, tax_amount_reporting, occurred_at, version)
SELECT
NULL, 'B2C_GAME', g. ggr, 'GGR', r. rate, g. ggr r. rate, g. d, 'ggr_v1'
FROM dw. ggr_rollup g
JOIN ref. tax_regimes r
ON r. type='GGR' AND r. country=g. geo
AND g. d BETWEEN r. effective_from AND r. effective_to;

8. 3. VAT para serviços reverse carga (B2B)

sql
SELECT s. invoice_id, s. partner_country, s. our_country,
s. net_amount_reporting AS base,
r. rate AS vat_rate,
s. net_amount_reporting r. rate AS vat_due_rc
FROM dw. supplier_invoices s
JOIN ref. place_rules p
ON p. flow='B2B_SERVICE' AND p. country_source=s. partner_country AND p. country_destination=s. our_country
JOIN ref. tax_regimes r
ON r. type='VAT' AND r. country=s. our_country
WHERE p. vat_mode='REVERSE_CHARGE'
AND s. invoice_date BETWEEN r. effective_from AND r. effective_to;

8. 4. Relatório WHT para parceiros

sql
SELECT partner_id, country_source, country_dest,
SUM(gross_amount) AS gross,
AVG(wht_rate)   AS rate_applied,
SUM(wht_amount)  AS wht_total,
SUM(gross_amount - wht_amount) AS net_paid
FROM finance. withholding_ledger
WHERE period BETWEEN:p_from AND:p_to
GROUP BY 1,2,3;

9) Dashboards e KPI

GGR, GGR-Tax por país/produto; NGR após impostos e royalties.
VAT Exposure: VAT reverse/padrão, taxa de dedução.
WHT Map: retenção por países/parceiros, treaty savings (economia DTT).
Effective Tax Rate: `(GGRTax + VAT_non_recoverable + WHT_borne) / Revenue`.
Evidence Coverage: proporção de transações com um conjunto completo de provas de local de realização.
Variance Reports: divergências entre os cálculos e as declarações apresentadas.

10) Alertas e liminares

Evidence gap: proporção de transações sem 2 + confirmações geo independentes> X% - P1.
Rate draft: taxa aplicada ≠ guia (versão/período) - P1.
WHT misaplied: retenção não corresponde a DTT/certificado - P1.
GGR anataly: salto GGR £3gd/d ou participação errada de bônus na base de dados - investigação.
VAT não-recoverable spike: crescimento de VAT não-ajustável> Y% w/w.

11) Best pratices (curta)

1. Divida impostos de jogos (GGR/turnover) e VAT/GST sobre serviços: diferentes bases, diferentes contornos de referência.
2. Digite a versionização das fórmulas e guias de apostas; não mude a história sem «versão».
3. Guarde a evidência dos locais de implementação: país KYC, IP, billing, BIN, geo PSP.
4. Um witholding-ledger separado, associado a contratos, artigos DTT e certificados.
5. Para serviços B2B, aplique o reverse charge onde você deve; mantenha o registro do VAT de entrada.
6. Faça reconciação: base de cálculo da declaração ↔ ↔ pagamentos para o orçamento/certificados WHT.
7. Leve em conta separadamente os valores de VAT indetectáveis e não deduzidos.
8. Insira NGR policy (o que é subtraído e o que não é) para analistas estáveis.

12) Folha de cheque de implementação

  • Guias 'tax _ regimes', 'place _ rulas' com datas e versões.
  • Витрины `ggr_rollup`, `vat_subledger`, `withholding_ledger`.
  • Логика reverse charge и evidence enrichment (KYC/IP/BIN/PSP GEO).
  • Criação automática de tax _ events e relatórios de períodos.
  • Caminhos de cruzamento (variance) e alertas (evidence, apostas, WHT).
  • Processo doc: coleta de certificados de residência, W-8/W-9, posição DTT.
  • Políticas NGR/GGR e documentação de exceções (jackpots/bónus).

13) FAQ

Q: Se as taxas são isentas de VAT, isso significa que o VAT não existe?
A: Não. Serviços (PSP, afiliados, SaaS) e parte das opções de pagamento B2C ficam na área VAT/GST.

Como não «pagar mais» WHT?
A: Prepare o pacote DTT (certificado de residência, formulários W-8/W-9, apóstolos), e fixe a base da taxa e a data de validade.

Os bónus reduzem a base GGR?
Depende da jurisdição. Precisamos de uma política de bónus e de um regulador.

Q: Qual a rota para a base de impostos?
A: Histórico na data de reconhecimento da base (setled _ at para a GGR; data da conta/serviço - para VAT). Para relatórios - Fixe 'fx _ rate _ at _ tax _ point'.

Currículo

Os impostos no iGaming são três mundos diferentes: impostos sobre jogos (GGR/turnover), impostos indiretos (VAT/GST) e retenção sobre a fonte (WHT). Segmentação clara de fluxos, versões de apostas e fórmulas, ledgers individuais para VAT/WHT, base de provas de local de implementação e confecção automatizada transformam «campo minado» em um processo controlado - sem surpresas para P&L e cash flow.

Contact

Entrar em contacto

Contacte-nos para qualquer questão ou necessidade de apoio.Estamos sempre prontos para ajudar!

Telegram
@Gamble_GC
Iniciar integração

O Email é obrigatório. Telegram ou WhatsApp — opcionais.

O seu nome opcional
Email opcional
Assunto opcional
Mensagem opcional
Telegram opcional
@
Se indicar Telegram — responderemos também por lá.
WhatsApp opcional
Formato: +indicativo e número (ex.: +351XXXXXXXXX).

Ao clicar, concorda com o tratamento dos seus dados.