Criar Conta

Essa funcionalidade permite que os clientes da Celcoin consigam realizar a abertura de uma conta BaaS para seus clientes.

  1. Conta PF
  2. Conta PJ

1. Conta PF

Passos para Integrar

  1. Realizar autenticação na API - [API Reference]
  2. Criar Conta PF na API - [API Reference]
  3. Salvar onBoardingId.
  4. Receber o Webhook com as informações da Conta criada.

Caso seja necessário você pode consultar o status da conta manualmente.


Fluxo de integração

Criar Conta PF

JSON de exemplo

{
  "clientCode": "123456",
  "accountOnboardingType": "BANKACCOUNT",
  "documentNumber": "33333333333",
  "phoneNumber": "+5512981175554",
  "email": "[email protected]",
  "motherName": "Nome Sobrenome",
  "fullName": "Nome Sobrenome",
  "socialName": "Nome",
  "birthDate": "31-12-1984",
  "address": {
    "postalCode": "12211400",
    "street": "Av Paulista",
    "number": "313",
    "addressComplement": "Em frente ao parque.", 
    "neighborhood": "Bairro",
    "city": "São Paulo",
    "state": "SP",
    "longitude": "-46.6488",
    "latitude": "-23.6288"
  },
  "isPoliticallyExposedPerson": false
}

cURL da chamada

curl --location --request POST 'https://sandbox.openfinance.celcoin.dev/baas-onboarding/v1/account/natural-person/create' \
--header 'accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{token}}
--data-raw '{
  "clientCode": "8237987978",
  "accountOnboardingType": "BANKACCOUNT",
  "documentNumber": "70578847027",
  "phoneNumber": "+5512981175554",
  "email": "[email protected]",
  "motherName": "Nome Sobrenome",
  "fullName": "Nome Sobrenome",
  "socialName": "Nome",
  "birthDate": "31-12-1984",
  "address": {
    "postalCode": "12211400",
    "street": "Av Paulista",
    "number": "313",
    "addressComplement": "Em frente ao parque.", 
    "neighborhood": "Bairro",
    "city": "São Paulo",
    "state": "SP",
    "longitude": "-46.6488",
    "latitude": "-23.6288"
  },
  "isPoliticallyExposedPerson": false
}'

Exemplo de retorno

👍

Sucesso 200

{
  "version": "1.0.0",
  "status": "PROCESSING",
  "body": {
    "onBoardingId": "39c8e322-9192-498d-947e-2daa4dfc749e"
  }
}

ClientCode é um identificador único por transação criado por você e o onBoardingId é campo que você utilizará para realizar a consulta de status da conta manualmente, Recomendamos você guardar esses campos.

Error 400

{
  "version": "1.0.0",
  "status": "ERROR",
  "error": {
    "errorCode": "CBE001",
    "message": "ClientCode é obrigatório"
  }
}

Tabela de errorCode

CodeMessage
CBE001ClientCode é obrigatório.
CBE002accountOnboardingType deve ser do tipo BANKACCOUNT OU GRAPHICACCOUNT.
CBE003documentNumber é obrigatório e deve ser um CPF válido.
CBE004phoneNumber ou contactNumber é obrigatório e deve ser um telefone válido.
CBE005email é obrigatório e deve ser um email válido.
CBE006motherName é obrigatório e deve ser completo.
CBE007fullName é obrigatório e deve ser completo.
CBE008birthDate é obrigatório e deve ser no formato (DD-MM-YYYY)
CBE009address é obrigatório.
CBE010postalCode é obrigatório e deve ser um CEP existente.
CBE011street é obrigatório e deve respeitar os limites de caracteres.
CBE012number inválido.
CBE013neighborhood é obrigatório.
CBE014city é obrigatório e deve ser uma cidade valida.
CBE015state é obrigatório e deve ser uma estado valido.
CBE016latitude inválido.
CBE017longitude inválido.
CBE022Já existe uma conta vinculada a este CPF.

Webhook de Retorno

{
  "entity": "onboarding-create",
  "createTimestamp": "2022-11-04T10:35:16.0511474",
  "status": "CONFIRMED",
  "body": {
    "account": {
      "branch": "0001",
      "account": "30053912934",
      "name": "Ms. Rodolfo Marvin",
      "documentNumber": "86913161280"
    },
    "onboardingId": "5e39442d-270f-4f9a-b752-9c08456c6e14",
    "clientCode": "4f8ff32f-2d1f-4c28-b316-8020b3d13d43",
    "createDate": "2022-11-04T10:35:16.0511474"
  }
}

Verificar Status da Conta

cURL da Chamada:

curl --location --request GET 'https://sandbox.openfinance.celcoin.dev/baas-onboarding/v1/account/check?onboardingId=6174ec78-3de2-4add-85db-e56aace8b5ef' \
--header 'accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{token}}'

Modelo de Retorno

{
  "version": "1.0.0",
  "status": "CONFIRMED",
  "body": {
    "onboardingId": "39c8e322-9192-498d-947e-2daa4dfc749e",
    "clientCode": "123456",
    "createDate": "2022-12-31T00:00:00.0000000+00:00",
    "entity": "account-create",
    "account": {
      "branch": "1234",
      "account": "123456",
      "name": "Fernanda Aparecida da Silva",
      "documentNumber": "47855748778"
    }
  }
}

Status da abertura de conta

RetornoDescrição
PROCESSINGAbertura de conta ainda em processamento.
CONFIRMEDAbertura de conta finalizada com sucesso.
ERRORAbertura de conta finalizada com erro, favor verificar o objeto 'error' do payload.

2.Conta PJ

Passos para Integrar

  1. Realizar autenticação na API - [API Reference]
  2. Criar Conta PJ na API - [API Reference]
  3. Salvar onBoardingId.
  4. Receber o Webhook com as informações da Conta criada.

Caso seja necessário você pode consultar o status da conta manualmente.


Fluxo de integração

Criar Conta PJ

JSON de exemplo

{
  "clientCode": "123456",
  "accountOnboardingType": "BANKACCOUNT",
  "documentNumber": "56461227000199",
  "contactNumber": "+551239215555",
  "businessEmail": "[email protected]",
  "businessName": "IP Pagamentos",
  "tradingName": "IPay",
  "owner": [
    {
      "documentNumber": "56461227123",
      "fullName": "Carlos Henrique da Silva",
      "phoneNumber": "+5512981175554",
      "email": "[email protected]",
      "motherName": "Celia Regina",
      "socialName": "Carlos",
      "birthDate": "31-12-1984",
      "address": {
        "postalCode": "12211400",
        "street": "Rua das Andorinhas",
        "number": "313",
        "addressComplement": "Em frente ao parque.",
        "neighborhood": "Rua das Maravilhas",
        "city": "São Paulo",
        "state": "SP",
        "longitude": "-46.6488",
        "latitude": "-23.6288"
      },
      "isPoliticallyExposedPerson": false
    }
  ],
  "businessAddress": {
    "postalCode": "12211400",
    "street": "Rua das Andorinhas",
    "number": "313",
    "addressComplement": "Em frente ao parque.",
    "neighborhood": "Rua das Maravilhas",
    "city": "São Paulo",
    "state": "SP",
    "longitude": "-46.6488",
    "latitude": "-23.6288"
  },
  "cadastraChavePix": false
}

cURL da chamada

curl --request POST \
     --url https://sandbox.openfinance.celcoin.dev/baas-onboarding/v1/account/business/create \
     --header 'accept: application/json' \
     --header 'authorization: Bearer {{token}}' \
     --header 'content-type: application/json' \
     --data '
{
  "clientCode": "123456",
  "accountOnboardingType": "BANKACCOUNT",
  "documentNumber": "56461227000199",
  "contactNumber": "+551239215555",
  "businessEmail": "[email protected]",
  "businessName": "IP Pagamentos",
  "tradingName": "IPay",
  "owner": [
    {
      "documentNumber": "56461227123",
      "fullName": "Carlos Henrique da Silva",
      "phoneNumber": "+5512981175554",
      "email": "[email protected]",
      "motherName": "Celia Regina",
      "socialName": "Carlos",
      "birthDate": "31-12-1984",
      "address": {
        "postalCode": "12211400",
        "street": "Rua das Andorinhas",
        "number": "313",
        "addressComplement": "Em frente ao parque.",
        "neighborhood": "Rua das Maravilhas",
        "city": "São Paulo",
        "state": "SP",
        "longitude": "-46.6488",
        "latitude": "-23.6288"
      },
      "isPoliticallyExposedPerson": false
    }
  ],
  "businessAddress": {
    "postalCode": "12211400",
    "street": "Rua das Andorinhas",
    "number": "313",
    "addressComplement": "Em frente ao parque.",
    "neighborhood": "Rua das Maravilhas",
    "city": "São Paulo",
    "state": "SP",
    "longitude": "-46.6488",
    "latitude": "-23.6288"
  },
  "cadastraChavePix": false
}'

Exemplo de retorno

👍

Sucesso 200

{
  "version": "1.0.0",
  "status": "PROCESSING",
  "body": {
    "onBoardingId": "39c8e322-9192-498d-947e-2daa4dfc749e"
  }
}

O onBoardingId é campo que você utilizará para realizar a consulta de status da conta manualmente, Recomendamos você guardar esse campo.

Error 400

{
  "version": "1.0.0",
  "status": "ERROR",
  "error": {
    "errorCode": "CBE001",
    "message": "ClientCode é obrigatório"
  }
}

Tabela de errorCode

CodeMessage
CBE001ClientCode é obrigatório.
CBE002accountOnboardingType deve ser do tipo BANKACCOUNT OU GRAPHICACCOUNT.
CBE004phoneNumber ou contactNumber é obrigatório e deve ser um telefone válido.
CBE008birthDate é obrigatório e deve ser no formato (DD-MM-YYYY)
CBE010postalCode é obrigatório e deve ser um CEP existente.
CBE011street é obrigatório e deve respeitar os limites de caracteres.
CBE013neighborhood é obrigatório.
CBE014city é obrigatório e deve ser uma cidade valida.
CBE015state é obrigatório e deve ser uma estado valido.
CBE018documentNumber é obrigatório e deve ser um CNPJ válido.
CBE019businessName é obrigatório e deve ser completo.
CBE020tradingName é obrigatório e deve ser completo.
CBE023Já existe uma conta vinculada a este e-mail.
CBE024Já existe uma conta vinculada a este telefone.
CBE025Já existe uma conta vinculada a este CNPJ.
CBE033owner.documentNumber é obrigatório e deve ser um CPF ou CNPJ válido.
CBE034owner.name é obrigatório e deve ser completo.
CBE036owner.email é obrigatório e deve ser um email válido.
CBE037owner.address é obrigatório.
CBE168businessEmail é obrigatório e deve ser um email válido.
CBE169businessAddress é obrigatório.

Webhook de Retorno

{
  "entity": "onboarding-create",
  "createTimestamp": "2022-11-04T10:35:16.0511474",
  "status": "CONFIRMED",
  "body": {
    "account": {
      "branch": "0001",
      "account": "30053912934",
      "name": "Ms. Rodolfo Marvin",
      "documentNumber": "86913161280"
    },
    "onboardingId": "5e39442d-270f-4f9a-b752-9c08456c6e14",
    "clientCode": "4f8ff32f-2d1f-4c28-b316-8020b3d13d43",
    "createDate": "2022-11-04T10:35:16.0511474"
  }
}

Verificar Status da Conta

cURL da Chamada:

curl --location --request GET 'https://sandbox.openfinance.celcoin.dev/baas-onboarding/v1/account/check?onboardingId=6174ec78-3de2-4add-85db-e56aace8b5ef' \
--header 'accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{token}}'

Modelo de Retorno

{
  "version": "1.0.0",
  "status": "CONFIRMED",
  "body": {
    "onboardingId": "39c8e322-9192-498d-947e-2daa4dfc749e",
    "clientCode": "123456",
    "createDate": "2022-12-31T00:00:00.0000000+00:00",
    "entity": "account-create",
    "account": {
      "branch": "1234",
      "account": "123456",
      "name": "Fernanda Aparecida da Silva",
      "documentNumber": "47855748778"
    }
  }
}

Status da abertura de conta

RetornoDescrição
PROCESSINGAbertura de conta ainda em processamento.
CONFIRMEDAbertura de conta finalizada com sucesso.
ERRORAbertura de conta finalizada com erro, favor verificar o objeto 'error' do payload.