Agora é possível buscar Faturas através doexternal_reference, order_id ou end_to_end!

Anteriormente, para consultar uma fatura na iugu, o dado principal utilizado era o invoice_id. No entanto, em diversas situações, esse identificador não era armazenado pelos nossos clientes, dificultando a consulta direta. Agora, com os novos endpoints, é possível realizar buscas utilizando outros parâmetros, como:

  • external_reference: Referência externa configurada no momento da criação da fatura.
  • order_id: Identificador do pedido atribuído durante a criação da fatura.
  • end_to_end: Código específico para transações realizadas ou reembolsadas via PIX.

Essa funcionalidade visa proporcionar maior flexibilidade e assertividade na localização de faturas.


Referências de Endpoints

DescriçãoEndpoint
Buscar Fatura por IDs externosGET /v1/resource_search
Buscar Fatura por ID Externos de SubcontasGET /v1/marketplace_resource_search

Importante ⚠️

Para utilizar esses endpoints, é necessário especificar o tipo de parâmetro no campo query_field e informar o valor correspondente em value.
Veja abaixo as opções disponíveis:

ParâmetroDescrição
external_idPara buscar faturas que possuem um valor específico configurado no campo external_reference durante a criação.
order_idPara localizar faturas utilizando o valor atribuído no parâmetro order_id no momento de sua criação.
end_to_endPara identificar faturas pagas ou reembolsadas via PIX, utilizando o código único de transação end_to_end fornecido pelo Banco Central.

Exemplo de Requisição -external_reference

curl --request GET \
     --url 'https://api.iugu.com/v1/resource_search?query_field=external_id&value=meu-external-id&api_token=seu-api_token' \
     --header 'accept: application/json'
  • query_field: Deve conter o valor external_id.
  • value: Insira o identificador externo configurado na fatura.

Exemplo de Requisição -order_id

curl --request GET \
     --url 'https://api.iugu.com/v1/resource_search?query_field=order_id&value=meu-order_id&api_token=seu-api_token' \
     --header 'accept: application/json'
  • query_field: Deve conter o valor order_id.
  • value: Insira o identificador de pedido configurado na fatura.

Exemplo de Requisição -end_to_end

curl --request GET \
     --url 'https://api.iugu.com/v1/resource_search?query_field=end_to_end&value=id-do-end_to_end&api_token=seu-api_token' \
     --header 'accept: application/json'
  • query_field: Deve conter o valor end_to_end.
  • value: Insira o código único da transação PIX.

Benefícios

  • Assertividade: Localize faturas com maior precisão utilizando identificadores alternativos.
  • Flexibilidade: Facilita o rastreamento mesmo quando o invoice_id não é salvo ou está indisponível.
  • Suporte PIX: Inclui a busca por transações realizadas via PIX, refletindo as demandas atuais do mercado.

Essa melhoria torna o gerenciamento de faturas mais eficiente e alinhado às necessidades de diferentes cenários operacionais.

Agora é possível fazer Split por Assinaturas!

Anteriormente, a funcionalidade de Splits era limitada ao endpoint de criação de faturas (POST /v1/invoices), permitindo regras variáveis de Split apenas nesse contexto. Com a nova atualização, o Split por Assinaturas foi introduzido, ampliando as possibilidades para usuários que utilizam o endpoint de criação de assinaturas (POST /v1/subscriptions). Essa melhoria permite a configuração direta do objeto splits durante a criação de uma assinatura.

O que muda na prática?

Agora, ao criar uma assinatura, é possível definir regras personalizadas de divisão de valores (Split) diretamente no momento da requisição. Isso oferece maior flexibilidade e automação na gestão de receitas, especialmente para negócios que dependem de repasses para diferentes contas.

Assim, as mesmas possibilidades já existentes para faturas estão disponíveis para assinaturas, promovendo um alinhamento entre as duas funcionalidades.


Exemplo de Requisição

Veja abaixo um exemplo prático de como configurar um Split durante a criação de uma assinatura:

curl --request POST \
     --url 'https://api.iugu.com/v1/subscriptions?api_token=seu-api_token' \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --data '
{
  "plan_identifier": "basic_plan",
  "customer_id": "282BF13F9DBF4D3D8C5D344FEA370F78",
  "splits": [
    {
      "recipient_account_id": "ID da Conta",
      "cents": 45
    }
  ]
}
'

Detalhamento do Payload:

ParâmetroDescrição
plan_identifierIdentificador único do plano de assinatura
customer_idID do cliente ao qual a assinatura será vinculada
splitsObjeto que define as regras de divisão de receita
recipient_account_idID da conta que receberá a parte do valor
centsQuantidade em centavos que será direcionada para essa conta

Importante ⚠️

  • Ao incluir regras de Split diretamente no payload da requisição de criação de assinaturas, as regras globais de Split configuradas na conta serão ignoradas. Nesse caso, as regras definidas no objeto splits prevalecerão.

Certifique-se de revisar a lógica de divisão antes de implementar essa funcionalidade para garantir que ela atenda às suas necessidades específicas.

Essa novidade traz mais flexibilidade para adaptar os processos de divisão de receitas às exigências do seu modelo de negócio!

O parâmetro address_proof foi adicionado na Verificação de Subcontas!

A partir de agora, a verificação de subcontas exige um terceiro documento como parte do processo. Além dos parâmetros já existentes, identification e selfie, também será necessário enviar o parâmetro address_proof. Isso implica que a solicitação de verificação deve conter três arquivos obrigatórios.

Essa alteração impacta o endpoint:
POST /v1/accounts/{account_id}/request_verification

Para mais detalhes, consulte a documentação oficial do endpoint.


Exemplo de Requisição

curl --request POST \
     --url 'https://api.iugu.com/v1/accounts/5F0610FC05AA4EF391738124B312BBFA/request_verification?api_token=api_token-da-subconta' \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --data '
{
  "data": {
    "price_range": "Entre R$ 100,00 e R$ 500,00",
    "business_type": "Descrição do negócio",
    "person_type": "Pessoa Física",
    "cpf": "11343675030",
    "address": "Rua Principal",
    "cep": "13056-344",
    "city": "Cidade",
    "district": "Bairro",
    "state": "SP",
    "bank": "Santander",
    "bank_ag": "0000",
    "account_type": "Corrente",
    "bank_cc": "00000000-D"
  },
  "files": {
    "identification": "data:image/png;name=verificado.png;base64,(caracteres base64)",
    "selfie": "data:image/png;name=verificado.png;base64,(caracteres base64)",
    "address_proof": "data:image/png;name=verificado.png;base64,(caracteres base64)"
  }
}
'

Importante ⚠️

  • Obrigatoriedade dos Arquivos: Os três arquivos (identification, selfie e address_proof) são estritamente necessários para que a verificação seja processada. Qualquer ausência ou formato incorreto resultará em falha na solicitação.
  • Formato dos Arquivos: Certifique-se de que os documentos enviados estejam codificados em Base64 e atendam aos critérios de qualidade e legibilidade.

Essa atualização busca reforçar a segurança e a conformidade regulatória no processo de verificação de subcontas, garantindo maior proteção para os usuários e seus negócios.

O endpoint que lista os API Tokens de uma conta foi descontinuado

A partir de hoje (18), o endpoint GET /v1/{account_id}/api_tokens não está mais disponível para utilização. Esta é mais uma medida de segurança que adotamos para manter a integridade das Contas iugu.


Acessar api_token

Os tokens são disponibilizados durante a criação de uma subconta ou criação via Alia. Guarde-os em um local seguro para todas as outras requisições às nossas APIs.

Atualização na documentação: https://dev.iugu.com/reference/adicionar-domicilio-bancario , a quantidade de caracteres das contas das instituições de pagamentos "Stone e "FitBank".

Stone - 13 caracteres no parâmetro "account".
FitBank - 10 caracteres no parâmetro "account".

 '197':
    name: 'Stone'
    pattern:
      agency: '9999'
      account: '9999999999999'
      account_dvs: 'D'

  '450':
    name: 'FitBank'
    pattern:
      agency: '9999'
      account: '9999999999'
      account_dvs: 'D'

Separamos os Gatilhos por categoria

A fim de otimizar a visualização e organização das nossas páginas, separamos os gatilhos por categoria. São elas:


Em construção... 🚧

Ainda serão inseridos outros gatilhos que já existem, porém, com dados atualizados #staytuned.


Começa hoje!

Como compromisso com a segurança da sua conta, adicionamos +3 endpoints que obrigam a utilização de Assinatura RSA em suas requisições. São eles:

ReferênciaEndpoint
Criar Subconta/v1/marketplace/create_account
Configurar Conta/v1/accounts/configuration
Adicionar domicílio bancário/v1/bank_verification

Saiba mais sobre Assinatura RSA

O artigo Autenticação — Assinatura RSA aborda o assunto com um passo a passo detalhadamente descrito. Além disso, conta com a gravação do webinar, conduzido por um de nossos engenheiros. Veja:


Que tal uma Recipe? 🧪

Acesse esta recipe que sugere como o seu script pode ser desenvolvido (em Ruby) para este recurso: recipes/assinatura-rsa.