Pular para o conteúdo principal
Versão: 2.0.0

Conceitos

Valores são inteiros

Todo valor na API do Ion é um inteiro na menor unidade da moeda — centavos para USD, ienes para JPY (que não tem subunidade, então ¥500 é 500, não 50000). amount: 4200 com currency: "usd" é $42,00.

Charges (cobranças)

Uma charge é uma única tentativa de mover dinheiro de um cliente para você. Criada em uma chamada, liquidada de forma assíncrona — succeeded significa autorizada, não necessariamente que os fundos já foram liquidados.

Clientes e métodos de pagamento

Um cliente é um registro reutilizável ao qual você associa um ou mais métodos de pagamento. Criar o cliente antecipadamente — em vez de passar dados brutos do cartão a cada charge — habilita checkout com cartão salvo e assinaturas.

Chaves de idempotência

Todo endpoint de escrita aceita um idempotency_key. Se uma requisição expirar e você repetir com a mesma chave, o Ion retorna o resultado original em vez de criar uma charge duplicada. Reutilizar a chave com um corpo diferente é tratado como erro (ver Erros). Gere as chaves no cliente, ligadas à ação de negócio (seu próprio ID de pedido), não aleatoriamente.

Assinaturas

Uma assinatura vincula um cliente a um plano e cobra periodicamente. Tem current_period_end; se a cobrança falhar, vai para past_due (não cancelada imediatamente), dando uma janela de dunning.

Reembolsos

Reembolsos referenciam uma charge e podem ser parciais. Podem ser emitidos múltiplas vezes contra a mesma charge desde que a soma não exceda o valor original.