Skip to main content
POST
Create Charge

Authorizations

Authorization
string
header
required

Chave de API gerada no dashboard da PurinCash (ps_live_ ou ps_test_).

Body

application/json
valueCents
integer
required

Valor da cobrança em centavos: número JSON INTEIRO, de 80 (R$ 0,80) a 100000000000 (R$ 1 bilhão). String, decimal ou acima do teto são recusados com 400, sem arredondamento silencioso.

Required range: 80 <= x <= 100000000000
description
string

Descrição da cobrança (máx. 200 caracteres). Padrão "Pagamento PIX".

Maximum string length: 200
expiresIn
integer
default:1800

Prazo de validade da cobrança, em SEGUNDOS. De 60 (1 minuto) a 604800 (7 dias). Padrão 1800 (30 minutos). Valor fora da faixa devolve 400 em vez de cair no padrão, pra o erro mais comum (mandar minutos achando que é o campo) não passar batido.

Required range: 60 <= x <= 604800
callbackUrl
string<uri>

URL HTTPS pública (máx. 500 caracteres) que recebe um POST com o evento charge.paid quando o pagamento é confirmado, assinado com HMAC-SHA256 no header X-Webhook-Signature.

Maximum string length: 500
customer
object

Dados do cliente (opcional).

metadata
string

String JSON livre (máx. 2048 caracteres), devolvida nas consultas e no webhook.

Maximum string length: 2048
subaccountId
string

Subconta (sacc_...) que recebe o crédito no ledger quando a cobrança for paga. Não aceito junto com splits. Veja /v1/subaccounts. OMITA o campo para uma cobrança sem atribuição: string vazia devolve 400 em vez de criar a venda sem dono, porque o padrão subaccountId: cliente.saccId || "" viraria perda silenciosa de atribuição. Cobrança é PIX: paymentMethod não existe aqui e devolve 400 (para LTC, use POST /v1/payments).

supplier
object

Vínculo opcional com produto de fornecedor (split). O valor é dividido entre a loja e o fornecedor conforme o split configurado.

Response

Cobrança criada com sucesso.

paymentId
string

Identificador único da cobrança (prefixo psc_).

status
enum<string>

Status da cobrança. Sempre "pending" na criação.

Available options:
pending,
paid,
expired,
refunded
amountCents
integer

Valor da cobrança em centavos.

currency
string

Moeda da cobrança (sempre BRL).

environment
enum<string>

Ambiente da chave de API utilizada.

Available options:
live,
sandbox
pix
object

Dados do PIX gerado.

expiresAt
string<date-time>

Expiração da cobrança (30 minutos após a criação).