Agora é possível reenviar documentos para KYC, consultar o status de análise e receber notificação via gatilho!

Recentemente adicionamos o objeto files ao endpoint Enviar Verificação de SubcontaPOST /v1/accounts/{account_id}/request_verification que permite enviar arquivos que compõem o processo de KYC de contas bancárias.

A fim de complementar este objeto subimos

2 novos endpoints:

Referência

Endpoint

Descrição

Reenviar Documentos para Verificar Conta iugu

PUT /v1/account/documents

Utilize este endpoint quando os Documentos enviados pelo /v1/accounts/{account_id}/request_verification são reprovados ou deseja alterá-los

  • *Obs.:**Para alteração,**antes** certifique-se que seu status seja pending_manual_analysis.

Consultar Envio de Documentos para Verificação de Conta iugu

GET /v1/account/documents

Permite consultar o status do Envio de Documentos para Verificação de Subconta.

1 Gatilho

Este gatilho é acionado sempre que o resultado da análise da Conta iugu, realizada pelo Time de Prevenção à Fraude, é aprovada ou reprovada.

ParâmetroDescriçãoExemplo
eventNome do Eventoreferrals.verification
data[status]Aprovação ou Reprovaçãoaccepted ou rejected
data[account_id]ID da ContaA123B4C5D6789E2F5G6H7I8J9K8L9M8N8O8
data[id]ID da Verificação-
data[feedback]Se rejected: mensagem do Time de Prevenção à Fraude-

A partir do dia 07/11/2024 +3 rotas entram na lista de obrigatoriedade

Foram adicionados os parâmetros Signature e Request-Time no header dos endpoints:

APIEndpoint
Criar Subcontav1/marketplace/create_account
Configurar Contav1/accounts/configuration
Adicionar Domicílio Bancáriov1/bank_verification

Saiba mais sobre RSA

Consulte o guia completo de RSA em Autenticação — Assinatura RSA.


Recipe 🧪

Além do artigo completo, veja, na prática (em Ruby), uma sugestão de como escrever seu script para RSA: recipes/rsa-assinatura-rsa


Agora as Subcontas iugu deverão enviar arquivos para se tornarem verificadas

Para atender as exigências do BACEN, foram adicionados novos parâmetros ao endpoint Enviar Verificação de SubcontaPOST /v1/accounts/{account_id}/request_verification. São eles:

Objeto files

Arquivos (codificados em Base64 e com limite de 15 MB por arquivo) para KYC, como Foto do Documento de Identificação Pessoal, selfie etc.

ParâmetroDescriçãoObrigatório
identificationDocumento de Identificação Pessoal do Titular (RG, CNH ou Passaporte) detentor dos dados informados no objeto data
selfieFoto (selfie) do titular da Conta
balance_sheetRelatório financeiro da CompanhiaSe person_type é Pessoa Jurídica
social_contractContrato SocialSe person_type é Pessoa Jurídica
additional_document_oneDocumento adicional 1
additional_document_twoDocumento adicional 2
📘

Dica

Na referência da API Enviar Verificação de Subconta, o arquivo é codificado para Base64 automaticamente.

KYC

A conta não será verificada após esta chamada. O prazo para torná-la verified é de até 2 dias úteis.

Verificar status

Utilize o endpoint Informações da ContaGET /v1/accounts/{id} e confira a propriedade is_verified?. Se true, então, a conta está verificada.


Recipe 🧪

Foi criada, também, uma recipe que aborda, na prática, cada chamada para Verificar uma Subconta iugu: recipes/verificar-subconta-iugu-novo

Conteúdo teórico 📖

Saiba mais sobre Verificar subcontas iugu em Criar, Verificar e Configurar Subconta.


As APIs de Convite de Usuário foram desativadas

Estes endpoints eram responsáveis por gerir os convites de usuários que permitiam acesso ao Alia:

APIEndpoint
Criar ConvitePOST /{account_id}/user_invites
Cancelar ConvitePUT /{account_id}/user_invites/{id}/cancel
Reenviar ConvitePOST /{account_id}/user_invites/{id}/resend
Buscar ConviteGET /{account_id}/user_invites/{id}
Listar ConvitesGET /{account_id}/user_invites

E agora?

Para convidar um usuário para acessar o seu Painel, utilize o próprio Painel. Confira o artigo Como cadastrar outros logins de usuários com permissões de acesso diferentes?.

Agora também é possível coletar o URL e/ou PDF do Boleto na API Cobrança Direta

Para os usuários que não utilizam o Checkout iugu e utilizam a API Cobrança DiretaPOST /v1/charge para emissão de Boletos, agora é possível coletar o PDF e/ou a imagem deste boleto através das propriedades a seguir:

PropriedadeDescrição
bank_slip_urlImagem em HTML do Boleto Bancário
bank_slip_pdf_urlImagem em PDF do Boleto Bancário

Requisição exemplo

{
  "method": "bank_slip",
  "email": "[email protected]",
  "items": [
    {
      "description": "Descrição",
      "quantity": 1,
      "price_cents": 500
    }
  ],
  "payer": {
    "cpf_cnpj": "113.436.750-30",
    "name": "Nome"
  }
}

Retorno exemplo

{
    "success": true,
    "url": "?bs=true",
    "pdf": ".pdf",
    "bank_slip_url": "https://boletos.iugu.com/v1/public/invoice/eaf26318-9dce-480d-962c-d0db4bc97ccf-60c3/bank_slip",
    "bank_slip_pdf_url": "https://boletos.iugu.com/v1/public/invoice/eaf26318-9dce-480d-962c-d0db4bc97ccf-60c3/bank_slip.pdf",
    "identification": "40192024257800000000600002057180198590000000500",
    "invoice_id": "EAF263189DCE480D962CD0DB4BC97CCF"
}

Importante ⚠️

Esta propriedade será retornada apenas se, durante a requisição, for informado bank_slip no parâmetro method.

Agora é possível listar todas as transações de cartão de crédito das subcontas a partir de uma Conta Mestre

Utilize o endpoint Listar Transações de Cartão de Crédito de SubcontasGET /v1/accounts/credit_card_transactions informando o api_token da Conta Mestre.

Requisição exemplo

curl --request GET \
     --url 'https://api.iugu.com/v1/accounts/credit_card_transactions?api_token=api_token_da_conta-mestre' \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --data '
{
  "created_at_from": "2024-10-01T00:00:01"
}
'

Response exemplo

{
  "items": [
    {
      "id": "555099DFD7F5487B8C8517070431B3C8",
      "invoice_id": "C4D2C3C67B254DA09573C069837798BA",
      "account_id": "E68BF5BC96144DE48B9EFA0012C85756",
      "status": "unauthorized",
      "authorize_lr": null,
      "cancel_lr": null,
      "lr": "AF02",
      "holder_name": "NOME NO CARTÃO",
      "bin": 411111,
      "last4": "1111",
      "tid": null,
      "nsu": null,
      "arp": null,
      "created_at": "2024-10-01T15:21:46-03:00",
      "authorized_at": null,
      "canceled_at": null,
      "payer_cpf_cnpj": null,
      "payer_name": null,
      "email": "[email protected]",
      "test_mode": false
    }
  ],
  "totalItems": 1
}

** Realizado a atualização na documentação "Status Simulação da Antecipação" para melhor interpretação dos parâmetros e exemplo de retorno.

Status Simulação da Antecipação

Acionado sempre que uma simulação de Antecipação de recebíveis for finalizada.

🚧

Importante

Este gatilho é acionado por simulações de antecipação pelo Alia ou API Criar Simulação Antecipaçãov1/advancement_request/simulation

ParâmetroDescriçãoExemplo
eventNome do Eventoadvancement_request.simulation_status
data[status]Estado da simulaçãoprocessing ou done
data[total_advance_fee_cents]Valor total de tarifas de antecipação em centavos311
data[reached_amount_cents]Valor total alcançado na antecipação, esse será o valor final recebido em centavos. Valor que de fato será liberado para a antecipação.13900
data[average_days]Tempo médio de dias que as parcelas serão antecipadas.3
data[available_amount_cents]Valor total disponível para antecipar em centavos50123
data[simulation_amount_cents]Valor utilizado para antecipar em centavos`13904
data[requested_amount_cents]Valor solicitado para antecipar em centavos`13904
event: advancement_request.simulation_status
  "data[status]": "done",
  "data[total_advance_fee_cents]": "311",
  "data[reached_amount_cents]": "13904",
  "data[average_days]": "3",
  "data[available_amount_cents]": "13904",
  "data[simulation_amount_cents]": "13904",
  "data[requested_amount_cents]": "13904"

RAW BODY
event=advancement_request.simulation_status&data%5Bstatus%5D=done&data%5Btotal_advance_fee_cents%5D=49&data%5Breached_amount_cents%5D=14587&data%5Baverage_days%5D=3&data%5Bavailable_amount_cents%5D=48378&data%5Bsimulation_amount_cents%5D=20000&data%5Brequested_amount_cents%5D=20000

Agora é possível desativar subcontas!

Utilize o endpoint Desativar Subconta/v1/marketplace/deactivate. No body da requisição, informe o account_id da conta que deseja desativar.

Requisição exemplo

curl --request POST \
     --url 'https://api.iugu.com/v1/marketplace/deactivate?api_token=your_live_api_token' \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --data '
{
  "account_id": "911E249555C24F28A30602D647A1CCBB"
}
'

Response exemplo

{
  "success": true,
  "message": "A conta está em processo de desativação, em alguns instantes será finalizado."
}

Importante ⚠️

Atente-se as informações importantes antes de requisitar este endpoint:

  1. Ao requisitar este endpoint, todas as faturas, assinaturas e carnês pendentes serão cancelados e a conta terá o status unverified.
  2. A conta não poderá ter saldo.
  3. A requisição precisa ser feita utilizando o live_api_token da Conta Mestre.