Skip to main content
POST
/
v4
/
i
/
baas
/
onboarding
/
new
curl -X POST https://api.owem.com.br/v4/i/baas/onboarding/new \
  -H "Authorization: Basic $(echo -n 'SUA_API_KEY:SEU_SECRET' | base64)" \
  -H "Content-Type: application/json" \
  -d '{
    "onboardingType": "liveness",
    "type": "PF",
    "cpf": "12345678900",
    "name": "João da Silva",
    "email": "[email protected]",
    "phone": "11999998888",
    "birthDate": "1990-05-15",
    "motherName": "Maria da Silva",
    "address": {
      "street": "Rua das Flores",
      "number": "123",
      "complement": "Apto 45",
      "neighborhood": "Centro",
      "city": "São Paulo",
      "state": "SP",
      "zipCode": "01234567"
    },
    "financialDetails": {
      "declaredIncome": "DINP02",
      "netWorth": "NWNP02",
      "occupation": "ONP05"
    },
    "isPEP": false
  }'
{
  "userId": "usr_abc123def456",
  "clientCode": "baas_x7k2m9p1",
  "status": "PENDING_DOCUMENTS",
  "onboardingType": "liveness",
  "kycUrl": "https://kyc.owem.com.br/widget/abc123xyz789...",
  "expiresIn": 604800,
  "message": "Onboarding criado. Redirecione o cliente para a URL do KYC.",
  "createdAt": 1736337600000
}
curl -X POST https://api.owem.com.br/v4/i/baas/onboarding/new \
  -H "Authorization: Basic $(echo -n 'SUA_API_KEY:SEU_SECRET' | base64)" \
  -H "Content-Type: application/json" \
  -d '{
    "onboardingType": "liveness",
    "type": "PF",
    "cpf": "12345678900",
    "name": "João da Silva",
    "email": "[email protected]",
    "phone": "11999998888",
    "birthDate": "1990-05-15",
    "motherName": "Maria da Silva",
    "address": {
      "street": "Rua das Flores",
      "number": "123",
      "complement": "Apto 45",
      "neighborhood": "Centro",
      "city": "São Paulo",
      "state": "SP",
      "zipCode": "01234567"
    },
    "financialDetails": {
      "declaredIncome": "DINP02",
      "netWorth": "NWNP02",
      "occupation": "ONP05"
    },
    "isPEP": false
  }'

Descrição

Este endpoint cria uma nova proposta de abertura de conta bancária para um cliente do parceiro BAAS. Retorna um userId para acompanhamento e uma URL do widget de verificação KYC.
PROGRAMA BETA - Este endpoint está disponível apenas para parceiros aprovados no programa BAAS.

Autenticação

Este endpoint usa Basic Auth com sua API Key + Secret. O scope baas:onboarding é configurado pela Owem na sua API Key.
Authorization: Basic {Base64(API_KEY:API_SECRET)}

Rate Limiting

LimiteValor
Requisições por hora100 por API Key
Código de erroBAAS_RATE_LIMIT
Status HTTP429
O rate limit é compartilhado por API Key, não por IP. Isso permite que você use múltiplos servidores com o mesmo limite.

Request

Headers

HeaderTipoObrigatórioDescrição
AuthorizationstringBasic Auth (API Key + Secret em Base64)
Content-Typestringapplication/json

Body

{
  "onboardingType": "liveness",
  "type": "PF",
  "cpf": "12345678900",
  "name": "João da Silva",
  "email": "[email protected]",
  "phone": "11999998888",
  "birthDate": "1990-05-15",
  "motherName": "Maria da Silva",
  "address": {
    "street": "Rua das Flores",
    "number": "123",
    "complement": "Apto 45",
    "neighborhood": "Centro",
    "city": "São Paulo",
    "state": "SP",
    "zipCode": "01234567"
  },
  "financialDetails": {
    "declaredIncome": "DINP02",
    "netWorth": "NWNP02",
    "occupation": "ONP05"
  },
  "isPEP": false
}

Parâmetros do Body

CampoTipoObrigatórioDescrição
onboardingTypestringliveness (widget KYC) ou manual (upload)
typestringTipo de pessoa: PF (apenas PF suportado)
cpfstringCPF do cliente (apenas números)
namestringNome completo (mínimo 3 caracteres)
emailstringEmail válido do cliente
phonestringTelefone com DDD (mínimo 10 dígitos)
birthDatestringData de nascimento (YYYY-MM-DD), idade ≥ 18
motherNamestringNome da mãe
addressobjectEndereço completo
financialDetailsobjectInformações financeiras (códigos BACEN)
isPEPbooleanPessoa Politicamente Exposta (default: false)

Objeto address

CampoTipoObrigatórioDescrição
streetstringLogradouro
numberstringNúmero
complementstringComplemento
neighborhoodstringBairro
citystringCidade
statestringEstado (UF, 2 caracteres)
zipCodestringCEP (8 dígitos, apenas números)

Objeto financialDetails (BACEN Circular nº 3.978/2020)

Campos obrigatórios conforme Circular BACEN nº 3.978/2020, vigente a partir de 16/01/2026. Use os códigos padronizados abaixo.
CampoTipoObrigatórioDescrição
declaredIncomestringFaixa de renda (DINP01-05)
netWorthstringFaixa de patrimônio (NWNP01-05)
occupationstringCódigo da profissão (ONP01-31)

Códigos de Renda Declarada (declaredIncome)

CódigoFaixa de Renda
DINP01Até R$ 5.000
DINP02R$ 5.001 – R$ 10.000
DINP03R$ 10.001 – R$ 30.000
DINP04R$ 30.001 – R$ 100.000
DINP05Acima de R$ 100.000

Códigos de Patrimônio (netWorth)

CódigoFaixa de Patrimônio
NWNP01Até R$ 50.000
NWNP02R$ 50.001 – R$ 200.000
NWNP03R$ 200.001 – R$ 1.000.000
NWNP04R$ 1.000.001 – R$ 5.000.000
NWNP05Acima de R$ 5.000.000

Códigos de Profissão (occupation)

CódigoProfissão
ONP01Administrador / Gerente
ONP02Vendedor / Representante Comercial
ONP03Analista de RH / Assistente de Pessoal
ONP04Analista Financeiro / Contador
ONP05Desenvolvedor / Analista de Sistemas
ONP06Profissional de Marketing / Publicitário
ONP07Médico / Dentista / Enfermeiro
ONP08Professor / Educador
ONP09Engenheiro (em qualquer área)
ONP10Advogado / Jurista
ONP11Auxiliar de Serviços Gerais / Faxineiro
ONP12Pedreiro / Servente / Mestre de Obras
ONP13Motorista / Entregador / Logístico
ONP14Recepcionista / Operador de Caixa
ONP15Técnico em (Eletricidade, Mecânica, etc.)
ONP16Designer Gráfico / Artista
ONP17Operador de Máquinas / Montador
ONP18Consultor / Autônomo (Prestador de Serviços)
ONP19Cabeleireiro / Manicure / Esteticista
ONP20Vigilante / Agente de Segurança
ONP21Trabalhador Agropecuário / Agrônomo
ONP22Agente de Viagens / Hoteleiro
ONP23Jornalista / Relações Públicas
ONP24Psicólogo / Terapeuta
ONP25Servidor Público / Funcionário Federal/Estadual
ONP26Pesquisador / Cientista
ONP27Artesão / Microempreendedor Individual (MEI)
ONP28Aposentado / Reformado
ONP29Estudante (Sem Renda Própria)
ONP30Autônomo
ONP31Outros

Response

Sucesso (201 Created)

{
  "userId": "usr_abc123def456",
  "clientCode": "baas_x7k2m9p1",
  "status": "PENDING_DOCUMENTS",
  "onboardingType": "liveness",
  "kycUrl": "https://kyc.owem.com.br/widget/xxx...",
  "expiresIn": 604800,
  "message": "Onboarding criado. Redirecione o cliente para a URL do KYC.",
  "createdAt": 1704672000000
}

Campos da Response

CampoTipoDescrição
userIdstringID único da proposta/usuário
clientCodestringCódigo interno (formato: baas_xxxxxxxx)
statusstringStatus inicial: PENDING_DOCUMENTS
onboardingTypestringTipo de onboarding escolhido
kycUrlstringURL do widget KYC (se liveness)
expiresInnumberTempo em segundos para completar (7 dias)
messagestringMensagem de orientação
createdAtnumberTimestamp de criação (ms)

Status Possíveis

StatusDescrição
PENDING_DOCUMENTSAguardando verificação KYC
PROCESSINGEm análise pelo sistema
PENDING_REVIEWAnálise manual necessária
APPROVEDKYC aprovado
REPROVEDKYC reprovado
ACCOUNT_CREATEDConta bancária criada com sucesso

Erros

CódigoDescrição
400Dados inválidos ou incompletos
400Email já cadastrado no sistema
400CPF já possui conta bancária
400CPF já possui processo de verificação
403API Key não possui configuração BAAS ativa
403Documento bloqueado
429Rate limit excedido (100 req/hora)

Fluxo Após Criação

Após criar a proposta, redirecione o cliente para a kycUrl retornada. Você receberá um webhook quando o processo for concluído.
{
  "userId": "usr_abc123def456",
  "clientCode": "baas_x7k2m9p1",
  "status": "PENDING_DOCUMENTS",
  "onboardingType": "liveness",
  "kycUrl": "https://kyc.owem.com.br/widget/abc123xyz789...",
  "expiresIn": 604800,
  "message": "Onboarding criado. Redirecione o cliente para a URL do KYC.",
  "createdAt": 1736337600000
}