Por que os métodos de pagamento da Índia são importantes
UPI Dominance
A UPI processa mais de 20 bilhões de transações por mês, e muitos clientes indianos não têm um cartão internacional.
Low-Value Payments
A UPI é adequada para transações de alto volume e menor valor.
Subscription Support
Ao contrário da maioria dos métodos de pagamento alternativos, a UPI e os cartões emitidos na Índia, incluindo Visa, Mastercard e RuPay, oferecem suporte a pagamentos recorrentes por meio de mandatos do RBI.
Métodos compatíveis
A tabela lista cada método e indica se ele oferece suporte a assinaturas:
*As assinaturas exigem mandatos em conformidade com o RBI, com regras especiais de processamento. O atraso de processamento de 48 horas se aplica a cobranças recorrentes em todos os cartões emitidos na Índia, UPI e Apple Pay.
Um pagamento cobrado em INR deve ser de pelo menos ₹5.00 e, no mínimo, equivalente ao valor mínimo em USD: $0.50 para pagamentos únicos e $1.00 para assinaturas. Consulte Valores mínimos.
Configuração
Tipos de método da API
Passe estes valores emallowed_payment_method_types:
Exemplo: checkout focado na Índia
Esta sessão oferece UPI, cartões e Apple Pay a um cliente na Índia, com cobrança em INR:Requisitos para UPI
A UPI aparece no checkout somente quando todas estas condições são atendidas:- O país de cobrança é a Índia (
IN). - A moeda de cobrança é INR.
- Para assinaturas de merchants fora da Índia, o Adaptive Currency está habilitado. Checkouts únicos não precisam dele se o produto tiver preço em INR.
Assinaturas com mandatos do RBI
As assinaturas pagas com UPI ou cartões emitidos na Índia funcionam com mandatos do RBI (Reserve Bank of India), que adicionam regras inexistentes em outros métodos de pagamento.Como funcionam os mandatos do RBI
O cliente autoriza um mandato ao assinar. Cada cobrança de renovação aguarda 48 horas após uma notificação de pré-débito antes de o banco debitar os fundos:Tipos de mandato
O tipo de mandato depende de como o valor da assinatura se compara ao limite mínimo do mandato:
O valor registrado no banco do cliente é
max(mandate_floor, billing_amount). Quando o valor da cobrança está abaixo do limite mínimo, esse limite se torna o teto de autorização exibido ao cliente.
Alterações no plano: Se um upgrade gerar uma cobrança acima do limite do mandato existente, a cobrança falhará e o cliente deverá autorizar novamente.
Limite mínimo configurável do mandato
Defina o limite mínimo do mandato eletrônico para INR com o campomandate_min_amount_inr_paise, em paise de INR (₹1 = 100 paise).
Você pode substituir o padrão do sistema de ₹15.000 em três níveis:
Dodo Payments usa o primeiro valor definido: a substituição por solicitação, depois a configuração do merchant e, por fim, o padrão do sistema.
Para definir o limite mínimo, passe
mandate_min_amount_inr_paise no corpo da solicitação ao criar uma sessão de checkout. O endpoint preterido Create Subscription aceita o mesmo campo.
Um limite mínimo mais alto permite fazer cobranças únicas maiores posteriormente, como upgrades de plano ou excedentes baseados em uso, sem pedir que os clientes autorizem novamente. Um limite mínimo mais baixo mantém a autorização do cliente mais próxima do valor real da cobrança, mas deixa menos espaço para futuras cobranças variáveis.
O atraso de processamento de 48 horas
Uma cobrança de renovação em um cartão indiano ou na UPI é concluída aproximadamente 48 horas após a data de renovação. Esta é a diferença mais importante em relação aos pagamentos com cartões internacionais:1
Charge Initiated (Day 0)
Na data de renovação programada, Dodo Payments inicia a cobrança com o banco.
2
Pre-Debit Notification
O banco do cliente o notifica sobre o próximo débito.
3
48-Hour Window
Durante esse período, o cliente pode cancelar o mandato no aplicativo bancário.
4
Debit Completed (~48-51 Hours)
Após 48 horas, mais até 3 horas adicionais para o processamento bancário, o banco debita os fundos.
5
Webhook Sent
Dodo Payments envia o webhook
payment.succeeded após o débito efetivo, e não quando a cobrança é iniciada.Como lidar com a janela de 48 horas
Conceda acesso a partir do webhook de pagamento, não da data de renovação:Eventos de webhook para assinaturas indianas
Trate estes eventos para assinaturas pagas com UPI ou cartões emitidos na Índia:Testes
IDs de teste da UPI
No modo de teste, insira estes IDs da UPI para simular cada resultado:Números de teste de cartões indianos
Use estes cartões de teste emitidos na Índia:Práticas recomendadas
Plan for the 48-hour delay
Plan for the 48-hour delay
Crie sua aplicação para lidar com o intervalo entre o início da cobrança e o pagamento efetivo. Considere:
- Períodos de tolerância para o acesso à assinatura
- Comunicação clara aos clientes sobre o tempo de processamento
- Provisionamento orientado por webhooks, não por datas
Handle mandate cancellations
Handle mandate cancellations
Os clientes podem cancelar mandatos em seus aplicativos bancários a qualquer momento. Monitore os webhooks
subscription.on_hold e solicite que os clientes assinem novamente ou atualizem o método de pagamento.Set appropriate mandate amounts
Set appropriate mandate amounts
Para preços variáveis, como cobrança baseada em uso, verifique se um mandato sob demanda no limite mínimo do mandato (₹15.000 por padrão) cobre sua maior cobrança. Se as cobranças puderem excedê-lo, aumente o limite mínimo com
mandate_min_amount_inr_paise. Caso contrário, os clientes deverão autorizar um novo mandato.Offer UPI prominently
Offer UPI prominently
Para clientes indianos, torne a UPI a principal opção de pagamento. Muitos a preferem aos cartões porque estão familiarizados com ela e há menos atrito.
Solução de problemas
UPI not appearing at checkout
UPI not appearing at checkout
Verifique:
- O país de cobrança está definido como
IN? - A moeda de cobrança está definida como
INR? - Se você é um merchant fora da Índia, o Adaptive Currency está habilitado?
upi_intentestá incluído emallowed_payment_method_types?
country: "IN" no endereço de cobrança e billing_currency: "INR". Se o Adaptive Currency estiver desabilitado, a API ignora billing_currency; portanto, defina o preço do produto em INR.Subscription charge failed after upgrade
Subscription charge failed after upgrade
Causa: O novo valor da cobrança excede o limite do mandato existente: o limite mínimo do mandato (₹15.000 por padrão) ou o valor da assinatura, caso este seja maior.Solução: O cliente deve atualizar o método de pagamento para configurar um novo mandato com o limite correto.
Subscription on hold but customer claims they didn't cancel
Subscription on hold but customer claims they didn't cancel
Causa: O cliente pode ter cancelado o mandato durante a janela de 48 horas ou o banco pode ter recusado o débito.Solução: O cliente precisa autorizar o mandato novamente ou atualizar o método de pagamento.
Payment deduction delayed beyond 48 hours
Payment deduction delayed beyond 48 hours
Causa: Atrasos na API bancária podem prolongar o processamento em 2 a 3 horas.Solução: Isso é esperado. Crie seu sistema para lidar com atrasos de até aproximadamente 51 horas no total.
Mandate cancelled but subscription still active
Mandate cancelled but subscription still active
Causa: Um caso específico das regulamentações do RBI: cancelar um mandato durante a janela de processamento não cancela a assinatura imediatamente.Solução: A próxima cobrança falha e a assinatura passa para
on_hold. Monitore os webhooks para payment.failed.Páginas relacionadas
Payment Methods Overview
Veja todos os métodos de pagamento compatíveis.
Subscriptions
Documentação completa de assinaturas, incluindo mandatos do RBI.
Webhooks
Tratamento de webhooks para eventos de pagamento.
Testing Process
Todos os dados de teste, incluindo IDs da UPI e cartões indianos.