Skip to main content

Emissão com Assinatura Posterior

Neste fluxo, a dívida é criada em uma primeira chamada e a assinatura do tomador é enviada em uma chamada separada. O sistema gera o contrato e aguarda a assinatura antes de processar o desembolso.


Passo 1 — Criação da Dívida (POST /debt)

Request

ENDPOINT
/debt
MÉTODO
POST
Request Body
{
"borrower": {
"name": "Dante Ferrarini",
"email": "dante@email.com",
"phone": {
"number": "185633631",
"area_code": "15",
"country_code": "055"
},
"is_pep": false,
"address": {
"city": "São Paulo",
"state": "SP",
"number": "1000",
"street": "Rua Gilberto Sabino",
"complement": "",
"postal_code": "05425020",
"neighborhood": "Pinheiros"
},
"role_type": "issuer",
"birth_date": "1993-09-10",
"person_type": "natural",
"individual_document_number": "31057466093"
},
"financial": {
"interest_type": "pre_price_days",
"disbursement_date": "2026-04-07",
"fine_configuration": {
"monthly_rate": 0.01,
"interest_base": "calendar_days",
"contract_fine_rate": 0.02
},
"disbursed_amount": 1000,
"credit_operation_type": "ccb",
"interest_grace_period": 0,
"number_of_installments": 2,
"principal_grace_period": 0,
"monthly_interest_rate": 0.052
},
"disbursement_bank_account": {
"name": "Dante Ferrarini",
"document_number": "31057466093",
"bank_code": "329",
"branch_number": "0001",
"account_number": "7617846",
"account_digit": "5",
"account_type": "checking_account"
},
"purchaser_document_number": "32402502000135"
}

Body Params

CampoTipoDescriçãoCaracteres
borrower*objectObjeto do tomadorObjeto Borrower
financial*objectDetalhes financeiros da operaçãoObjeto Financial
disbursement_bank_account*objectDados da conta bancária do tomador para recebimento do desembolsoObjeto Disbursement Bank Account
purchaser_document_number*stringCNPJ do cessionário14

Objeto Borrower

CampoTipoDescriçãoCaracteres
name*stringNome completo do tomador100
emailstringEndereço de e-mail do tomador254
phoneobjectDados de telefone do tomadorObjeto Phone
is_pep*booleanIndicador de Pessoa Politicamente Exposta5
address*objectEndereço residencial do tomadorObjeto Address
role_typestringPapel do tomador na operação (ex: "issuer")10
birth_date*dateData de nascimento do tomador (Formato: "YYYY-MM-DD")10
person_type*stringClassificação da pessoa (natural ou legal)7
individual_document_number*stringCPF do tomador - somente números11

Objeto Address

CampoTipoDescriçãoCaracteres
city*stringNome da cidade100
state*stringSigla do estado (duas letras maiúsculas)2
numberstringNúmero do logradouro10
street*stringNome do logradouro100
complementstringComplemento do endereço (texto livre)100
postal_code*stringCEP - somente números8
neighborhood*stringNome do bairro100

Objeto Phone

CampoTipoDescriçãoCaracteres
number*stringNúmero do telefone9
area_code*stringCódigo de área (DDD)2
country_code*stringCódigo internacional (ex: "055")3

Objeto Financial

CampoTipoDescriçãoCaracteres
interest_type*stringMétodo de amortização20
disbursement_date*stringData de desembolso10
fine_configuration*objectConfiguração de multa e moraObjeto Fine Configuration
disbursed_amount*floatValor a ser desembolsado15,2
credit_operation_type*stringTipo da operação de crédito (ex: "ccb")10
interest_grace_periodintegerPeríodo de carência de juros (em meses)3
number_of_installments*integerNúmero de parcelas3
principal_grace_periodintegerPeríodo de carência do principal (em meses)3
monthly_interest_rate*floatTaxa de juros mensal10,6

Objeto Fine Configuration

CampoTipoDescriçãoCaracteres
monthly_rate*floatTaxa de mora mensal10,6
interest_base*stringBase de cálculo da mora (ex: "calendar_days")20
contract_fine_rate*floatTaxa de multa contratual10,6

Objeto Disbursement Bank Account

CampoTipoDescriçãoCaracteres
namestringNome do titular da conta50
document_numberstringCPF do titular da conta11
bank_code*stringCódigo COMPE da instituição financeira3
branch_number*stringNúmero da agência (sem dígito verificador)4
account_number*stringNúmero da conta (sem dígito verificador)10
account_digit*stringDígito verificador da conta (usar zero no lugar de letras)1
account_typeenumTipo da conta (checking_account, saving_account, payment_account, etc.)-

Response

STATUS
200

A resposta retorna o plano de pagamento e a DEBT-KEY, com status waiting_signature. O desembolso não é realizado até que a assinatura seja enviada no Passo 2.

Response Body
{
"webhook_type": "debt",
"key": "1baea8a0-0fca-4f7c-8857-a227d4da72f8",
"status": "waiting_signature",
"event_datetime": "2026-04-07 22:46:10",
"data": {
"borrower": {
"name": "Dante Ferrarini",
"document_number": "31057466093",
"related_party_key": "d5cbcada-42e7-4d5b-84fc-3c2dc8038411"
},
"contract": {
"number": "0000192840/DWF",
"urls": [
"https://storage.googleapis.com/sandbox-doc-api/documents/b2d974f9-c710-42e3-8ea4-69cc31561c38/CCB-0000192840-20260407.pdf"
],
"signers": [
{
"signer_name": "Dante Ferrarini",
"signer_document_number": "31057466093",
"signer_role": "issuer",
"signer_email": "dante@email.com",
"signer_external_key": null,
"signature_url": null
}
]
},
"installments": [...],
"total_pre_fixed_amount": 80.16
}
}
Atenção

Salve a DEBT-KEY retornada — ela é necessária para enviar a assinatura no Passo 2.


Passo 2 — Envio da Assinatura (POST /debt/{DEBT-KEY}/signed)

Request

ENDPOINT
/debt/DEBT-KEY/signed
MÉTODO
POST
Request Body
{
"type": "data_signature",
"signatures": [
{
"signed_object": {
"raw_text": "Lorem ipsum dolor sit amet, consectetur a...."
},
"authenticity": {
"timestamp": "1970-01-01 00:00:01",
"ip_address": "179.104.42.245",
"session_id": "ddb1d063-4fdf-4330-af9c-3316e9142ff3"
},
"signer": {
"name": "Dante Ferrarini",
"email": "dante@email.com",
"phone": {
"country_code": "055",
"area_code": "15",
"number": "185633631"
},
"document_number": "31057466093"
},
"authentication_type": "opt-in"
}
]
}

Path Params

CampoTipoDescriçãoCaracteres
debt_key*stringChave da dívida retornada no Passo 1UUID

Body Params

CampoTipoDescriçãoCaracteres
type*stringTipo de assinatura. Valor: data_signature-
signatures*arrayLista de objetos de comprovação de assinaturaObjeto signatures

Objeto signatures

CampoTipoDescriçãoCaracteres
signed_objectobjectDocumento que está sendo assinadoObjeto signed_object
authenticityobjectDados de autenticação da assinaturaObjeto authenticity
signerobjectDados do assinanteObjeto signer
authentication_type*stringTipo de assinatura. Valor: opt-in-

Objeto signed_object

CampoTipoDescriçãoCaracteres
raw_text*stringTexto corrido com os dados do contrato que será assinado-

Objeto authenticity

CampoTipoDescriçãoCaracteres
timestamp*stringData e hora da assinatura-
ip_address*stringEndereço IP onde o aceite foi coletado-
session_id*stringID de sessão do cliente no momento da assinatura — deve ser armazenado por no mínimo 5 anos-
geolocationobjectGeolocalização opcional-

Objeto signer

CampoTipoDescriçãoCaracteres
name*stringNome do assinante-
email*stringE-mail do assinante-
phoneobjectTelefone do assinanteObjeto Phone
document_number*stringCPF do assinante-

Response

STATUS
200
Response Body
{
"data": {},
"event_datetime": "2026-04-07 15:24:47",
"key": "<DEBT-KEY>",
"status": "signature_received",
"webhook_type": "debt"
}