Emitir uma cobrança
Com pre_invoice_id, emite o boleto de uma pré-fatura aprovada que ainda não tem (a que a aprovação não conseguiu emitir); uma que já tem é 409 already_charged, e uma que o Asaas ainda recusa é 409 asaas_pending com o motivo. Com replaces_charge_id e reason, emite a 2ª via: o boleto antigo sai do Asaas e o novo aponta para ele; num pagamento parcial, o novo cobra o saldo. Cliente excluído não recebe boleto novo: a 2ª via é 409 tenant_deleted (o boleto atual fica como está) e a emissão é 409 asaas_pending, com a pré-fatura em pendência. Emite boleto de verdade: a Idempotency-Key é exigida.
Autorização
bearer billing:executeCredencial da v3: o JWT da sessão (o mesmo da v2) ou um token pessoal dom_pat_…. A lista de escopos de cada operação diz o que ela exige: uma capacidade (agents:read), authenticated ou session-only. Segredo de máquina (X-Agent-Secret, X-API-Token, sdk_…) não é aceito.
Em: header
Escopo: billing:execute
Parâmetros de cabeçalho
Chave de 1 a 255 caracteres ASCII visíveis, estável por intenção do usuário: a mesma chave numa retentativa devolve a primeira resposta em vez de repetir o efeito.
Corpo da requisição
application/json
Definições TypeScript
Use o tipo request body no TypeScript.
O corpo de POST /billing/charges: o boleto de uma pré-fatura aprovada
(pre_invoice_id), ou a 2ª via de uma cobrança (replaces_charge_id, com
motivo e, se quiser, um vencimento novo). Um dos dois, nunca os dois.
Corpo da resposta
application/json
application/json
curl -X POST "https://example.com/billing/charges" \ -H "Idempotency-Key: b3f0c1e2-4a5b-4c6d-8e9f-0a1b2c3d4e5f" \ -H "Content-Type: application/json" \ -d '{}'{ "asaas_customer_id": "string", "asaas_environment": "string", "asaas_payment_id": "string", "balance_carried_at": "2019-08-24T14:15:22Z", "billing_type": "boleto", "boleto_url": "string", "competence": "string", "currency": "string", "dealer_id": 0, "dealer_name": "string", "due_date": "2019-08-24", "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "invoice_url": "string", "issued_by_dealer_id": 0, "issued_by_dealer_name": "string", "issued_by_email": "string", "last_event_at": "2019-08-24T14:15:22Z", "paid_at": "2019-08-24T14:15:22Z", "paid_value_cents": 0, "pre_invoice_id": "933bcfab-2ed2-4773-b261-5b80b56dd8c6", "pre_invoice_status": "in_review", "replaces_charge_id": "ce6e7040-d923-42a8-bf74-d3eb39dd18c8", "sent_at": "2019-08-24T14:15:22Z", "situation": { "open_release": null, "tenant_admin_blocked_at": "2019-08-24T14:15:22Z", "tenant_blocked_at": "2019-08-24T14:15:22Z", "tolerance_until": "2019-08-24" }, "status": "pending", "tenant_deleted_at": "2019-08-24T14:15:22Z", "tenant_id": 0, "tenant_name": "string", "value_cents": 0}