Contas
Este é o conceito mais fundamental da API de Banking Gateway da Stone pois ter uma conta é essencial para qualquer outra ação. Para criar uma conta, é necessário o envio de alguns dados do usuário e, com essas informações, é criado o objeto de conta, ou seja uma account
.
Ela pode se referir tanto a uma pessoa física quanto a uma pessoa jurídica. Atualmente, damos suporte para esses dois tipos de conta e a distinção entre elas é feita a partir do tipo de documento que foi enviado.
Conta | Tipo de documento |
---|---|
Pessoa física (PF) | CPF |
Pessoa jurídica (PJ) | CNPJ |
Estrutura
A estrutura básica de uma account
está descrita abaixo:
{
"id": "integer",
"name": "string",
"email": "string",
"mobile_number": "string",
"date_of_birth": "string",
"document": "string",
"document_type": "string",
"created_at": "string",
"updated_at": "string"
}
Aqui vamos descrever um pouco mais sobre cada campo e a sua obrigatoriedade de envio.
Campo | Descrição | Obrigatoriedade |
---|---|---|
id | O ID gerado para identificar a conta no sistema Banking Gateway. | - |
name | Nome completo do usuário. | Obrigatório. |
email | Email do usuário. | Obrigatório. |
mobile_number | Numero de telefone do usuário. | Não é obrigatório. |
date_of_birth | Para PF - Data de nascimento do usuário. Para PJ - Data de criação da empresa. | Não é obrigatório nesse primeiro momento. |
document | Numeração do documento do usuário escolhido para envio. | Obrigatório. |
document_type | Tipo de documento, CPF ou CNPJ. | Obrigatório. |
created_at | Data de criação da conta. | - |
updated_at | Data de última atualização do registro. | - |
Se os dados enviados estiverem OK, a API vai retornar um 201
com o status da conta que foi criada.
Status
O status da conta indica se aquela conta está disponível para transacionar ou se há algum tipo de bloqueio ou pendência com nossos sistemas de Análise de Conta (Know your Customer, ou KYC) e Risco.
Status | Descrição |
---|---|
last_kyc_not_approved | Indica que o usuário não passou pelo fluxo de KYC ou seus dados ainda estão sendo analisados, ou seja, a conta está pendente/negada. |
approved | Indica que a conta está validada, aprovada e já pode transacionar. |
disabled | Indica que uma conta aprovada foi desabilitada e não pode efetuar transações. |
blocked | Durante a análise no fluxo de KYC, o usuário foi identificado como fraudador e com isso a conta não é liberada e o usuário é impedido de tentar enviar seus dados novamente. |
missing_movement_limit_plan | Quando o usuário está aprovado, mas por algum motivo está sem plano de limites e não vai conseguir realizar nenhuma movimentação financeira. |
Dados Bancários
Além do status, existe o objeto de bank_account
que contém os dados bancários do usuário porém, nesse momento, ele aparece vazio. Isso indica que a conta foi criada, mas ela ainda não é uma conta de pagamento, ou seja, não é possível transacionar com ela.
Veja a estrutura de resposta a criação de conta da API. Observe o objeto bank_account
ainda vazio:
{
"id": 0,
"name": "Jose Penteado",
"email": "[email protected]",
"mobile_number": "21999998888",
"document": 564937165,
"document_type": "cpf",
"date_of_birth": "2000-12-31",
"username": "myusername",
"enabled": true,
"status": "last_kyc_not_approved",
"bank_account": {
},
"created_at": "2020-06-30T15:54:19.201-03:00",
"updated_at": "2020-06-30T15:54:19.201-03:00"
}
Para finalizar o processo da criação de uma conta de pagamento, é preciso:
- Criar a conta
- Passar pelas etapas de Know Your Customer (KYC), em que a conta será validada e aprovada.
Conta de Pagamento
Quando a conta é aprovada pelo fluxo de KYC, os dados bancários da conta de pagamento são criados.
Com os dados bancários disponíveis, a conta se torna apta a realizar movimentações financeiras e está pronta para ser usada.
Veja a estrutura da conta de pagamento aprovada. Note o campo bank_account
preenchido:
{
"id": 0,
"name": "Jose Penteado",
"email": "[email protected]",
"mobile_number": "21999998888",
"document": 564937165,
"document_type": "cpf",
"date_of_birth": "2000-12-31",
"username": "myusername",
"enabled": true,
"status": "blocked",
"bank_account": {
"id": 1,
"account_code": 8259,
"branch_code": "001",
"account_type": "CC",
"institution": {
"name": "Stone Pagamentos S.A.",
"ispb": "16501555",
"code": "197"
}
},
"created_at": "2020-06-30T15:54:19.201-03:00",
"updated_at": "2020-06-30T15:54:19.201-03:00"
}
Entenda os campos do objeto `bank_account:
Campo | Descrição |
---|---|
id | O ID gerado para identificar a conta de pagamento. |
account_code | Código da conta com o dígito verificador. |
branch_code | Código da agência sem o digito verificador. |
account_type | Tipo de conta de pagamento:CC - Conta Corrente.CD - Conta de Depósito.CG - Conta Garantida.CI - Conta de Investimento.PG - Conta de Pagamento.PP - Poupança. |
institution | Objeto que define a instituição de pagamento:name: Nome da instituição de pagamento.ispb: Código de identificação dos bancos no sistema de transferência do BACEN.code: Código referente a instituição de pagamento. |
Limite
Por padrão, toda account é criada R$0,00 de limite de movimentação mensal e diário. Quando ela se torna uma conta e pagamento com KYC validado e aprovado é atribuído a ela um plano de limite padrão da API de Banking Gateway. Para editar esse limite devem ser usadas as rotas de limite disponível em nossa documentação.
Updated 11 months ago