Pular para o conteúdo principal

Criação de Carteira (Wallet)

A criação de carteira (wallet) permite registrar uma nova carteira de crédito para uma pessoa física ou jurídica.

O que é uma Wallet

A wallet representa a fatura de um cliente e funciona como um centralizador para gerenciar múltiplos meios de pagamento atrelados. É importante entender que:

  • Uma wallet = fatura: Cada carteira corresponde à fatura de um cliente específico (identificado por CPF/CNPJ)
  • Múltiplos meios de pagamento: A mesma wallet pode ter diferentes instrumentos de pagamento (cartões, PIX, etc.)
  • Instrumentos separados: Após criar a wallet, será necessário criar separadamente os instrumentos de pagamento (cartões de crédito, limites, etc.)
  • Gestão centralizada: A wallet centraliza todas as operações e configurações relacionadas àquele cliente

Request

ENDPOINT
/wallet
MÉTODO
POST
Request Body
{
"owner": {
"person_type": "natural",
"name": "João Silva",
"document_number": "12345678901",
"birthdate": "1990-01-01",
"email": "joao.silva@email.com",
"phone": {
"number": "99999999",
"area_code": "11",
"country_code": "55"
},
"address": {
"street": "Rua das Flores",
"number": "123",
"neighborhood": "Centro",
"postal_code": "01234567",
"city": "São Paulo",
"state": "SP",
"complement": "Apto 1"
}
},
"invoice_configuration": {
"closing_date_configuration": {
"type": "fixed",
"fixed_day": 15
},
"due_date_configuration": {
"type": "fixed",
"fixed_day": 20,
"offset_months": 0
},
"invoice_payment_type": "bank_slip",
"embedded_monthly_interest_percentage": 2.0,
"interest_base": "calendar_days",
"monthly_interest_percentage": 2.0,
"fine_percentage": 2.0
},
"limits": {
"postpaid_credit_limit": 5000.00
}
}

Request Body Params

CampoTipoDescriçãoCaracteres
ownerobjectDados do proprietário da carteira (pessoa física ou jurídica)Objeto owner
person_keystringChave única de identificação da pessoa no formato UUID v436
invoice_configuration *objectConfiguração de fechamento e vencimento de faturasObjeto invoice_configuration
limits *objectLimites de crédito da carteiraObjeto limits
Campos Condicionais
  • owner: Obrigatório quando não for enviado person_key
  • person_key: Obrigatório quando não for enviado owner
  • Os campos são mutuamente exclusivos

Objeto owner

Pessoa Física (person_type: "natural")

CampoTipoDescriçãoCaracteres
person_type *stringTipo da pessoa (deve ser "natural")-
name *stringNome completo da pessoa100
document_number *stringCPF da pessoa (apenas números)11
birthdate *stringData de nascimento (formato YYYY-MM-DD)10
email *stringE-mail de contato254
phone *objectTelefone de contatoObjeto phone
address *objectEndereço completoObjeto address
CampoTipoDescriçãoCaracteres
person_type *stringTipo da pessoa (deve ser "legal")-
name *stringRazão social da empresa100
trading_name *stringNome fantasia da empresa100
document_number *stringCNPJ da empresa (apenas números)14
foundation_date *stringData de fundação (formato YYYY-MM-DD)10
email *stringE-mail de contato254
phone *objectTelefone de contatoObjeto phone
address *objectEndereço completoObjeto address
legal_representatives *arrayLista de representantes legais (pessoas físicas)-

Objeto phone

CampoTipoDescriçãoCaracteres
country_code *stringCódigo do país (DDI)2-3
area_code *stringCódigo de área (DDD)2
number *stringNúmero do telefone8-9

Objeto address

CampoTipoDescriçãoCaracteres
street *stringNome da rua/avenida500
number *stringNúmero do endereço10
neighborhood *stringBairro100
postal_code *stringCEP (apenas números)8
city *stringCidade100
state *stringEstado (UF)Enumeradores state
complementstringComplemento do endereço500

Enumeradores state

EnumeradorDescrição
ACAcre
ALAlagoas
AMAmazonas
APAmapá
BABahia
CECeará
DFDistrito Federal
ESEspírito Santo
GOGoiás
MAMaranhão
MGMinas Gerais
MSMato Grosso do Sul
MTMato Grosso
PAPará
PBParaíba
PEPernambuco
PIPiauí
PRParaná
RJRio de Janeiro
RNRio Grande do Norte
RORondônia
RRRoraima
RSRio Grande do Sul
SCSanta Catarina
SESergipe
SPSão Paulo
TOTocantins
EXExceção

Objeto invoice_configuration

CampoTipoDescriçãoCaracteres
closing_date_configuration *objectConfiguração da data de fechamento da faturaObjeto closing_date_configuration
due_date_configuration *objectConfiguração da data de vencimento da faturaObjeto due_date_configuration
invoice_payment_type *stringTipo de pagamento da faturaEnumeradores invoice_payment_type
embedded_monthly_interest_percentage *floatPercentual de juros mensais embutidos (0-100)-
interest_base *stringBase de cálculo dos jurosEnumeradores interest_base
monthly_interest_percentage *floatPercentual de juros mensais por atraso (0-100)-
fine_percentage *floatPercentual de multa por atraso (0-100)-

Objeto closing_date_configuration

Configuração Fixa (type: "fixed")

CampoTipoDescriçãoCaracteres
type *stringTipo de configuração (deve ser "fixed")-
fixed_day *integerDia fixo do mês para fechamento (1-27)-

Configuração Baseada em Regras (type: "rule_based")

CampoTipoDescriçãoCaracteres
type *stringTipo de configuração (deve ser "rule_based")-
rule *objectRegra para cálculo da dataObjeto rule (closing_date_configuration)

Objeto rule (closing_date_configuration)

CampoTipoDescriçãoCaracteres
day_of_week *stringDia da semanaEnumeradores day_of_week
occurrence *stringOcorrência do dia no mêsEnumeradores occurrence
fallback_strategy *stringEstratégia para dias não úteisEnumeradores fallback_strategy

Objeto due_date_configuration

Configuração Fixa (type: "fixed")

CampoTipoDescriçãoCaracteres
type *stringTipo de configuração (deve ser "fixed")-
offset_months *integerMeses de offset a partir do fechamento-
fixed_day *integerDia fixo do mês para vencimento (2-27)-

Configuração Baseada em Regras (type: "rule_based")

CampoTipoDescriçãoCaracteres
type *stringTipo de configuração (deve ser "rule_based")-
offset_months *integerMeses de offset a partir do fechamento-
rule *objectRegra para cálculo da dataObjeto rule (closing_date_configuration)

Objeto rule (due_date_configuration)

CampoTipoDescriçãoCaracteres
day_of_week *stringDia da semanaEnumeradores day_of_week
occurrence *stringOcorrência do dia no mêsEnumeradores occurrence
fallback_strategy *stringEstratégia para dias não úteisEnumeradores fallback_strategy
Validações de Data
  • A data de vencimento deve ser pelo menos 2 dia após a data de fechamento
  • Para configurações baseadas em regras, deve existir ao menos um dia de diferença entre os dias da semana escolhidos para fechamento e vencimento (ex: fechamento na segunda-feira e vencimento na quarta-feira de qualquer semana)

Enumeradores day_of_week

EnumeradorDescrição
mondaySegunda-feira
tuesdayTerça-feira
wednesdayQuarta-feira
thursdayQuinta-feira
fridaySexta-feira
saturdaySábado
sundayDomingo

Enumeradores occurrence

EnumeradorDescrição
firstPrimeira ocorrência
secondSegunda ocorrência
thirdTerceira ocorrência
fourthQuarta ocorrência
lastÚltima ocorrência

Enumeradores fallback_strategy

EnumeradorDescrição
next_business_dayPróximo dia útil
previous_business_dayDia útil anterior
same_dayMesmo dia

Enumeradores invoice_payment_type

EnumeradorDescrição
bank_slipBoleto bancário

Enumeradores interest_base

EnumeradorDescrição
calendar_daysDias corridos

Objeto limits

CampoTipoDescriçãoCaracteres
postpaid_credit_limit *floatLimite para crédito pós-pago-

Response

Sucesso - Carteira Criada com Análise Pendente

STATUS
202
Response Body: Carteira pendente de análise
{
"wallet_key": "8cb70dea-9fb0-4a68-9572-99a72849c8d6",
"owner_person_key": null,
"wallet_status": "pending_analysis"
}
Informação

Caso seja retornado HTTP Status 202 com o campo wallet_status com valor pending_analysis, a criação será processada assincronamente. Posteriormente será enviado posteriormente um webhook informando se a carteira foi aprovada ou rejeitada na análise KYC. Para mais detalhes sobre webhooks, consulte a documentação de webhooks

Observação

Para casos que requerem análise KYC, o campo owner_person_key será retornado como null na resposta inicial. A pessoa titular da carteira só será criada no sistema ao final do processo de KYC, caso seja aprovada. Neste caso, a chave da pessoa será enviada posteriormente através do webhook de aprovação, consulte a documentação de webhooks

Sucesso - Carteira Criada Ativa

STATUS
201
Response Body: Carteira ativa
{
"wallet_key": "8cb70dea-9fb0-4a68-9572-99a72849c8d6",
"owner_person_key": "ecf87b4b-fa6e-49c0-a7f0-f2cad6b42d79",
"wallet_status": "active"
}

Response Body Params

CampoTipoDescriçãoCaracteres
wallet_key *uuidv4Chave única de identificação da carteira no formato uuid v436
owner_person_key *stringChave de identificação do proprietário da carteira36
wallet_status *stringStatus da carteira-

Enumeradores wallet_status

EnumeradorDescrição
pending_analysisCarteira pendente de análise KYC
activeCarteira ativa e disponível para uso
Status da Carteira
  • pending_analysis: Retornado quando a carteira é criada com dados completos do proprietário. Será submetida a análise KYC.
  • active: Retornado quando a carteira é criada com chave de pessoa existente. Disponível para uso imediato.

Error Response

STATUS
4xx
Response Body: Error
{
"title": "titulo",
"description": "description in English",
"translation": "descrição em portugues",
"code": "codigo",
"extra_fields": {}
}
Código HTTP
status
Código QI
code
Título
title
Descrição (eng)
description
Descrição (pt-br)
translation
400QIT000001Bad RequestSchema ErrorSchema Inválido
404CIN000020Requester not FoundNo requester configuration found for requester key: 8e1e6b46-beb3-467b-965c-6c545707d467Solicitante não encontrado para requester key: 8e1e6b46-beb3-467b-965c-6c545707d467
404CIN000062Not FoundPerson not found by person key: e51070e4-7494-468d-a20e-bf14789fa8ffPessoa não encontrada para a person key: e51070e4-7494-468d-a20e-bf14789fa8ff
409CIN000043ConflictActive wallet foundCarteira ativa já existe
400CIN000063Bad RequestExpiration date too close to closing dateData de vencimento muito próxima da data de fechamento
400CIN000064Bad RequestInvalid offset months for rule-based configurationMeses de offset inválidos para configuração baseada em regras
400CIN000065Bad RequestWeekdays too close for rule-based configurationDias da semana muito próximos para configuração baseada em regras
400CIN000002Bad RequestInvalid signer document numberNúmero do documento do signatário inválido
400CIN000066Bad RequestError while creating wallet in card serviceErro ao criar carteira no serviço de cartão