Pix2DePix

Referência da API

Gerada de openapi.json — versão 1.0.0.

Gere cobranças Pix na sua plataforma e receba DePix.

O ponto que muda a sua integração: existe um atraso antifraude entre o Pix ser pago e o DePix ser liquidado. Uma cobrança paga fica em paid_pending_settlement antes de chegar a settled. Libere produto em settled, não em paid_pending_settlement.

Todos os valores são inteiros, em centavos de real.

Base: https://apiv2.pix2depix.com

Autenticação

Authorization: Bearer p2d_live_... em produção, p2d_test_... em sandbox. Gere no painel, em API. O segredo aparece uma única vez.

Endpoints

GET /v1/charges

Lista cobranças

Ordenadas da mais recente para a mais antiga. A paginação é por cursor: passe em startingAfter o id da última cobrança da página anterior.

ParâmetroOndeObrigatórioDescrição
externalIdquerynãoO id do pedido no seu sistema.
statusquerynão
createdAfterquerynão
createdBeforequerynão
startingAfterquerynãoid da última cobrança da página anterior.
limitquerynão

Respostas

CódigoSignifica
200Uma página de cobranças
400Parâmetro inválido
401Chave ausente, inválida ou revogada
429Limite atingido

POST /v1/charges

Cria uma cobrança

Devolve o QR Code e o copia-e-cola.

201 quando a cobrança nasce agora. 200 quando o mesmo externalId (ou a mesma Idempotency-Key) já tinha criado esta cobrança com o mesmo corpo — repetir a criação não duplica nada nem vira erro.

ParâmetroOndeObrigatórioDescrição
Idempotency-KeyheadernãoRetry seguro de rede. Se a resposta se perder, repita a requisição com a mesma chave: você recebe a cobrança original em vez de uma segunda.

Corpo

CampoTipoObrigatórioDescrição
amountInCentsintegersimValor bruto em centavos. Mínimo 1000 (R$ 10,00), máximo 500000 (R$ 5.000,00).
payerTaxNumberstringsimCPF ou CNPJ de quem vai pagar. Com ou sem pontuação. Obrigatório: é o provedor de Pix que exige, para identificar o pagador.
payerNamestringnãoNome de quem vai pagar. Não é conferido — depois do pagamento devolvemos o nome que o banco informou.
externalIdstringnãoO id do pedido no seu sistema. Opcional, mas é o que torna a criação idempotente: o mesmo valor nunca vira duas cobranças.
descriptionstringnãoSome na resposta e nos eventos. Não vai para o extrato do pagador.
metadataobjectnãoPares livres, devolvidos em toda resposta e em todo evento.
{
  "amountInCents": 25000,
  "payerTaxNumber": "529.982.247-25",
  "payerName": "Maria Silva",
  "externalId": "pedido-8891",
  "description": "Pedido #8891",
  "metadata": {
    "loja": "sp-01"
  }
}

Respostas

CódigoSignifica
200Cobrança já existia com este externalId e o mesmo corpo
201Cobrança criada
400Corpo inválido (invalid_request)
401Chave ausente, inválida ou revogada
402O provedor de Pix recusou (provider_error)
403Conta não liberada para cobrar (merchant_not_activated, charge_blocked, missing_merchant_id)
409external_id_conflict (mesmo externalId, corpo diferente), idempotency_key_conflict ou charge_processing (a original ainda está sendo criada — repita em 1s)
429Limite por chave atingido (rate_limited)

POST /v1/split-charges

Cria uma cobrança com split

Igual a POST /v1/charges, mas o DePix líquido é dividido entre as suas carteiras depois da retenção.

  • Taxa: a do seu plano + 1 ponto percentual, cobrada na mesma linha da conversão. A parcela fixa por depósito continua igual.
  • Divisão: uma única transação Liquid com uma saída por destino, proporcional aos percentuais, sobre amount.netInCents. A taxa de rede é nossa.
  • Quando: logo depois de charge.settled (o DePix chegou à carteira de split). O fim chega em charge.split.completed, com o txId; falha, em charge.split.failed.
  • A configuração é imutável. Consulta, listagem e cancelamento são as rotas de sempre (/v1/charges).

201/200 e idempotência funcionam como em POST /v1/charges — o split entra na comparação do corpo.

Guia passo a passo, com taxa, eventos e sandbox: Split de pagamento.

ParâmetroOndeObrigatórioDescrição
Idempotency-KeyheadernãoRetry seguro de rede. Se a resposta se perder, repita a requisição com a mesma chave: você recebe a cobrança original em vez de uma segunda.

Corpo

CampoTipoObrigatórioDescrição
amountInCentsintegersimValor bruto em centavos. Mínimo 1000 (R$ 10,00), máximo 500000 (R$ 5.000,00).
payerTaxNumberstringsimCPF ou CNPJ de quem vai pagar. Com ou sem pontuação. Obrigatório: é o provedor de Pix que exige, para identificar o pagador.
payerNamestringnãoNome de quem vai pagar. Não é conferido — depois do pagamento devolvemos o nome que o banco informou.
externalIdstringnãoO id do pedido no seu sistema. Opcional, mas é o que torna a criação idempotente: o mesmo valor nunca vira duas cobranças.
descriptionstringnãoSome na resposta e nos eventos. Não vai para o extrato do pagador.
metadataobjectnãoPares livres, devolvidos em toda resposta e em todo evento.
splitobjectsim{ destinations: [{ address, percent }] } — entre 2 e 10 destinos (ver DestinoSplit), percentuais com até duas casas somando exatamente 100, endereços diferentes.
{
  "amountInCents": 25000,
  "payerTaxNumber": "529.982.247-25",
  "payerName": "Maria Silva",
  "externalId": "pedido-8891",
  "description": "Pedido #8891",
  "metadata": {
    "loja": "sp-01"
  },
  "split": {
    "destinations": [
      {
        "address": "lq1qqf8er278e6nyvuwtgf39e6ewvdcnjupn9a86rzpx655y5lhkt0walu3djf9cklkxd3ryld97hu8h3xepw7sh2rlu7q45dcew5",
        "percent": 60
      },
      {
        "address": "ex1qw508d6qejxtdg4y5r3zarvary0c5xw7kxw5fx4",
        "percent": 40
      }
    ]
  }
}

Respostas

CódigoSignifica
200Cobrança já existia com este externalId e o mesmo corpo
201Cobrança criada
400Corpo inválido (invalid_request)
401Chave ausente, inválida ou revogada
402O provedor de Pix recusou (provider_error)
403Conta não liberada para cobrar (merchant_not_activated, charge_blocked, missing_merchant_id)
409external_id_conflict (mesmo externalId, corpo diferente), idempotency_key_conflict ou charge_processing (a original ainda está sendo criada — repita em 1s)
429Limite por chave atingido (rate_limited)
503Split indisponível no momento (split_unavailable). Crie sem split ou tente mais tarde.

GET /v1/charges/{id}

Consulta uma cobrança

Confirme por aqui antes de liberar produto. O webhook é o aviso rápido; esta rota é a verdade.

ParâmetroOndeObrigatórioDescrição
idpathsimO id que devolvemos na criação.

Respostas

CódigoSignifica
200A cobrança
401Chave ausente, inválida ou revogada
404Não existe nesta conta e neste ambiente (charge_not_found)
429Limite atingido

POST /v1/charges/{id}/cancel

Cancela uma cobrança não paga

Só antes do pagamento.

⚠️ O QR Code continua tecnicamente pagável depois do cancelamento: nosso provedor de Pix não tem como invalidá-lo. Se o Pix cair mesmo assim, o pagamento vence e a cobrança volta a andar — você recebe charge.paid_pending_settlement como em qualquer outra. Tire o QR da frente do seu cliente ao cancelar.

ParâmetroOndeObrigatórioDescrição
idpathsim

Respostas

CódigoSignifica
200Cobrança cancelada
401Chave ausente, inválida ou revogada
404Não encontrada
409Já paga, expirada ou cancelada (charge_not_cancelable)
429Limite atingido

GET /v1/account

Dados do comerciante, plano e taxa vigente

A taxa vem do seu plano assinado. Se você trocar de plano, ela muda aqui e nas cobranças novas — não guarde percentual no seu código.

Respostas

CódigoSignifica
200A conta
401Chave ausente, inválida ou revogada

POST /v1/webhooks/test

Dispara um evento de teste

Manda um charge.test para a URL configurada no painel, assinado igual a um evento de verdade. Serve para validar o seu código de conferência de assinatura.

Respostas

CódigoSignifica
202Evento enfileirado
401Chave ausente, inválida ou revogada
404Nenhuma URL de webhook configurada para este ambiente

POST /v1/test/charges/{id}/advance

Empurra uma cobrança de teste para o estado pedido

Existe só com chave p2d_test_. É como você exercita a espera da liquidação e os webhooks sem um Pix de verdade. As transições respeitam a mesma máquina de estados da produção: voltar atrás é 409 invalid_transition.

ParâmetroOndeObrigatórioDescrição
idpathsim

Corpo

CampoTipoObrigatórioDescrição
statuspaid_pending_settlement | settled | expired | refundedsim
{
  "status": "paid_pending_settlement"
}

Respostas

CódigoSignifica
200A cobrança no novo estado
401Chave ausente, inválida ou revogada
403Chamada com chave de produção (not_available_in_live)
404Não encontrada
409A cobrança não pode ir para esse estado (invalid_transition)

GET /v1/withdrawals

Lista saques

Ordenados do mais recente para o mais antigo. A paginação é por cursor: passe em startingAfter o id do último saque da página anterior.

ParâmetroOndeObrigatórioDescrição
externalIdquerynãoO id do saque no seu sistema.
statusquerynão
createdAfterquerynão
createdBeforequerynão
startingAfterquerynãoid do último saque da página anterior.
limitquerynão

Respostas

CódigoSignifica
200Uma página de saques
400Parâmetro inválido
401Chave ausente, inválida ou revogada
429Limite atingido

POST /v1/withdrawals

Cria um saque

O caminho inverso da cobrança: você manda DePix e recebe Pix na chave informada.

  • Valor: informe amountInCents (o Pix que quer receber, taxa por fora) ou depixAmountInCents (o DePix que vai enviar, taxa por dentro) — nunca os dois.
  • Taxa: R$ 3,00 fixos abaixo de R$ 100,00 de Pix; percentual daí para cima. A resposta traz os três números abertos em amount.
  • Sua taxa (opcional): merchantFeeBps cobra de quem saca uma taxa sua, que vai em DePix para o seu endereço padrão na mesma transação do repasse. Ex.: 1.000 DePix com 3% nossos e merchantFeeBps: 100 → R$ 960,00 no Pix. Para mostrar o valor antes, use GET /v1/withdrawals/quote.
  • Depois de criar: envie exatamente deposit.amountInCents de DePix para deposit.address, na Liquid. O endereço é só deste saque — não o reaproveite.
  • Quando o Pix sai: assim que o depósito confirma na rede, o saque vai para processing e o Pix é pago em seguida (withdrawal.paid, com o endToEndId).

Não há rota de cancelamento: um saque sem depósito não custa nada e morre parado.

Guia passo a passo, com taxa, eventos e sandbox: Saque.

ParâmetroOndeObrigatórioDescrição
Idempotency-KeyheadernãoRetry seguro de rede. Se a resposta se perder, repita a requisição com a mesma chave: você recebe o saque original em vez de um segundo.

Corpo

CampoTipoObrigatórioDescrição
amountInCentsintegernãoO Pix que você quer receber, em centavos. A taxa sai por fora: você envia este valor mais a taxa.
depixAmountInCentsintegernãoOu o DePix que você vai enviar, em centavos. A taxa sai por dentro, e o Pix é o que sobra.
merchantFeeBpsintegernãoA sua taxa sobre quem saca, em pontos-base (100 = 1%, até 10%). Incide sobre o mesmo valor que a nossa e vai em DePix para o seu endereço padrão do painel, na mesma transação do repasse. Exige endereço padrão cadastrado (merchant_address_missing).
pixKeyTypecpf | cnpj | email | telefone | aleatoriasim
pixKeystringsimA chave que recebe o Pix. Normalizamos o formato; chave inválida para o tipo é invalid_request.
payeeTaxNumberstringsimCPF ou CNPJ do dono da chave — é a titularidade que o provedor confere. Quando a chave é um CPF/CNPJ, os dois precisam ser o mesmo documento.
externalIdstringnãoO id do saque no seu sistema. Dá idempotência de graça: o mesmo valor nunca vira dois saques.
descriptionstringnão
metadataobjectnãoAté 20 chaves. Volta na consulta e no webhook.
{
  "amountInCents": 100000,
  "pixKeyType": "aleatoria",
  "pixKey": "6a4f5c1e-8b2d-4a7f-9c3e-1d2b3a4c5d6e",
  "payeeTaxNumber": "529.982.247-25",
  "externalId": "saque-77"
}

Respostas

CódigoSignifica
200Saque já existia com este externalId e o mesmo corpo
201Saque criado
400Corpo inválido, ou o valor fora dos limites (invalid_request)
401Chave ausente, inválida ou revogada
403Conta não liberada para sacar (merchant_not_activated, charge_blocked)
409external_id_conflict (mesmo externalId, corpo diferente), idempotency_key_conflict ou withdrawal_processing (o original ainda está sendo criado — repita em 1s)
422merchantFeeBps informado, mas a conta não tem endereço DePix padrão (merchant_address_missing)
429Limite por chave atingido (rate_limited)
503Saque temporariamente indisponível (withdrawal_unavailable)

GET /v1/withdrawals/quote

Cota um saque

Os valores que o saque teria, sem criar nada. É o número para mostrar a quem saca antes de confirmar: a conta é a mesma da criação, então o saque criado com os mesmos parâmetros sai com os mesmos valores.

Informe exatamente um de amountInCents (Pix que quer receber) ou depixAmountInCents (DePix que vai enviar). merchantFeeBps é a sua taxa, como na criação; aqui não exige endereço padrão.

ParâmetroOndeObrigatórioDescrição
amountInCentsquerynãoO Pix que quem saca quer receber. Taxas por fora.
depixAmountInCentsquerynãoOu o DePix que vai enviar. Taxas por dentro.
merchantFeeBpsquerynãoA sua taxa, em pontos-base (100 = 1%).

Respostas

CódigoSignifica
200A cotação
400Os dois valores (ou nenhum), valor fora dos limites ou Pix abaixo de R$ 10,00 depois das taxas (invalid_request)
401Chave ausente, inválida ou revogada
429Limite atingido

GET /v1/withdrawals/{id}

Consulta um saque

O estado de agora. Enquanto o DePix não chega, o saque fica em awaiting_deposit.

ParâmetroOndeObrigatórioDescrição
idpathsimO id que a criação devolveu.

Respostas

CódigoSignifica
200O saque
401Chave ausente, inválida ou revogada
404Não encontrado nesta conta (withdrawal_not_found)
429Limite atingido

POST /v1/test/withdrawals/{id}/advance

Empurra um saque de teste para o estado pedido

Existe só com chave p2d_test_. No sandbox ninguém envia DePix: é esta rota que faz o depósito chegar e o Pix cair, para você exercitar withdrawal.processing e withdrawal.paid. Voltar atrás é 409 invalid_transition.

ParâmetroOndeObrigatórioDescrição
idpathsim

Corpo

CampoTipoObrigatórioDescrição
statusprocessing | paid | failedsim
{
  "status": "processing"
}

Respostas

CódigoSignifica
200O saque no novo estado
401Chave ausente, inválida ou revogada
403Chamada com chave de produção (not_available_in_live)
404Não encontrado (withdrawal_not_found)
409O saque não pode ir para esse estado (invalid_transition)

Webhook

POST <sua URL>

Evento de cobrança

Enviamos para a URL que você configurou no painel a cada mudança de estado.

A entrega é at-least-once: o mesmo evento pode chegar mais de uma vez. Deduplique pelo campo id.

Responda 2xx rápido. Qualquer outra coisa — inclusive 3xx — conta como falha e entra na fila de retentativa, que insiste por até 24h com espera crescente.

ParâmetroOndeObrigatórioDescrição
X-P2D-Event-IdheadersimId do evento. É por ele que você deduplica.
X-P2D-Event-Typeheadersim
X-P2D-TimestampheadersimEpoch em segundos. Recuse o que estiver a mais de 300s do seu relógio.
X-P2D-Signatureheadersimv1= + HMAC-SHA256 de <timestamp>.<corpo bruto> com o segredo do webhook, em hex.

Corpo

CampoTipoObrigatórioDescrição
idstringsimImutável. Deduplique por ele.
typecharge.awaiting_payment | charge.paid_pending_settlement | charge.settled | charge.expired | charge.canceled | charge.failed | charge.refunded | charge.split.completed | charge.split.failed | withdrawal.processing | withdrawal.paid | withdrawal.failed | charge.testsim
createdAtstringsim
environmentlive | testsim
dataobjectsimUm objeto por família de evento: charge.* traz charge, withdrawal.* traz withdrawal.

Respostas

CódigoSignifica
200Recebido. Qualquer 2xx serve.

Objetos

CriarCobranca

CampoTipoObrigatórioDescrição
amountInCentsintegersimValor bruto em centavos. Mínimo 1000 (R$ 10,00), máximo 500000 (R$ 5.000,00).
payerTaxNumberstringsimCPF ou CNPJ de quem vai pagar. Com ou sem pontuação. Obrigatório: é o provedor de Pix que exige, para identificar o pagador.
payerNamestringnãoNome de quem vai pagar. Não é conferido — depois do pagamento devolvemos o nome que o banco informou.
externalIdstringnãoO id do pedido no seu sistema. Opcional, mas é o que torna a criação idempotente: o mesmo valor nunca vira duas cobranças.
descriptionstringnãoSome na resposta e nos eventos. Não vai para o extrato do pagador.
metadataobjectnãoPares livres, devolvidos em toda resposta e em todo evento.

Cobranca

CampoTipoObrigatórioDescrição
idstringsimNosso id. 24 caracteres hexadecimais.
externalIdstringnão
statuscreated | awaiting_payment | paid_pending_settlement | settled | expired | canceled | failed | refundedsimVeja a tabela de status.
environmentlive | testsim
amountValoressimA taxa é uma parcela fixa por depósito mais um percentual do seu plano.
pixPixsim
settlementLiquidacaosimO caminho do dinheiro depois do pagamento.
payerobjectsim
descriptionstringnão
metadataobjectnão
createdAtstringsim
updatedAtstringsim
splitSplitnãoSó em cobranças criadas por POST /v1/split-charges.

Valores

A taxa é uma parcela fixa por depósito mais um percentual do seu plano.

CampoTipoObrigatórioDescrição
grossInCentsintegersimO que o seu cliente paga no Pix.
feeBpsintegersimPercentual do plano em pontos-base. 199 = 1,99%.
feeFixedInCentsintegersimParcela fixa por depósito.
feeInCentsintegersimFixa + percentual.
netInCentsintegersimO que chega em DePix na sua carteira.

Pix

CampoTipoObrigatórioDescrição
qrCodestringnãoCopia-e-cola. É isto que vira QR Code na sua tela.
qrCodeImageUrlstringnãoImagem pronta do QR. Pode não vir — gere o QR do qrCode se preferir.
expiresAtstringnãoPassou disso, a cobrança vira expired.

Liquidacao

O caminho do dinheiro depois do pagamento.

CampoTipoObrigatórioDescrição
delayHoursintegernãoRetenção antifraude entre o Pix pago e o DePix liquidado.
estimatedAtstringnãoQuando o DePix deve sair. Só existe depois do pagamento — é a data que você mostra ao seu cliente.
paidAtstringnão
settledAtstringnão
blockchainTxIdstringnãoComprovante on-chain na Liquid. Só depois de settled.

ListaDeCobrancas

CampoTipoObrigatórioDescrição
dataCobranca[]sim
hasMorebooleansimSe true, peça a próxima página com startingAfter no id do último item.

Conta

CampoTipoObrigatórioDescrição
merchantIdstringsimSeu identificador no provedor de Pix.
emailstringsim
environmentlive | testsimO ambiente da chave que você usou.
planobjectsim
feeFixedInCentsintegersimParcela fixa por depósito.
limitsobjectsim
settlementDelayHoursintegersimRetenção antifraude aplicada às cobranças.
webhookobjectnão

Evento

CampoTipoObrigatórioDescrição
idstringsimImutável. Deduplique por ele.
typecharge.awaiting_payment | charge.paid_pending_settlement | charge.settled | charge.expired | charge.canceled | charge.failed | charge.refunded | charge.split.completed | charge.split.failed | withdrawal.processing | withdrawal.paid | withdrawal.failed | charge.testsim
createdAtstringsim
environmentlive | testsim
dataobjectsimUm objeto por família de evento: charge.* traz charge, withdrawal.* traz withdrawal.

Erro

O formato é o mesmo em todos os endpoints e em todos os códigos HTTP.

CampoTipoObrigatórioDescrição
errorobjectsim

DestinoSplit

CampoTipoObrigatórioDescrição
addressstringsimEndereço Liquid que recebe esta parte. Validado na criação (formato e checksum).
percentnumbersimParte do valor líquido, com até duas casas. A soma dos destinos precisa ser exatamente 100.

CriarCobrancaComSplit

CampoTipoObrigatórioDescrição
amountInCentsintegersimValor bruto em centavos. Mínimo 1000 (R$ 10,00), máximo 500000 (R$ 5.000,00).
payerTaxNumberstringsimCPF ou CNPJ de quem vai pagar. Com ou sem pontuação. Obrigatório: é o provedor de Pix que exige, para identificar o pagador.
payerNamestringnãoNome de quem vai pagar. Não é conferido — depois do pagamento devolvemos o nome que o banco informou.
externalIdstringnãoO id do pedido no seu sistema. Opcional, mas é o que torna a criação idempotente: o mesmo valor nunca vira duas cobranças.
descriptionstringnãoSome na resposta e nos eventos. Não vai para o extrato do pagador.
metadataobjectnãoPares livres, devolvidos em toda resposta e em todo evento.
splitobjectsim{ destinations: [{ address, percent }] } — entre 2 e 10 destinos (ver DestinoSplit), percentuais com até duas casas somando exatamente 100, endereços diferentes.

Split

Só em cobranças criadas por POST /v1/split-charges.

CampoTipoObrigatórioDescrição
statuspending | sending | broadcast | completed | failedsimpending: aguardando o DePix liberado. sending/broadcast: transação montada e transmitida, aguardando confirmação. completed: confirmada na Liquid. failed: o envio falhou; o DePix segue guardado e a equipe foi avisada.
planFeeBpsintegersimTaxa do seu plano no momento da cobrança. amount.feeBps já inclui o +1 ponto percentual do split.
destinationsobject[]sim
txIdstringnãoTransação Liquid do split — uma só, com uma saída por destino.
completedAtstringnão
failureReasonstringnão

CriarSaque

Informe exatamente um dos dois valores: amountInCents (lado do Pix) ou depixAmountInCents (lado do DePix).

CampoTipoObrigatórioDescrição
amountInCentsintegernãoO Pix que você quer receber, em centavos. A taxa sai por fora: você envia este valor mais a taxa.
depixAmountInCentsintegernãoOu o DePix que você vai enviar, em centavos. A taxa sai por dentro, e o Pix é o que sobra.
merchantFeeBpsintegernãoA sua taxa sobre quem saca, em pontos-base (100 = 1%, até 10%). Incide sobre o mesmo valor que a nossa e vai em DePix para o seu endereço padrão do painel, na mesma transação do repasse. Exige endereço padrão cadastrado (merchant_address_missing).
pixKeyTypecpf | cnpj | email | telefone | aleatoriasim
pixKeystringsimA chave que recebe o Pix. Normalizamos o formato; chave inválida para o tipo é invalid_request.
payeeTaxNumberstringsimCPF ou CNPJ do dono da chave — é a titularidade que o provedor confere. Quando a chave é um CPF/CNPJ, os dois precisam ser o mesmo documento.
externalIdstringnãoO id do saque no seu sistema. Dá idempotência de graça: o mesmo valor nunca vira dois saques.
descriptionstringnão
metadataobjectnãoAté 20 chaves. Volta na consulta e no webhook.

ValoresDoSaque

CampoTipoObrigatórioDescrição
depixInCentsintegersimO DePix que precisa chegar no endereço de depósito.
feeInCentsintegersimA taxa: R$ 3,00 fixos abaixo de R$ 100,00 de Pix, percentual daí para cima.
payoutInCentsintegersimO Pix que cai na chave.
feeBpsintegernãoO percentual usado, em pontos-base. Ausente quando valeu a taxa fixa.
merchantFeeInCentsintegernãoA sua taxa, em DePix para o seu endereço padrão. Só existe quando o saque tem merchantFeeBps. Vale depixInCents = payoutInCents + feeInCents + merchantFeeInCents.
merchantFeeBpsintegernãoA taxa que você pediu na criação, em pontos-base.

DepositoDoSaque

CampoTipoObrigatórioDescrição
addressstringsimEndereço Liquid só deste saque. Não reaproveite em outro: é o endereço, e não o valor, que diz de quem é o DePix que chegou.
amountInCentsintegersimQuanto enviar, em centavos de DePix. Igual a amount.depixInCents.
receivedAtstringnãoQuando o depósito foi confirmado na Liquid.

PixDoSaque

CampoTipoObrigatórioDescrição
keystringsimA chave, já normalizada.
keyTypecpf | cnpj | email | telefone | aleatoriasim
taxNumberstringsimDocumento do dono da chave, mascarado.
endToEndIdstringnãoComprovante do Pix no Banco Central. Só depois de paid.
paidAtstringnão

Saque

CampoTipoObrigatórioDescrição
idstringsimNosso id. 24 caracteres hexadecimais.
externalIdstringnão
statusawaiting_deposit | processing | paid | failedsimawaiting_deposit espera o seu DePix; processing é o Pix a caminho; paid acabou.
environmentlive | testsim
amountValoresDoSaquesim
depositDepositoDoSaquesim
pixPixDoSaquesim
descriptionstringnão
metadataobjectnão
createdAtstringsim
updatedAtstringsim

ListaDeSaques

CampoTipoObrigatórioDescrição
dataSaque[]sim
hasMorebooleansimSe true, peça a próxima página com startingAfter no id do último item.

CotacaoDeSaque

Os valores que o saque teria, sem criar nada.

CampoTipoObrigatórioDescrição
depixInCentsintegersimO DePix que quem saca precisa enviar.
payoutInCentsintegersimO Pix que cai na chave. É o número para mostrar a quem saca.
feeInCentsintegersimA nossa taxa.
feeBpsintegernãoO nosso percentual, em pontos-base. Ausente quando valeu a taxa fixa.
merchantFeeInCentsintegersimA sua taxa, que vai em DePix para o seu endereço padrão.
merchantFeeBpsintegersimA taxa pedida, em pontos-base.