Pagamentos parcelados e estratégias de juros
Este guia explica como realizar pagamentos parcelados com um POS Integrado usando a operação Sale. O parcelamento se comporta de forma idêntica em conexões USB e Rede. As regras e os planos dependem do país e da bandeira do cartão.
O que são pagamentos parcelados
Os pagamentos parcelados dividem o valor da transação em várias cobranças. O sistema de automação envia Sale com Installments, PlanId e Interest (e, opcionalmente, OperationMode) para que o terminal aplique o plano e os juros corretos. Se um parâmetro for omitido, o POS pode exibir a seleção de plano e de parcelas na tela. A disponibilidade depende da configuração do comércio e do terminal.
Antes de começar
Antes de realizar um pagamento parcelado:
- Um Connector deve ser criado e validado com
Polling - O Modo POS Integrado deve estar ativo
- O comércio e o terminal devem estar habilitados para transações parceladas
Passo 1: Execute uma venda parcelada
Para realizar um pagamento parcelado, chame a operação Sale com os parâmetros adequados. Se um valor necessário não for informado, o POS pede que o operador selecione o plano ou as parcelas manualmente.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
Amount | Long | Não | Valor da transação na moeda local. |
SaleType | Enum | Não | Deve ser Card para pagamentos parcelados. |
Installments | Int | Não | Número de parcelas. |
PlanId | String | Não | Identificador do plano de parcelamento (por exemplo, Argentina). Consulte Planos de Parcelamento e IDs de Plano. |
Interest | Enum | Não | Se o plano inclui juros: OnPosSelection, Interest ou NoInterest. |
OperationMode | Enum | Não | Quem calcula o valor final: CalculatedGetnet (o terminal calcula) ou CalculatedISV (sua aplicação calcula e envia o valor final). |
CallerId | String | Não | ID gerado pelo sistema de automação, necessário para consultar a transação depois com o Check Status. Sem caracteres especiais ou Unicode. |
As regras de parcelamento, os planos permitidos e as opções de juros dependem do país e da bandeira do cartão, e são validados pelo POS. Para a Argentina, consulte o anexo de Plan Ids. Se PlanId for plan_emisor ou plan_emisor_accelerated e o estabelecimento tiver “Plan Cuotas”, a resposta pode conter plan_getnet_simple em PlanId.
Esses parâmetros de parcelamento valem somente para vendas com cartão. Em vendas com QR Code, Installments, PlanId, Interest, OperationMode e Tip são ignorados — a carteira aplica o próprio parcelamento. Consulte Pagamento com QR Code.
O exemplo a seguir mostra como chamar uma venda com 3 parcelas e com juros:
var saleRequest = new SaleRequest
{
Amount = 120000,
SaleType = SaleType.Card,
Installments = 3,
PlanId = "plan_emisor_accelerated",
Interest = InterestType.Interest
};
var saleResult = await connector.SaleAsync(saleRequest);Depois que a requisição é iniciada, o POS conduz o fluxo da transação e a interação com o portador do cartão.
Passo 2: Trate a resposta
Uma venda parcelada bem-sucedida retorna a estrutura de resposta padrão de Sale. Veja abaixo um exemplo de resposta completa para uma venda parcelada:
{
"Code": 0,
"Message": "APPROVED",
"OperationMode": "CalculatedGetnet",
"AuthorizationCode": "551437",
"Amount": 120000,
"OriginalAmount": 120000,
"AccountingDate": "2025-08-25T16:11:23.0000000Z",
"RealDate": "2025-08-25T13:11:50.8570000-03:00",
"SaleType": "Card",
"CommerceCode": "1234567890",
"TerminalId": "GET00123",
"PlanId": "plan_emisor_accelerated",
"Interest": "Interest",
"Installments": 3,
"CallerId": "123456-789000",
"CardBin": "84168075"
}Como mostrado acima, a resposta traz o plano final e os detalhes de juros aplicados pelo POS. Sempre verifique o parâmetro Code antes de processar o resultado.
Juros e modo de operação
Os parâmetros Interest e OperationMode controlam quem calcula e aplica os juros.
Valores de Interest:
- OnPosSelection: O usuário escolhe no POS se o plano inclui juros.
- Interest: O plano inclui cobrança de juros.
- NoInterest: O plano não inclui juros.
Valores de OperationMode:
- CalculatedGetnet: O terminal calcula o valor final e os juros. O cálculo usa regras de negócio internas e dados coletados em tempo real durante o fluxo de pagamento. Esse é o padrão quando
OperationModeé omitido. Portanto, o valor enviado pode mudar conformePlanId,InteresteInstallments. - CalculatedISV: Sua aplicação calcula e envia o valor final a ser cobrado; o terminal não o altera.
Em qualquer um dos modos, a resposta sempre retorna o valor final cobrado, o Installments usado e os demais campos que descrevem as condições de pagamento confirmadas.
Comportamento com cartão de crédito
Quando um cartão de crédito é detectado, o terminal valida quais planos e configurações de juros o estabelecimento permite. Isso resulta em três comportamentos:
- Nenhum dado de parcelamento enviado (
OperationMode,PlanId,Interest,Installments) — o terminal pede que o operador selecione o plano e o número de parcelas no dispositivo. - Dados enviados, mas não permitidos para o estabelecimento ou para o cartão — o terminal deixa o usuário escolher outra opção, porque as condições solicitadas não são autorizadas.
- Dados enviados e válidos — o terminal pula as telas de seleção de plano, juros e parcelas e vai direto para a confirmação do pagamento.
Combinações de parâmetros
A combinação de PlanId, OperationMode, Interest e Installments determina o resultado:
| PlanId | OperationMode | Interest | Installments | Resultado |
|---|---|---|---|---|
contado | CalculatedISV | NoInterest | 1 (ou nenhum) | Processa a transação com uma única parcela. |
contado | CalculatedISV | NoInterest | 2–99 | Erro — contado não permite mais de uma parcela. |
contado | CalculatedISV | Interest | qualquer | Erro — CalculatedISV não permite parcelamento com juros. |
contado | CalculatedGetnet | NoInterest | 1 (ou nenhum) | Processa a transação com uma única parcela. |
contado | CalculatedGetnet | NoInterest | 2–99 | Erro — contado não permite mais de uma parcela. |
contado | CalculatedGetnet | Interest | 1 | Erro — contado não permite transações com juros. |
contado | CalculatedGetnet | Interest | 2–99 | Erro — contado não permite mais de uma parcela. |
| Outros planos | CalculatedISV | NoInterest | nenhum | Solicita as parcelas na tela. |
| Outros planos | CalculatedISV | NoInterest | 1–99 | Verifica se o número de parcelas é permitido; se não for, solicita na tela. |
| Outros planos | CalculatedISV | Interest | qualquer | Erro — CalculatedISV não permite parcelamento com juros. |
| Outros planos | CalculatedGetnet | NoInterest | nenhum | Solicita as parcelas na tela. |
| Outros planos | CalculatedGetnet | NoInterest | 1–99 | Verifica se o número de parcelas é permitido; se não for, solicita na tela. |
| Outros planos | CalculatedGetnet | Interest | nenhum | Solicita as parcelas na tela. |
| Outros planos | CalculatedGetnet | Interest | 1–99 | Verifica se o número de parcelas é permitido; se não for, solicita na tela. |
A disponibilidade também depende do plano selecionado, do país e da bandeira do cartão. Consulte Planos de Parcelamento e IDs de Plano.
Próximos passos
- Para a operação Sale básica e os parâmetros sem parcelamento, consulte o guia Pagamento em Passo Único.
- Para aceitar pagamentos com carteira digital, consulte o guia Pagamento com QR Code.
- Para a lista completa de planos disponíveis e as regras específicas de cada país, consulte a Referência de Planos de Parcelamento.