Esse endpoint deve ser utilizado para cadastrar uma Pessoa do tipo física, usando um nº de CPF como identificador.
Parâmetros do Body
- name(string, obrigatório): O nome completo da pessoa.
 
- personType(string, obrigatório): O tipo da pessoa, informar o valor como "NATURAL" para o cadastro de uma pessoa física. Possíveis valores: NATURAL, LEGAL.
 
- taxpayerId(string, obrigatório): O número do documento CPF para identificação da Pessoa.
 
- documents(object, obrigatório): Objeto contendo as 'keys' das URLs 'pre-signed' dos documentos de identificação (documentIdentification) e comprovante de endereço (proofOfAddress).
 
- idDocument(object, obrigatório): Objeto para detalhar o documento de identificação que esta sendo enviado.- issueDate(string, obrigatório): Data de emissão do documento.
 
- issuer(string, obrigatório): Orgão responsável pela emissão do documento.
 
- number(string, obrigatório): Número do documento.
 
- type(string, obrigatório): Tipo do documento. Valores aceitos: CNH, PASSPORT, RG, RNE.
 
 
- birthDate(string, obrigatório): Data de nascimento da Pessoa a ser cadastrada no formato "AAAA-MM-DD".
 
- motherName(string, obrigatóri): Nome da mãe.
 
- pep(boolean, obrigatório): Campo para indica se a pessoa é politicamente exposta.
 
- emailAddress(string, obrigatório): Endereço de e-mail para contato com a pessoa cadastrada.
 
- phone(object, obrigatório): Objeto contendo os dados do telefone de contato.- countryCode(string): Código do país.
 
- areaCode(string): Código de área.
 
- number(string): Número do telefone.
 
 
- address(object, obrigatório): Objeto contendo detalhes do endereço de cadastro.- streetNumber(string): Número do endereço informado.
 
- streetName(string): Nome da rua.
 
- postalCode(string): Código de CEP para o endereço.
 
- district(string): Campo para informar o bairro.
 
- city(string): Nome da cidade.
 
- stateCode(string): Código da UF para o estado do endereço.
 
- countryCode(string): Código do país.
 
- extraInfo(string): Complemento do endereço.
 
 
- fundManagerId(string/uuid v4): ID do gestor do Fundo, se aplicável.
 
- fundSecuritizerId(string/uuid v4): ID da securitizadora do Fundo, se aplicável.
 
- fundAdministratorId(string/uuid v4): ID do Admnistrador do Fundo, se aplicável.
 
Resposta
A resposta da requisição será um JSON representando o retorno obtido para os campos enviados.
Em caso de sucesso será retornado um status_code "200-OK". Em caso de falha será retornado um código 40x com a mensagem indicativa do erro.
- id(string/uuid v4): ID gerado para o cadastro realizado da Pessoa física.
 
Exemplo de JSON:
{
    "id": ""
}
Fluxo de Criação de Person no Escrow
Visão Geral
Para criar uma person no Escrow, é necessário subir um documento previamente. O processo é dividido em três etapas principais:
- Upload do documento (gera uma key e URL de upload);
- Envio do arquivo para o servidor S3 (upload efetivo);
- Criação da person utilizando a key do documento no payload.
1️⃣ Upload do Documento
Rota:
POST https://sandbox.platform.credit.celcoin.com.br/escrow/api/v1/documents/upload
Headers:
Content-Type: application/json
Accept: application/json
Authorization: Bearer <token>
Body:
{
    "file_name": "image.png"
}
Importante incluir a extensão correta do arquivo (ex:
.png,.jpeg).
Exemplo de response:
{
  "key": "8ec77c4a-93be-4efe-913e-f592f799f31a",
  "upload_url": "https://s3.sa-east-1.amazonaws.com/...",
  "download_url": "https://s3.sa-east-1.amazonaws.com/..."
}
A key será usada na criação da person.
2️⃣ Upload do Arquivo (PUT na URL do S3)
Após obter a upload_url do passo anterior, execute o upload do arquivo:
curl --location --request PUT '<upload_url>' \
--header 'Content-Type: image/png' \
--data-binary '@/Users/celcoin/Downloads/image.png'
Se o upload ocorrer corretamente, o arquivo ficará disponível no servidor temporário S3 vinculado à key.
3️⃣ Criação da Person
Rota:
POST https://sandbox.platform.credit.celcoin.com.br/escrow/api/persons
Headers:
Content-Type: application/json
Accept: application/json
Authorization: Bearer <token>
Body:
{
    "taxpayer_id": "92881977022",
    "birth_date": "1999-10-21",
    "name": "Celcoin teste",
    "mother_name": "teste",
    "email_address": "[email protected]",
    "pep": false,
    "phone": {
        "country_code": "+55",
        "area_code": "11",
        "number": "970291614"
    },
    "address": {
        "city": "São Paulo",
        "country_code": "BRZ",
        "district": "teste",
        "state_code": "SP",
        "street_name": "teste teste",
        "postal_code": "1234567",
        "street_number": "89"
    },
    "documents": {
        "proof_of_address": "8ec77c4a-93be-4efe-913e-f592f799f31a",
        "document_identification": "8ec77c4a-93be-4efe-913e-f592f799f31a"
    },
    "representatives": [],
    "person_type": "NATURAL",
    "business_type": "OTHERS"
}
O campo
documentsutiliza a key do documento retornada no primeiro passo.