Criar nova conta

Criar a conta (também denominada Conta Cartão) é o primeiro passo para que possa ser emitido um cartão para seus clientes.

Para criar uma conta cartão para o produto Pré-pago ou Multiapp, obrigatoriamente, o cliente deverá ter uma conta BaaS Celcoin criada e ativa.

Por padrão, cada cliente (CPF/CNPJ) pode ter apenas uma conta de cartão por tipo de produto (pré-pago, pós-pago ou Multiapp). Isso significa que o mesmo cliente pode possuir um cartão pré-pago e outro pós-pago, mas não pode ter duas contas ativas para o mesmo tipo de cartão.

É possível uma conta do tipo Pessoa Jurídica ou Pessoa Física, isso é definido através do preenchimento do objeto Company ou Person.



Passos para Integrar

  1. Realizar autenticação na API.
  2. Cadastre a conta, fornecendo as informações necessárias.
  3. Receba as informações da conta cadastrada via webhook e realize as validações.

Se houver demora na resposta ou no recebimento do webhook, consulte o estado da conta no ambiente.


Criar nova conta

Para realizar a criação de uma conta, após a autenticação, é necessário realizar a seguinte requisição:


Pontos de atenção:
Será negada a requisição que possuir os atributos do company e do person simultaneamente.

Para uma conta do produto multiapp, é necessário informar o debitProgramId e o creditProgramId, e preencher o campo isMultiapp como true.

Caso o campo isMultiapp seja false, será aceita apenas requisições com apenas um dos campos de ProgramId preenchido.


cURL da chamada

curl --location 'http://localhost:8082/accounts' \
--header 'Authorization: Bearer {TOKEN}' \
--header 'User-Agent: insomnia/10.0.0' \
--header '' \
--data-raw '{
    "application": {
        "applicant": {
            "submit": true,
            
            "company": {
                "name": "Empresa Jesse Corkery",
                "email": "[email protected]",
                "companyName": "Empresa Jesse Corkery LTDA",
                "activity": "Tecnologia",
                "companyType": "Sociedade Limitada",
                "companyFormat": "LTDA",
                "companyConstitutionDate": "2010-10-20",
                "occupation": "Desenvolvimento de Software",
                "annualRevenues": 1500000,
                "income": 2000000,
                "netWorth": 500000,
                "type": "Fornecedor",
                "percOwnership": 100,
                "fiscalSituation": "Regular",
                "debt": 0
            },
            "account": {
                "accountType": "PHYSICAL",
                "accountName": "Conta do Jesse Corkery",
                "grantedLimit": 1000,
                "limit": 1000
            },
            "documentNumber": "69257621919163",
            
            "addresses": [
                {
                    "addressType": "OTHER",
                    "address": "Avenida Padre Anchieta",
                    "number": 954,
                    "country": "Brasil",
                    "neighborhood": "Santa Tereza",
                    "city": "Boa Vista",
                    "state": "RR",
                    "zipCode": "69314146",
                    "mailingAddress": false
                },
                {
                    "addressType": "OTHER",
                    "address": "Alameda Santa Rosa",
                    "number": 162,
                    "country": "Brasil",
                    "neighborhood": "Portal da Amazônia",
                    "city": "Rio Branco",
                    "state": "AC",
                    "zipCode": "69915642",
                    "mailingAddress": true
                }
            ],
            "phones": [
                {
                    "phone": "983081680",
                    "phoneType": "MOBILE",
                    "countryCode": "55",
                    "areaCode": 95
                }
            ]
        },
        "creditProgramId": 7
        
        
        ,"dueDate": 15,
        "isMultiapp": false
    }
}'

👍

Sucesso 200

{
  "version": 1,
  "status": 200
}

Significado dos objetos na requisição

ObjetoCampoTipoDescriçãoObrigatório
submitbooleanSempre preencher como true.
personal
namestring (100)Nome do portador do cartão. Permitido acento e espaços.Sim
emailstring (100)E-mail do portador do cartão.Sim
genderstring (1)Indica o gênero do portador da conta. M para masculino e F para femininoSim
printedNamestring (25)Nome impresso no cartão. Sempre em maiúsculo, sem acentos, números ou caracteres especiais.

Exemplo: Marco Antônio Fagundes - Nome impresso: MARCO FAGUNDES
Sim
socialNamestring (80)Nome Social.Não
maritalStatusstring (10)Indica o status civil do portador da conta, SINGLE para solteiro, MARRIED para casado, DIVORCED para divorciado e WIDOWER para viúvoSim
company
namestring(100)Nome do portador do cartão. Permitido acento e espaços.Sim
emailstring(100)E-mail do portador do cartão.Sim
companyNamestring(60)Razão Social.Não
activitystring(30)Área de atuação.Não
companyTypestring(60)Tipo da empresa (ex: matriz, filial, holding)Não
companyFormatstring(60)MEI, EI, LTDA e SLU.Não
companyConstituionDatestring(date)Data de abertura do CNPJ. Ex: 2010-05-30
AAAA-MM-DD
Não
occupationstring(60)Ocupaçção principal.Não
annualRevenuesnumericReceita média anual, últimos 12 meses. Ex: 200000
Não tem decimal.
Não
incomenumericRenda bruta total.
Ex: 200000
Não tem decimal.
Não
networthnumericPatrimônio liquido da empresa.
Ex: 200000
Não tem decimal.
Não
typestring(60)Tipo relação comercial. Ex: parceiro, fornecedor.Não
percOwnershipnumericPercentual de participação da empresa em outro negócio.Não
fiscalSituationstring(60)Situação fiscal (ativa, suspensa, irregular)Não
debtnumericValor total das dívidas externas da empresa.Não
account
limitnumericPrencher sempre valor 0.Não
grantedLimitnumericPrencher sempre valor 0.Para produto pós pago e multiapp é obrigatório.
accountTypestring(100)Preencher sempre PHYSICAL.Sim
accountNamestring(100)Nome do cliente.Não
documentNumberstring (20)Documento do portador do cartão (CPF ou CNPJ)Sim
birthDatestring (10)Data de nascimento do portador do cartãoObrigatório em caso de conta PF.
identityNumberstring(10)Número identidade RG.Obrigatório em caso de conta PF.
issuingAuthorirystring(4)Orgão emissor. EX: SSP.Obrigatório em caso de conta PF.
issueStatestring(2)Estado de emissão do documento.Obrigatório em caso de conta PF.
issueDatestring(date)Data emissão documento.
AAAA-MM-DD
Obrigatório em caso de conta PF.
nationalitystring(40)Nacionalidade.Obrigatório em caso de conta PF.
birthStatestring(2)Estado de nascimento.Obrigatório em caso de conta PF.
placeOfBirthstring(40)Cidade de nascimento.Obrigatório em caso de conta PF.
occupationstring(80)ProfissãoObrigatório em caso de conta PF.
incomenumericRenda.Obrigatório em caso de conta PF.
addresses
addressTypestring (10)Tipo de endereço, RESIDENTIAL é residencial, COMMERTIAL é comercial e Others
addressstring (50)Logradouro do endereço
numberintNúmero do endereço. Caso não tenha número, preencher com 0.
neighborhoodstring (50)Bairro do endereço
citystring (50)Cidade do endereço
statestring (2)Estado do endereço
countrystring (5)País do endereço
zipCodestring (10)CEP do endereço
mailingAddressbooleanIndica se é o endereço de entrega e correspondência. Obrigatório que um dos endereços informados estejam com esse campo como TRUE.
complementaryAddressstring (100)Complemento de informações para o endereço.
phones
phoneTypestring (10)Tipo de telefone RESIDENTIAL é para telefone residencial, COMMERTIAL é para telefone comercial e MOBILE para telefone celular.
countryCodeintDDI em que o telefone se encontra.
phonestring (10)Número do telefone.
areaCodeintDDD em que o telefone se encontra.
creditProgramIdintId do programa de crédito, caso seja um cartão pós-pago ou multiapp.Obrigatório para produto multiapp e pós pago.
debitProgramIdintId do programa de débito, caso seja um cartão pré-pago ou multiapp.Obrigatório para produto multiapp e pré pago.
isMultiappboolUtilize true para contas que irão possuir cartão com a função pré e pós no mesmo plástico.
dueDateint
accountBaasstringÉ o número da conta do cliente no Baas.

🚧

Atenção!

O processo de criação de conta é assíncrono onde o resultado do cadastro é enviado por meio de um webhook. Para mais informações, acesse: Cadastrar e Gerenciar Webhooks


Buscar dados de uma conta

Existem duas maneiras para se consultar as informações de uma conta:

  • accountId - Retorna exatamente a conta referente ao id informado.
  • Documento - Retorna uma lista de contas, uma vez que um documento pode estar presente em mais de um programa.

Para obter informações de uma conta criada, realize uma chamada no endpoint abaixo utilizando o accountId.

Para pesquisar de outras formas utilize a documentação da API.

Exemplo de chamada buscando por accountId:

curl --request GET \
  --url https://sandbox-apicorp.celcoin.com.br/cards/v1/accounts/{accountId}\
  --header 'Authorization: Bearer {TOKEN}' \
  --header 'User-Agent: insomnia/10.0.0' \
 

👍

Sucesso 200

{
    "version": false,
    "status": 200,
    "body": [
        {
            "id": 256,
            "customers": [
                {
                    "id": 256,
                    "name": "MARCIA FERREIRA COSTA",
                    "email": "[email protected]",
                    "documentNumber": "326055109803",
                    "owner": true,
                    "dateOfBirth": "1984-07-11",
                    "createdAt": "2025-02-04 17:13:44"
                }
            ],
            "addresses": [
                {
                    "id": 256,
                    "addressType": "RESIDENTIAL",
                    "address": "RUA VEREADOR NAPOLEAO NOVISK",
                    "number": "1",
                    "complement": null,
                    "neighborhood": "LOTEAMENTO LOANDA",
                    "city": "ATIBAIA",
                    "state": "SP",
                    "country": "Brasil",
                    "zipAddress": "12945160",
                    "active": true,
                    "mailingAddress": true,
                    "createdAt": "2025-02-04 00:00:00"
                }
            ],
            "phones": [
                {
                    "id": 256,
                    "type": "MOBILE",
                    "countryCode": 55,
                    "areaCode": 11,
                    "number": "999551111",
                    "extension": null,
                    "active": true,
                    "createdAt": "2025-02-04 00:00:00"
                }
            ],
            "accountLimit": [],
            "dueDate": [],
            "accountStatus": "NORMAL",
            "financialStatus": "NORMAL",
            "program": [
                {
                    "programId": 41,
                    "name": "NovoDebito4",
                    "type": "DEBITO",
                    "timezone": "America/Sao_Paulo",
                    "binId": 81373,
                    "startRange": 0,
                    "endRange": 333332,
                    "status": true,
                    "countryCode": "BRA",
                    "avaliableCards": 333332,
                    "currencyCode": "986",
                    "createdAt": "2025-02-04 16:46:17",
                    "updatedAt": "2025-02-04 17:21:48"
                }
            ]
        }
    ]
}

Significado dos objetos

Campos (obrigatórios)TipoDescrição
programlistLista de programas ao qual a conta pesquisada faz parte.
dueDatelistLista de dias de vencimento para esta conta. Essa lista só é emeitida quando a conta pertence a um programa de crédito.
namestring (100)Nome do portador do cartão
emailstring (100)E-mail do portador do cartão
genderstring (1)Indica o gênero do portador da conta. M para masculino e F para feminino
maritalStatusstring (10)Indica o status civil do portador da conta, SINGLE para solteiro, MARRIED para casado, DIVORCED para divorciado e WIDOWER para viúvo
(grantedLimit)intLimite concedido para pós-pago (informado pelo cliente) - obrigatório apenas para programas de crédito, incluindo cartões pré-pago que transacionam na trilha do crédito
(limit)intLimite que o cliente definiu para uso, sempre igual ou menor que o grantedlimit. - _opcional
accountTypestring (30)Tipo da conta, RESIDENTIAL é PF, COMMERTIAL é PJ e Others
accountNamestring (50)Nome do proprietário da conta para identificação
documentNumberstring (20)Documento do portador do cartão (CPF ou CNPJ)
birthDatestring (10)Data de nascimento do portador do cartão
phoneTypestring (10)Tipo de telefone RESIDENTIAL é para telefone residencial, COMMERTIAL é para telefone comercial e MOBILE para telefone celular
countryCodeintDDI em que o telefone se encontra
phonestring (10)Número do telefone
areaCodeintDDD em que o telefone se encontra
addressTypestring (10)Tipo de endereço, RESIDENTIAL é residencial, COMMERTIAL é comercial e Others
addressstring (50)Logradouro do endereço
numberintNúmero do endereço
neighborhoodstring (50)Bairro do endereço
citystring (50)Cidade do endereço
statestring (2)Estado do endereço
countrystring (5)País do endereço
zipCodestring (10)CEP do endereço
mailingAddressbooleanIndica se é o endereço de entrega e correspondência.
complementaryAddressstring (100)Complemento de informações para o endereço