Skip to main content
O checkout é a página de pagamento pronta da AbacatePay. Você escolhe os produtos, manda o link ao cliente e ele paga por Pix, cartão de crédito, boleto, Apple Pay ou Google Pay, sem você montar nenhuma tela. O vídeo também está em Checkout.

Quando usar o checkout

Use o checkout para cobrar um pedido uma vez. Cada checkout aceita um pagamento. Para outros jeitos de cobrar, cada tipo tem a sua rota: O tipo de cobrança é definido pela rota. O campo frequency aparece só na resposta e mostra o tipo: ONE_TIME no checkout, MULTIPLE_PAYMENTS no link de pagamento e SUBSCRIPTION na assinatura.

Como funciona o checkout

A url tem o formato https://app.abacatepay.com/pay/bill_.... Você pode mandar o link pelo WhatsApp ou por e-mail, ou redirecionar o cliente do seu site.

Regras

  • Um pagamento por checkout. Depois de pago, o checkout não aceita outro pagamento. Para receber várias vezes pelo mesmo link, use um link de pagamento.
  • Valor mínimo. O total é a soma de preço × quantidade dos itens e precisa ser de pelo menos R1,00.Comboletoentreasformasdepagamento,omıˊnimoeˊR 1,00. Com boleto entre as formas de pagamento, o mínimo é R 3,00.
  • Itens. Em items[].id, use o id do produto (prod_...) ou o externalId dele. quantity é opcional e vale 1 se você não mandar. Se o mesmo produto vier duas vezes, vale só o primeiro item.
  • Formas de pagamento. methods aceita PIX, CARD, BOLETO, APPLE_PAY e GOOGLE_PAY. Sem methods, o checkout oferece Pix e cartão. Em produção, só valem as formas liberadas na sua conta: as outras dão erro, como BOLETO is not available for this store.
  • Cupons. O checkout só aceita os cupons listados em coupons, com até 50 códigos. Sem a lista, a página não mostra o campo de cupom. Veja Cupons de desconto.
  • Idempotência por externalId. Se a loja já tem um checkout com o mesmo externalId, e ele não foi excluído, a API devolve esse checkout e ignora os dados novos. Use o id do pedido no seu sistema para não criar duas cobranças do mesmo pedido.
  • Sem prazo de validade. O checkout fica PENDING até ser pago. O que vence são o Pix e o boleto gerados dentro dele. Se vencerem, o cliente abre o link de novo e gera outro.
  • Cliente cadastrado. Com o customerId de um cliente que tem nome, e-mail e CPF/CNPJ, o checkout cobra esse cliente e não pede os dados pessoais.
  • Exclusão. Um checkout pendente pode ser excluído com POST /checkouts/delete, e o link para de abrir. Checkout pago não pode ser excluído.

Status do checkout

O link de pagamento tem status próprios, ACTIVE e CANCELLED. Veja Link de pagamento. O campo paidAmount começa null e é preenchido no pagamento, com o valor pago. Se o cliente aceitar um upsell, o valor dele é somado.

Pular as etapas de dados do cliente

Antes do pagamento, o checkout pede os dados pessoais (nome, e-mail, CPF/CNPJ e celular) e, quando aceita cartão, o endereço. Para tirar essas etapas, acrescente uma ou as duas flags à url do checkout:
As flags aceitam true ou 1, são independentes e valem no checkout e no link de pagamento. A etapa some de vez: não aparece no topo da página e o cliente não volta para ela. As flags não valem em checkout de assinatura, porque a cobrança recorrente precisa dos dados e do endereço do cliente. Também não valem em contas em que o cartão ainda passa pelo processador antigo, que exige os dados do titular. Com skip_customer, o checkout não mostra a oferta de upsell e o cliente não recebe o e-mail de confirmação da compra.

Para onde o cliente vai depois

completionUrl e returnUrl precisam usar http ou https. O vídeo do comprovante também está em Comprovante.

Formas de pagamento no checkout

Como personalizar o checkout

Em Sua Loja → Personalizar checkout, você muda a aparência de todos os checkouts da loja, inclusive dos links de pagamento: A prévia mostra o resultado na hora. Clique em Salvar para aplicar. A personalização do Modo Teste é separada da de produção: configure as duas.

Como criar um checkout pelo dashboard

1

Abra as cobranças

No menu, vá em Sua Loja → Cobranças e clique em Criar cobrança.
2

Preencha o checkout

  • Cliente (opcional): um cliente cadastrado. Com o cadastro completo, ele não preenche os dados na página.
  • Produtos: os produtos avulsos da loja. Produto com ciclo vai em Assinaturas.
  • Métodos de pagamento: Pix, cartão, boleto, Apple Pay e Google Pay, conforme o que a sua conta tem liberado.
  • Parcelas no cartão e Repassar a taxa do cartão ao cliente: aparecem quando a sua conta tem esses recursos.
  • Cupons (opcional), URL de finalização (opcional) e URL de retorno (opcional).
Clique em Cadastrar.
3

Mande o link

O checkout aparece na aba Checkout Abacate. No menu da linha, Ir para checkout abre a página de pagamento. Mande esse endereço ao cliente.
No mesmo menu, Ver detalhes mostra os dados do checkout. Depois do pagamento, aparecem Ver comprovante e Reembolsar.

Como criar um checkout pela API

1

Crie uma chave de API

Em Integração → API, crie uma chave com a permissão CHECKOUT:CREATE. Veja Chaves de API.
2

Crie o checkout

Só items é obrigatório. A resposta traz o checkout. Este trecho mostra os principais campos, e todos estão em Criar um checkout:
3

Mande o cliente para a url

Redirecione o cliente para data.url ou mande o link. Os valores da API são sempre em centavos: 10000 = R$ 100,00.
4

Confirme o pagamento

Libere o pedido quando chegar o webhook checkout.completed. Para conferir o status a qualquer momento, use Buscar um checkout.

Notificações

Os exemplos de cada evento estão em Eventos de checkout. Para cadastrar o endereço que recebe os eventos, veja Webhooks.

Testar no Modo Teste

Crie o checkout com o Modo Teste ligado ou com uma chave abc_dev_. Na página, o botão final vira Simular Pagamento. Em Sua Loja → Cobranças, o menu da linha também tem Simular pagamento. No cartão, use os cartões de teste.

Perguntas frequentes

Não. Ele fica PENDING até ser pago. O Pix e o boleto gerados dentro dele vencem, mas o cliente pode abrir o link de novo e gerar outro.
Não. Depois do pagamento, o checkout não aceita outro. Para um link que vários clientes pagam, use um link de pagamento.
A API devolve o checkout que já existe, com os dados da primeira chamada. Os itens e campos da segunda chamada são ignorados.
Sim. Em Sua Loja → Personalizar checkout, mude a logo, as cores, os cantos e o tema. Vale para todos os checkouts e links de pagamento da loja.
Sim. Crie o checkout com o customerId de um cliente com cadastro completo, ou acrescente ?skip_customer=true ao link. Veja como cada forma de pagamento se comporta.
O checkout continua PENDING e o link continua funcionando. Você pode reenviar o link ou excluir o checkout.
Não. Para devolver o dinheiro ao cliente, faça um reembolso.