Pular para o conteúdo principal

Manual API SIAPE-SIGEPE


Atenção!

Os webhooks da QI Tech não devem ser mapeadas de forma restrita. Campos adicionais podem ser incluídos aos payloads dos webhooks retornados em nossas APIs.

1. Simulação de Cenários de Sucesso ou Falha

Para fins de teste, temos um conjunto de dados que podem ser utilizados para simular os casos de sucesso ou falha em sandbox, são eles:

Cenário de Sucesso para Consulta de Saldos e Averbações

document_numberauthority_coderegistration_codeorigin_contract_numberfinancial_institution_document_number
25256363506170001354387526985/WU00000000000191

Cenário de Falha para Consulta de Saldos

document_numberfailure_reason
71987878353unauthorized_institution
Atenção
  1. CPFs que não tiverem um cenário mapeado, receberão um webhook com um erro padrão de cenário de teste não mapeado.

    EnumeradorDescrição
    mock_errorInformed document number is not a valid mock on test environment
  2. Ao final do dia (23:59h), todas as reservas que ainda não estiverem em status final (reservada/cancelada/deletada) serão encerradas (canceladas/deletadas) para evitar sobrecarga no ambiente de teste.

2. Consulta de Margem Consignável

Antes de solicitar a consulta da margem consignável, o servidor público precisa ter autorizado a QI Sociedade de Crédito Direto S.A., para realizar operações de Crédito Consignado, dentro do Portal do Servidor (Seguindo o seguinte caminho dentro do portal: “Consignações > Empréstimo Consignado > Autorizar Consignatário”).

A autorização do servidor tem validade de 30 dias corridos.

Após autorização do servidor, é possível realizar a consulta da margem consignável através do seguinte endpoint:

Funcionamento SIAPE

O horário de funcionamento do sistema do SIAPE é das 07:00 às 00:00, apenas em dias de semana e exceto em feriados.

Request

ENDPOINT
/federal_payroll/balance
MÉTODO
POST
Request Body
{
"document_number": "\<CPF SERVIDOR\>"
}
info

O CPF deve ser informado em formato de texto, com no máximo 11 caracteres, sem ".", sem "-" e alinhado com zeros à esquerda.

Response

ENDPOINT
/federal_payroll/balance
MÉTODO
POST
Response Body
{
"balance_key": "\<GUID DA CONSULTA DA MARGEM CONSIGNÁVEL\>",
"status": "pending_search"
}

Consulta com sucesso

Em caso de sucesso na consulta, os dados da margem do servidor serão retornados via webhook.

Caso o servidor só tenha autorizado a QI SCD para operar Empréstimo Consignado, o webhook de sucesso será retornado da seguinte forma:

WEBHOOK_TYPE
federal_payroll.balance
STATUS
Success
Body
{
"key": "\<BALANCE-KEY\>",
"event_datetime": "2022-09-05T18:43:29Z",
"status": "success",
"data": {
"reference_date": "2019-10-21T12:30:00Z",
"name": "João José Silva e Silva",
"balance_query": [
{
"institution_authorized_for_credit_balance": true,
"employment_relationship": "attendant",
"employment_classification": "stable",
"pensioner_registration_code": "",
"registration_code": "12345678",
"pension_validity":"",
"pension_type":"",
"employment_functional_situation":"EST01-PERMANENT ACTIVE",
"authority": {
"code": "17000",
"authority_document_number": "29132934000134",
"description": "MINISTERIO DA ECONOMIA"
},
"consigned_credit": {
"available_balance": 4277.78,
"expiration_date": "2023-03-14"
},
"bank_account":{
"account":"00000111948**",
"bank_code":1,
"account_branch":"0338**"
},
}
]
}
}

Caso o servidor tenha autorizado a QI SCD para operar Empréstimo Consignado e Cartão de Crédito Consignado, o webhook de sucesso será retornado da seguinte forma:

WEBHOOK_TYPE
federal_payroll.balance
STATUS
Success
Body
{
"key": "\<BALANCE-KEY\>",
"event_datetime": "2022-09-05T18:43:29",
"webhook_type": "federal_payroll_balance",
"status": "success",
"data": {
"reference_date": "2019-10-21T12:30:00Z",
"name": "João José Silva e Silva",
"balance_query": [
{
"institution_authorized_for_credit_balance": true,
"employment_relationship": "attendant",
"employment_classification": "stable",
"pensioner_registration_code": "",
"registration_code": "12345678",
"pension_validity":"",
"pension_type":"",
"employment_functional_situation":"EST01-PERMANENT ACTIVE",
"authority": {
"code": "17000",
"authority_document_number": "29132934000134",
"description": "MINISTERIO DA ECONOMIA"
},
"consigned_credit": {
"available_balance": 4277.78,
"expiration_date": "2023-03-14"
},
"consigned_card": {
"available_balance": 718.26
},
"bank_account":{
"account":"00000111948**",
"bank_code":1,
"account_branch":"0338**"
},
}
]
}
}

Definições Federal Payroll Balance

CampoDescrição
registration_codeÉ o código da matrícula do servidor
data.balance_query.employment_relationshipEnumerador Employment Relationship
data.balance_query.employment_classificationEnumerados Employment Classification
data.balance_query.pensioner_registration_codeQuando o employment_relationship for do tipo "pensioner" sera informado neste campo o código do Orgão + Matrícula do servidor
data.balance_query.pension_typeQuando o employment_relationship for do tipo "pensioner" sera informado neste campo o tipo da pensão
data.balance_query.pension_validityQuando o employment_relationship for do tipo "pensioner" e pension_type for "temporary" poderá ser informado neste campo a data de validade da pensão
data.balance_query.employment_functional_situationCódigo e descrição do tipo da situação funcional, códigos existentes no Anexo 1
data.balance_query.consigned_credit.available_balanceValor disponível para contratação de Empréstimo Consignado
data.balance_query.consigned_card.available_balanceValor disponível para pagamento de fatura de Cartão de Crédito Consignado
data.balance_query.institution_authorized_for_credit_balanceFlag para informar se a instituição possui permissão de consulta de margem do tomador ("true" ou "false").

Consulta com falha

Em caso de falha na consulta do saldo, será retornado o seguinte webhook com algum dos enumeradores mapeados:

WEBHOOK_TYPE
federal_payroll.balance
STATUS
Failure
Body
{
"key": "\<BALANCE-KEY\>",
"event_datetime": "2022-09-05T18:43:29Z",
"webhook_type": "federal_payroll_balance",
"status": "failure",
"data": {
"enumerator": "unauthorized_institution",
"description": "Institution is not authorized to search for client."
}
}
EnumeradorDescição
unauthorized_institutionInstitution is not authorized to search for client.
inexistent_relationshipThis client does not have any known federal employment relationship.
invalid_document_numberInvalid document number
inactive_federal_employeeInactive federal employee
deceased_federal_employeeDeceased federal employee

3. Simulação de um Crédito Consignado

Request

ENDPOINT
/debt_simulation
MÉTODO
POST
Request Body
{
"borrower": {
"person_type": "natural"
},
"financial": {
"first_due_date": "2023-04-07",
"installment_face_value": 100.0,
"disbursement_date": "2023-03-14",
"limit_days_to_disburse": 3,
"number_of_installments": 2,
"monthly_interest_rate": 0.0205,
"interest_type": "pre_price_days",
"fine_configuration": {
"monthly_rate": 0.01,
"interest_base": "calendar_days",
"contract_fine_rate": 0.02
},
"credit_operation_type": "ccb",
"interest_grace_period": 0,
"principal_grace_period": 0
},
"collaterals": [{
"collateral_type": "federal_payroll"
}]
}

Response

ENDPOINT
/debt_simulation
MÉTODO
POST
Response Body
{
"data": {
"annual_cet": 0.5040756794535896,
"assignment_amount": 196.75,
"cet": 0.0346,
"contract_fee_amount": 1.95,
"contract_fees": [
{
"amount": 1,
"amount_type": "percentage",
"fee_amount": 1.95,
"fee_type": "tac"
}
],
"credit_operation_type": "ccb",
"disbursed_issue_amount": 191.49,
"disbursement_date": "2023-03-14",
"disbursement_options": [
{
"annual_cet": 0.5040756794535896,
"assignment_amount": 196.75,
"cet": 0.0346,
"contract_fee_amount": 1.95,
"contract_fees": [
{
"amount": 1,
"amount_type": "percentage",
"fee_amount": 1.95,
"fee_type": "tac"
}
],
"disbursed_issue_amount": 191.49,
"disbursement_date": "2023-03-14",
"external_contract_fee_amount": 1.95,
"external_contract_fees": [
{
"amount": 1,
"amount_released": 1.77,
"amount_type": "percentage",
"cofins_amount": 0,
"csll_amount": 0,
"description": null,
"fee_amount": 1.95,
"fee_type": "spread",
"irrf_amount": 0,
"net_fee_amount": 1.77,
"pis_amount": 0,
"tax_amount": 0.18
}
],
"first_due_date": "2023-04-07",
"installments": [
{
"business_due_date": "2023-04-10",
"calendar_days": 24,
"due_date": "2023-04-07",
"due_principal": 194.8,
"has_interest": true,
"installment_number": 1,
"post_fixed_amount": null,
"pre_fixed_amount": 3.1882715773,
"principal_amortization_amount": 96.8117284227,
"tax_amount": 0.1905254815358736,
"total_amount": 100,
"workdays": 17
},
{
"business_due_date": "2023-05-08",
"calendar_days": 30,
"due_date": "2023-05-07",
"due_principal": 97.9882715773,
"has_interest": true,
"installment_number": 2,
"post_fixed_amount": null,
"pre_fixed_amount": 2.0088192272,
"principal_amortization_amount": 97.9911807728,
"tax_amount": 0.4339049484619584,
"total_amount": 100,
"workdays": 18
}
],
"iof_amount": 1.36,
"issue_amount": 194.8,
"net_external_contract_fee_amount": 1.77,
"prefixed_interest_rate": {
"annual_rate": 0.27572219,
"daily_rate": 0.00067665,
"interest_base": "calendar_days",
"monthly_rate": 0.0205
},
"total_pre_fixed_amount": 5.1970908045
}
],
"external_contract_fee_amount": 1.95,
"external_contract_fees": [
{
"amount": 1,
"amount_released": 1.77,
"amount_type": "percentage",
"cofins_amount": 0,
"csll_amount": 0,
"description": null,
"fee_amount": 1.95,
"fee_type": "spread",
"irrf_amount": 0,
"net_fee_amount": 1.77,
"pis_amount": 0,
"tax_amount": 0.18
}
],
"final_disbursement_amount": 191.49,
"installments": [
{
"business_due_date": "2023-04-10",
"calendar_days": 24,
"due_date": "2023-04-07",
"due_principal": 194.8,
"has_interest": true,
"installment_number": 1,
"post_fixed_amount": null,
"pre_fixed_amount": 3.1882715773,
"principal_amortization_amount": 96.8117284227,
"tax_amount": 0.1905254815358736,
"total_amount": 100,
"workdays": 17
},
{
"business_due_date": "2023-05-08",
"calendar_days": 30,
"due_date": "2023-05-07",
"due_principal": 97.9882715773,
"has_interest": true,
"installment_number": 2,
"post_fixed_amount": null,
"pre_fixed_amount": 2.0088192272,
"principal_amortization_amount": 97.9911807728,
"tax_amount": 0.4339049484619584,
"total_amount": 100,
"workdays": 18
}
],
"interest_grace_period": 0,
"interest_payment_month_period": 1,
"interest_type": "pre_price_days",
"iof_amount": 1.36,
"issue_amount": 194.8,
"issue_date": "2023-03-14",
"net_external_contract_fee_amount": 1.77,
"number_of_installments": 2,
"operation_type": "structured_operation",
"post_fixed_interest_base": "workdays",
"post_fixed_interest_rate": null,
"prefixed_interest_rate": {
"annual_rate": 0.27572219,
"daily_rate": 0.00067665,
"interest_base": "calendar_days",
"monthly_rate": 0.0205
},
"principal_amortization_month_period": 1,
"principal_grace_period": 0,
"requester_key": "ef48fbe4-267b-45c1-9049-75345c075486",
"total_pre_fixed_amount": 5.1970908045
},
"event_datetime": "2023-03-15 00:26:05",
"key": "5c7441d2-8282-45e6-aaa8-7062bb155aa3",
"status": "finished",
"type": "debt"
}

4. Emissão de Crédito Consignado

Request

ENDPOINT
/debt
MÉTODO
POST
Request Body
{
"borrower": {
"name": "\<NOME DEVEDOR\>",
"email": "\<EMAIL DEVEDOR\>",
"phone": {
"number": "\<CELUAR DO DEVEDOR\>",
"area_code": "\<DDD DO DEVEDOR\>",
"country_code": "+55"
},
"address": {
"city": "\<CIDADE DO DEVEDOR\>",
"state": "\<ESTADO DO DEVEDOR\>",
"number": "\<No. DO DEVEDOR\>",
"street": "\<RUA DO DEVEDOR\>",
"complement": "\<COMPLEMENTO DO DEVEDOR\>",
"postal_code": "\<CEP DO DEVEDOR\>",
"neighborhood": "\<BAIRRO DO DEVEDOR\>"
},
"role_type": "issuer",
"birth_date": "\<DATA DE NASCIMENTO DO DEVEDOR\>",
"mother_name": "\<NOME DA MÃE DO DEVEDOR\>",
"person_type": "natural",
"individual_document_number": "\<CPF DO DEVEDOR\>",
"gender": "\<SEXO DO DEVEDOR\>",
"nationality": "\<NACIONALIDADE DO DEVEDOR\>",
"is_pep": false,
"marital_status": "\<ESTADO CIVIL DO DEVEDOR\>",
"document_identification_date": "2022-08-01",
"document_identification_type": "rg",
"document_identification_number": "123456777"
},
"financial": {
"first_due_date": "2022-12-07",
"installment_face_value": 100.0,
"disbursement_date": "2022-11-03",
"number_of_installments": 24,
"monthly_interest_rate": 0.0205,
"interest_type": "pre_price_days",
"fine_configuration": {
"monthly_rate": 0.01,
"interest_base": "calendar_days",
"contract_fine_rate": 0.02
},
"credit_operation_type": "ccb",
"interest_grace_period": 0,
"principal_grace_period": 0
},
"simplified": true,
"collaterals": [{
"percentage": 1,
"collateral_data": {
"reservation_type": "refinancing",
"reservation_method": "issuing",
"authority_code": "17000",
"pensioner_registration_code": "",
"registration_code": "12345678",
"authority": {
"description": "teste",
"authority_document_number": "1234"
}
},
"collateral_type": "federal_payroll"
}],
"requester_identifier_key": "\<ID DE CONTROLE DO PARCEIRO\>",
"disbursement_bank_account": {
"name": "\<NOME DO DEVEDOR\>",
"bank_code": "104",
"account_type": "checking_account",
"account_digit": "1",
"branch_number": "3880",
"account_number": "000736703806",
"document_number": "\<CPF DO DEVEDOR\>",
"transfer_method": "pix"
},
"purchaser_document_number": "\<CNPJ DO CESSIONÁRIO\>",
"refinanced_credit_operations": [
{
"operation_key": "d2fd3f63-3d11-42a8-ab5c-9a84b5c58b6c"
}
]
}

Detalhamento de campos no objeto collateral_data

CampoDescriçãoValores
reservation_typeTipo da reservaEnumeradores
registration_codeMatrícula do servidor ou pensionista123456789
reservation_methodDetermina quando deve-se iniciar a tentativa de averbação do consignado, seja no momento da criação da operação de crédito ou no momento da emissão da mesma.Enumeradores

Tabela de tipos de reserva

EnumeradorDescrição
new_creditCrédito Novo
refinancingRefinanciamento

Tabela de metodos de criação de reserva

Atenção

Campo muito importante, pois ele determina diretamente quando o pedido de intensão de reserva na Zetra será feito.

EnumeratorDescrição
creationA tentativa de averbação começará quando a operação de crédito for criada.
issuingA tentativa de averbação começará quando a operação de crédito for emitida, ou seja, após a formalização da mesma.

Response

ENDPOINT
/debt
MÉTODO
POST
Response Body
{
"data": {
"borrower": {
"document_number": "\<CPF DEVEDOR\>",
"name": "\<NOME DEVEDOR\>"
},
"collaterals": [{
"absolute_amount": null,
"collateral_constituted": false,
"collateral_data": {
"authority_code": "17000",
"pensioner_registration_code": "",
"registration_code": "12345678"
},
"collateral_key": "5e40c191-06ae-4da2-9d4b-3c0bf6eeb1a3",
"collateral_type": "federal_payroll",
"created_at": "2022-11-03T20:56:09.200482",
"external_key": "\<DEBT-KEY\>",
"percentage": 1,
"updated_at": "2022-11-03T20:56:09.200474"
}],
"contract": {
"number": "00000000001",
"signature_information": [{
"signature_url": null,
"signer_document_number": "\<CPF ASSINANTE\>",
"signer_email": "\<EMAIL ASSINANTE\>",
"signer_external_key": null,
"signer_name": "\<NOME ASSINANTE\>",
"signer_role": "issuer"
}],
"urls": [
"\<LINK URL DA CCB\>"
]
},
"disbursement_options": [{
"additional_iof": 24.220242,
"annual_cet": "26.1457%",
"assignment_amount": 3205.12,
"base_iof": 176.6603785598479778,
"cet": "1,9544%",
"contract_fee_amount": 17.68,
"contract_fees": [{
"amount": 17.68,
"amount_type": "absolute",
"fee_amount": 17.68,
"fee_type": "spread_cip_cost"
}],
"disbursement_date": "2022-11-03",
"external_contract_fee_amount": 0,
"external_contract_fees": [],
"first_due_date": "2022-12-07"
"installments": [{
"additional_costs": [],
"business_due_date": "2022-12-07",
"calendar_days": 34,
"due_date": "2022-12-07",
"due_interest": 0,
"due_principal": 3187.44,
"fine_amount": null,
"has_interest": true,
"installment_number": 1,
"installment_status": null,
"installment_type": null,
"post_fixed_amount": 0,
"pre_fixed_amount": 64.20069301315790,
"principal_amortization_amount": 35.79930698684210,
"tax_amount": 0.10014353287723266,
"total_amount": 100,
"workdays": 23
}, <... X48>
],
"issue_amount": 3187.44,
"net_external_contract_fee_amount": 0,
"total_iof": 100.44,
"total_pre_fixed_amount": 3225.1656904289435
},
{
"additional_iof": 24.220242,
"annual_cet": "26.0057%",
"assignment_amount": 3205.12,
"base_iof": 176.6603785598479778,
"cet": "1,9544%",
"contract_fee_amount": 17.68,
"contract_fees": [{
"amount": 17.68,
"amount_type": "absolute",
"fee_amount": 17.68,
"fee_type": "spread_cip_cost"
}],
"disbursement_date": "2022-11-04",
"external_contract_fee_amount": 0,
"external_contract_fees": [],
"first_due_date": "2023-01-07"
"installments": [{
"additional_costs": [],
"business_due_date": "2023-01-07",
"calendar_days": 34,
"due_date": "2022-12-07",
"due_interest": 0,
"due_principal": 3187.44,
"fine_amount": null,
"has_interest": true,
"installment_number": 1,
"installment_status": null,
"installment_type": null,
"post_fixed_amount": 0,
"pre_fixed_amount": 64.20069301315790,
"principal_amortization_amount": 35.79930698684210,
"tax_amount": 0.10014353287723266,
"total_amount": 100,
"workdays": 23
}, <... X48>
],
"issue_amount": 3187.44,
"net_external_contract_fee_amount": 0,
"total_iof": 100.44,
"total_pre_fixed_amount": 3225.1656904289435
},
{
"additional_iof": 24.220242,
"annual_cet": "25.8457%",
"assignment_amount": 3205.12,
"base_iof": 176.6603785598479778,
"cet": "1,9544%",
"contract_fee_amount": 17.68,
"contract_fees": [{
"amount": 17.68,
"amount_type": "absolute",
"fee_amount": 17.68,
"fee_type": "spread_cip_cost"
}],
"disbursement_date": "2022-11-05",
"external_contract_fee_amount": 0,
"external_contract_fees": [],
"first_due_date": "2022-12-07"
"installments": [{
"additional_costs": [],
"business_due_date": "2022-12-07",
"calendar_days": 34,
"due_date": "2022-12-07",
"due_interest": 0,
"due_principal": 3187.44,
"fine_amount": null,
"has_interest": true,
"installment_number": 1,
"installment_status": null,
"installment_type": null,
"post_fixed_amount": 0,
"pre_fixed_amount": 64.20069301315790,
"principal_amortization_amount": 35.79930698684210,
"tax_amount": 0.10014353287723266,
"total_amount": 100,
"workdays": 23
}, <... X48>
],
"issue_amount": 3187.44,
"net_external_contract_fee_amount": 0,
"total_iof": 100.44,
"total_pre_fixed_amount": 3225.1656904289435
},
{
"additional_iof": 24.220242,
"annual_cet": "26.1457%",
"assignment_amount": 3205.12,
"base_iof": 176.6603785598479778,
"cet": "1,9544%",
"contract_fee_amount": 17.68,
"contract_fees": [{
"amount": 17.68,
"amount_type": "absolute",
"fee_amount": 17.68,
"fee_type": "spread_cip_cost"
}],
"disbursement_date": "2022-11-06",
"external_contract_fee_amount": 0,
"external_contract_fees": [],
"first_due_date": "2022-12-07"
"installments": [{
"additional_costs": [],
"business_due_date": "2022-12-07",
"calendar_days": 34,
"due_date": "2022-12-07",
"due_interest": 0,
"due_principal": 3187.44,
"fine_amount": null,
"has_interest": true,
"installment_number": 1,
"installment_status": null,
"installment_type": null,
"post_fixed_amount": 0,
"pre_fixed_amount": 64.20069301315790,
"principal_amortization_amount": 35.79930698684210,
"tax_amount": 0.10014353287723266,
"total_amount": 100,
"workdays": 23
}, <... X48>
],
"issue_amount": 3187.44,
"net_external_contract_fee_amount": 0,
"total_iof": 100.44,
"total_pre_fixed_amount": 3225.1656904289435
}
],
"iof_charge_method": "financed",
"requester_identifier_key": "3ed0744d-1f35-4688-aa65-739b8a3f9e89"
},
"event_datetime": "2022-11-07 13:54:58",
"key": "\<DEBT-KEY\>",
"status": "waiting_signature",
"webhook_type": "debt"
}

Após a digitação da proposta, a rotina de averbação é iniciada: Em caso de sucesso na averbação, o parceiro receberá o seguinte webhook:

Webhook de Anuência Pendente

Atenção

Campo muito importante, temos os status pending_consent e o pending_consent_with_deletion (ocasionado pela tentativa de cancelamento de uma reserva em status de pending_consent), ambos apenas com Aceite, Rejeição ou Expiração do consentimento (após 10 dias), que é possível encerrar uma reserva e liberar a margem. A tentativa de desaverbação de uma reserva ainda sem consentimento, resulta em reserva não encontrada uma vez que a mesma ainda não está formalizada no sistema do SIAPE.

WEBHOOK_TYPE
credit_operation.collateral
STATUS
Pending Consent
Body
{
"key": "\<DEBT-KEY\>",
"data": {
"collateral_data": {
"reservation_status": "pending_consent"
},
"collateral_type": "federal_payroll",
"collateral_constituted": false
},
"event_time": "2022-10-31 15:23:46",
"webhook_type": "credit_operation.collateral"
}

Webhook de Averbação

Após o devedor da dívida confirmar a anuência do contrato no portal do servidor e confirmação da averbação da margem, o parceiro receberá o seguinte webhook:

WEBHOOK_TYPE
credit_operation.collateral
STATUS
Success
Body
{
"key": "\<DEBT-KEY\>",
"data": {
"collateral_type": "federal_payroll",
"collateral_constituted": true
},
"event_time": "2022-10-31 15:23:46",
"webhook_type": "credit_operation.collateral"
}

5. Modelos de formalização da operação

Por padrão a QI Tech realiza a coleta de assinaturas através da QISign e o contrato é enviado para os assinantes no momento da emissão, porém ainda existe a possibilidade de o parceiro realizar a coleta de assinaturas de forma independente e enviar o documento assinado ou as evidencias de assinatura para a QI Tech para seguir com a operação.

Segue abaixo a descrição de cada modelo aceito pela QI:

Assinar via QISign

A assinatura através da QI Sign ocorre de forma automática na plataforma QI Tech, uma vez que a operação é criada o documento é disparado pela QI Sign para coleta de assinaturas, após assinado a operação automaticamente ira do status "waiting_signature" para o status "issued" (Emitida).

Enviar PDF assinado

Esse tipo indica que o PDF emitido através da "/debt" será assinado e link com o PDF assinado será enviado através da API 4.1 como forma de autenticação.

Request

ENDPOINT
debt/[DEBT_KEY]/signed
MÉTODO
POST
Request Body
{
"type": "pdf-signature",
"path-pdf-signed": "https://www.google.com/"
}

Response

MÉTODO
POST
ENDPOINT
debt/[DEBT_KEY]/signed
Response Body
{
"data": {},
"event_datetime": "2023-01-17 17:17:28",
"key": "4630cd58-ab00-49b3-b8cb-cb0f4a5af7a4",
"status": "signature_received",
"webhook_type": "debt"
}

Enviar evidências de assinatura

Esse tipo indica que o PDF emitido através da "/debt" será assinado através de um hash anexado em sua ultima pagina.

A autenticação através do envio de evidências da assinatura, pode ter 3 tipos:

Evidência de Opt-in:

A assinatura através de opt-in significa que o cliente vai dar o aceite do contrato através da aplicação do parceiro (front).

Para que essa assinatura seja válida, alguns dados devem ser enviados obrigatoriamente.

Request

ENDPOINT
debt/[DEBT_KEY]/signed
MÉTODO
POST
Request Body
{
"type": "data-signature",
"signatures": [
{
"signed_object": {
"raw_text": "Lorem ipsum dolor sit amet, consectetur a....",
"document_key": "79003de0-2590-455d-9b73-426b8ca284eb",
"document_md5": "7521bd5621d97af26b2c1721fc4023a8"
},
"authenticity": {
"timestamp": "1970-01-01 00:00:01",
"ip_address": "179.104.42.245",
"session_id": "ddb1d063-4fdf-4330-af9c-3316e9142ff3"
},
"signer": {
"name": "IVANILDO DE SENA LIMA",
"email": "ivanlima2604@gmail.com",
"phone": {
"country_code": "055",
"area_code": "11",
"number": "999999999"
},
"document_number": "61766976204"
},
"authentication_type": "opt_in"
}
]
}

Evidência em arquivo .zip:

A assinatura através de zip contempla o envio de um arquivo de comprovação, tal como uma ligação gravada.

Request

ENDPOINT
debt/[DEBT_KEY]/signed
MÉTODO
POST
Request Body
{
"type": "data-signature",
"signatures": [
{
"signed_object": {
"raw_text": "Lorem ipsum dolor sit amet, consectetur a....",
"document_key": "79003de0-2590-455d-9b73-426b8ca284eb",
"document_md5": "7521bd5621d97af26b2c1721fc4023a8"
},
"authenticity": {
"timestamp": "1970-01-01 00:00:01",
"document_key": "\<DOCUMENT-KEY DO ARQUIVO .ZIP\>",
"document_md5": "\<HASH MD5 DO ARQUIVO .ZIP ENVIADO\>"
},
"signer": {
"name": "IVANILDO DE SENA LIMA",
"email": "ivanlima2604@gmail.com",
"phone": {
"country_code": "055",
"area_code": "11",
"number": "999999999"
},
"document_number": "61766976204"
},
"authentication_type": "zip"
}
]
}

Evidência através do envio de uma Selfie:

A autenticação através de selfie é disponibilizada para os parceiros que utilizam os serviços de CaaS QI Tech, onde a autenticação através de selfie é validada e um id de comprovação é gerado.

Request

ENDPOINT
debt/[DEBT_KEY]/signed
MÉTODO
POST
Request Body
{
"type": "data-signature",
"signatures": [
{
"signed_object": {
"raw_text": "Lorem ipsum dolor sit amet, consectetur a...."
},
"authenticity": {
"timestamp": "1970-01-01 00:00:01",
"facial_recognition_key": "79003de0-2590-455d-9b73-426b8ca284eb"
},
"signer": {
"name": "IVANILDO DE SENA LIMA",
"email": "ivanlima2604@gmail.com",
"phone": {
"country_code": "055",
"area_code": "11",
"number": "999999999"
},
"document_number": "61766976204"
},
"authentication_type": "selfie"
}
]
}

Response

MÉTODO
POST
ENDPOINT
debt/[DEBT_KEY]/signed
Response Body
{
"data": {},
"event_datetime": "2023-01-17 17:17:28",
"key": "4630cd58-ab00-49b3-b8cb-cb0f4a5af7a4",
"status": "signature_received",
"webhook_type": "debt"
}
info

O Response é o mesmo para todas as operações realizadas através do endpoint debt/[DEBT_KEY]/signed.

6. Cancelamento e Desaverbação:

Para realizar o cancelamento definitivo de uma operação, com a desaverbação da margem consignável, deve ser utilizado o seguinte endpoint:

Request

ENDPOINT
/debt/[DEBT-KEY]/cancel_permanently
MÉTODO
POST

Após a conclusão do cancelamento da operação, o parceiro receberá o seguinte webhook:

Webhook

WEBHOOK_TYPE
debt
STATUS
Canceled Permanently
Body
{
"key": "\<DEBT-KEY\>",
"data": {},
"status": "canceled_permanently",
"webhook_type": "debt",
"event_datetime": "2022-11-01 03:46:31"
}

7. Desembolso

Caso a operação esteja averbada, assinada e com a data de desembolso no dia corrente, ela seguirá para a rotina de desembolso.

Caso de sucesso

Em caso de sucesso no desembolso o parceiro receberá o seguinte webhook:

Webhook

WEBHOOK_TYPE
debt
STATUS
Disbursed
Body
{
"key": "\<DEBT-KEY\>",
"data": {
"installments": [],
"ted_receipt_list": [{
"fee": 0,
"url": "\<URL COMPROVANTE DE TRANSFERÊNCIA\>",
"amount": 247.66,
"origin": {
"name": "QI SOCIEDADE DE CRÉDITO DIRETO S.A.",
"type": "payment_account",
"branch": "0001",
"document": "32402502000135",
"bank_code": "329",
"account_key": "5d068423-6094-49e4-b15b-7740038295a8",
"branch_digit": null,
"account_digit": "5",
"account_branch": "0001",
"account_number": "00002"
},
"timestamp": "2022-12-14T22:30:17",
"description": "000000 0299 000011222-8 88250032934 - SUELI SIRLENE ARNDT PIAIA",
"destination": {
"name": "\<NOME DEVEDOR\>",
"type": "checking_account",
"branch": "3880",
"purpose": "Crédito PIX em Conta",
"document": "\<CPF DEVEDOR\>",
"bank_ispb": "00360305",
"branch_digit": null,
"account_digit": "1",
"account_number": "000736703806"
},
"end_to_end_id": "E32402502202212142230TY1329KNRW4",
"transaction_key": "7f0d5b3e-aa8e-4ecf-aba4-f92593e48c95",
"origin_transaction_key": "360fad13-f58c-442d-a771-42372ffb47d3"
}]
},
"status": "disbursed",
"webhook_type": "debt",
"event_datetime": "2022-12-14 22:30:19"
}

Caso de Falha via TED

Webhook

WEBHOOK_TYPE
debt
STATUS
Canceled
Body
 {
"status": "canceled",
"key": "\<DEBT-KEY\>",
"data": {
"ted_refusal": {
"transaction_key": "16faabfc-3876-437d-a4f6-aae17a1d68c9",
"description": "341 0000 000000-7 12345678900 - NOME BENEFICIÁRIO",
"origin": {
"account_key": "a1d2dea5-fa90-4676-a125-da355fdc3ed0",
"account_number": "00086",
"bank_code": "329",
"name": "ACCOUNT TRANSITORY",
"type": "payment_account",
"document": "32402502000135",
"branch_digit": null,
"account_digit": "8",
"branch": "0001"
},
"fee": 0,
"reason_enumerator": "agencia_conta_invalida",
"timestamp": "2022-11-07T14:36:05",
"amount": 483.6,
"reason": "Agência ou Conta Destinatária do Crédito Inválida",
"destination": {
"branch": "0000",
"account_number": "000000",
"name": "NOME BENEFICIÁRIO",
"purpose": "Crédito em Conta",
"type": "checking_account",
"branch_digit": null,
"document": "12345678900",
"bank_code": "341",
"account_digit": "7"
}
},
"cancel_reason": "ted_refusal"
}
}

Caso de falha via PIX

Webhook

WEBHOOK_TYPE
debt
STATUS
Canceled
Body
{
"webhook_type": "debt",
"data": {
"pix_refusal": {
"reason_enumerator": "invalid_document_number",
"reason": "CPF/CNPJ do usuário recebedor não é compatível com o titular da conta de destino."
},
"cancel_reason": "pix_refusal"
},
"status": "canceled",
"key": "\<DEBT-KEY\>",
"event_datetime": "2022-11-07 15:29:37"
}

8. Retentar desembolso de operação

Request

ENDPOINT
/debt/[DEBT-KEY]/change_disbursement_date
MÉTODO
POST
Request Body
{
"disbursement_date": "2022-11-04",
"disbursement_bank_accounts": [
{
"account_branch": "1232",
"account_digit": "4",
"account_number": "412412412",
"account_type": "checking_account",
"document_number": "\<CPF BENEFICIÁRIO\>",
"financial_institutions_code_number": 184,
"ispb": "17298092",
"name": "\<NOME BENEFICIÁRIO\>",
"percentage_receivable": 100,
}
]
}

Response

ENDPOINT
/debt/[DEBT-KEY]/change_disbursement_date
MÉTODO
POST
Response Body
{
"disbursement_accounts": [
{
"account_branch": "1232",
"account_digit": "4",
"account_number": "412412412",
"account_type": "checking_account",
"amount_receivable": null,
"created_at": "2022-05-24T14:51:46",
"digitable_line": null,
"disbursement_type": "ted",
"document_number": "37197645832",
"financial_institutions": {
"code_number": 184,
"ispb": 17298092,
"name": "BCO ITAÚ BBA S.A."
},
"financial_institutions_code_number": 184,
"is_pix_disbursement": false,
"ispb": "17298092",
"name": "Márcio e Catarina Gráfica Ltda",
"percentage_receivable": 50.0,
"pix_key": null,
"pix_transfer_key": null,
"pix_type": null,
"qr_code_key": null,
"retry_counter": 0,
"retry_vector": null,
"transaction_key": null,
"webhook_key": null
},
],
"disbursement_date": "2022-11-04"
}

9. Enumeradores

Enumerador Employment Relationship

EnumeradorDescrição
attendantServidor público
pensionerPensionista

Enumerador Employment Classification

EnumeradorDescrição
stableVinculo funcional estável com o órgão empregador
temporaryVinculo funcional não estável com o órgão empregador (temporário)
comissionedCargo comissionado

10. Recuperar resposta da última request

O last response é uma forma de mapear, de forma simples e objetiva, a resposta da comunicação entre a Qi e o SIAPE/SIGEPE, possibilitando saber quando essa requisição foi feita e qual o retorno obtido (através de um enumerador). Os enumeradores estão diretamente relacionados aos códigos de retorno da SIAPE/SIGEPE e são divididos em duas formas: "errors" e "success". ​

Cada enumerador tem uma descrição detalhada e o código de referência da SIAPE/SIGEPE. Podemos conferir abaixo, com mais detalhes, como serão apresentados os dados do last response.

Casos de sucesso

Request

ENDPOINT
/debt/[DEBT-KEY]/collateral
MÉTODO
GET

Response

Response Body
{
"collateral_constituted": true,
"collateral_type": "federal_payroll",
"updated_at": "2023-05-24 19:13:02",
"collateral_data": {
"authority_code": "57202",
"registration_code": "0928033",
"pensioner_registration_code": "",
"status": "reserved",
"last_response": {
"success": [
{
"enumerator": "succesfully_included"
}
]
},
"last_response_event_datetime": "2023-05-22T19:13:02Z"
}
}
Tabela de enumeradores
EnumeradorDescriçãoDetalhes
successfully_reservedReservation made successfullyStatus referente a confirmação da averbação no SIAPE
successfully_includedInclusion has been successfully doneStatus referente a inclusão realizada com sucesso no SIAPE

Casos de erro

Os casos mapeados na tabela de enumeradores desse tópico podem resultar no cancelamento das reservas ou na retentativa dos mesmos enquanto houver opções de desembolso.

Request

ENDPOINT
/debt/[DEBT-KEY]/collateral
MÉTODO
GET

Response

Response Body
{
"collateral_constituted": false,
"collateral_type": "federal_payroll",
"updated_at": "2023-05-24 19:13:02",
"collateral_data": {
"authority_code": "57202",
"registration_code": "0928033",
"pensioner_registration_code": "",
"status": "canceled",
"last_response": {
"success": [
{
"enumerator": "invalid_balance"
}
]
},
"last_response_event_datetime": "2023-05-22T19:13:02Z"
}
}
Tabela de enumeradores
EnumeradorDescriçãoAção QI
deletion_requestDeletion was requested before the reservation was completedCancela a operação
consent_refusedConsent was refused by the borrowerCancela a operação
invalid_balanceThere is no balance available for the reservation requestedCancela a operação
invalid_value_FIELDParameter filled with a field that has an invalid value mapped in the Anexo 2Cancela a operação
document_number_does_not_match_other_informationDocument number does not match other information providedCancela a operação
consent_expiredThe consent period has elapsed, and the contract has been voided by SIAPECancela a operação
waiting_for_origin_contract_closureWaiting for origin contract to be finalizedFica em retentativa
origin_contract_not_foundOrigin contract number not foundCancela a operação
contract_not_foundContract number not foundCancela a operação
unauthorized_institutionInstitution isn't authorized by the clientFica em retentativa por no máximo 7 dias. O parceiro deve contatar o cliente e orientá-lo à autorizar a QI
expired_portabilityPortability took more than 10 days to confirmIntenciona o contrato novamente

11. Anexos

Anexo 1

CódigosDescrição
ANS03, CLT03, EST03TRANSFERRED/REQUESTED
ANS08, CLT08, EST08, RMI08TRANSFERRED
ANS09, CLT09, EST09REDISTRIBUTED
ANS21PERMANENT ACTIVE LAW 8878/94
ANS36PUBLIC AMNESTY L10559
ANS37PRIVATE AMNESTY L10559
ANS46PUBLIC INSTITUTIONAL AMNESTY
ANS47PRIVATE INSTITUTIONAL AMNESTY
ANS56PARTIAL AMNESTY
ANS57PARTIAL INSTITUTIONAL AMNESTY
CDT12, CDT40TEMPORARY CONTRACT
CDT49, CLT49TEMPORARY CONTRACT CLT
CDT52SUBSTITUTE PROFESSOR CONTRACT
CDT53VISITING PROFESSOR CONTRACT
CDT54TEMPORARY PROFESSOR CONTRACT
CDT55PROFESSOR/MEDICAL TUTOR CONTRACT
CDT72TEMPORARY RETIREE
CDT73CDT
CDT76TEMPORARY ECONTRACT
CDT77EXERC. DESCEN. CDT
CDT81EMERGENCY AGU CDT
CLT04, EST04APPOINTED TO A COMMISSIONED POSITION
CLT05, MRD05, NES05, PMM05, RMP05NO LINK
CLT06, EST06CLERK (SPECIAL/EMERGENCY)
CLT11, EST11EXCESS OF ALLOCATION
CLT14, EST14REQUEST FROM OTHER AGENCIES
CLT16, EST16MILITARY REQUEST MILITARY
CLT20CLT EMPLOYEE
CLT23CLT EMPLOYEE/ EMPLOYEE
CLT24CLT FIXED-TERM CONTRACT
CLT25CLT ANS JUDICIAL DECISION
CLT26CLT REQUIRED
CLT27CLT ANS JUDICIAL TRANSFERRED
CLT28, EST65APPOINTED TO POSITION
CLT29CLT-PENSION SUPPLEMENT
CLT30CLT-PENSION JUDICIAL DECISION
CLT31, EST31INSTITUTION PENSION JUDICIAL DECISION
CLT32PUBLIC EMPLOYMENT
CLT43CLT ANS - DECREE 6657/08
CLT44, EST44EXERCISE - SECTION 7, ARTICLE 93, LAW 8112
CLT48CELETISTA JUDICIAL DECISION
CLT50PCC EMPLOYMENT/EX-RO
CLT61REQ. §6, 93, 8112/9012
CLT62TRANSFERRED §6 8112/90
CLT69APPRENTICE
CLT75TRANSFERRED STATE CITY
CLT79, EST79INTERIM
CLT83SERPRO EMPLOYEE
EST01, RMI01PERMANENT ACTIVE
EST02, RMI02RETIRED
EST07, NES07SPECIAL NATURE
EST10TRANSITIONAL ACTIVE
EST13ON AVAILABILITY
EST15, RMI15PENSION INSTITUTOR
EST17RETIRED - TCU733/94
EST18DECENTRALIZED CAREER EXERCISE
EST19PROVISIONAL EXERCISE
EST22GRANTED AMNESTY
EST35MILITARY REQUISETION
EST38ACTIVE - JUDICIAL DECISION
EST39RETIRED - JUDICIAL DECISION
EST41COLLABORATOR PCCTAE AND MAGISTERIUM
EST42ICT COLLABORATOR
EST45TRASFERRED - SUS/LAW 8270
EST58COMPLEMENTARY RETIREMENT VIFER
EST78DESCENT EXERCISE - PGFN
EST96QE/MRE - TRANSFERRED
EST97SPECIAL FRAME - QE/MRE
EST98EXCESS TO STAFFING - MRE
ETE68COMPANY INTERN
ETG66SIAPECAD INTERN
ETG67PGFN INTERN
ETG70INTERN (SIGEPE)
MRD71, PMM71, RMC71, RMP71FOREIGN INTERNSHIP
NES59CARF COUNSELOR
NES60MILITARY PENSION BENEFICIARY
NES84, NES99PENSIONER
NES91INDEMNITY BENEFICIARY ANS57
NES92MONTEPIO PENSION BENEFICIARY
NES93PENSION BENEFICIARY
NES94INDEMNITY BENEFICIARY ANS46
NES95INDEMNITY BENEFICIARY ANS47
RMI33CBM/PM REFORM
RMI34CBM/PM RESERVE
RMI51DISCIPLINARY EXCLUSION
RMI63AGGREGATED - MILITARY
RMI64TEMPORARY FUNCTION - FORMER EMPLOYEE

Anexo 2

Campo retornado SIAPECampo Mapeamento
MATRICULA DO INSTITUIDORpensioner_registration_code
CPF DO SERVIDORdocument_number
CPF DO PENSIONISTAdocument_number
CODIGO DO ORGAOauthority_code
MATRICULA DO SERVIDORregistration_code
MATRICULA DO PENSIONISTAregistration_code
VALOR DE DESCONTO MENSALreservation_amount
PRAZO EM MESES DE DESCONTOreservation_period
NUMERO DO CONTRATOcontract_number
VALOR BRUTO DA OPERACAOtotal_amount
VALOR LIQUIDO CREDITADO AO SERVIDORdisbursed_amount
VALOR LIQUIDO CREDITADO AO PENSIONISTAdisbursed_amount
TAXA DE JUROS MENSAL DO CONTRATOmonthly_interest_rate
VALOR DO IOF COBRADOiof
CUSTO EFETIVO ANUAL DO CONTRATOcet
DATA DE INACIO DO PROCESSO DE PORTABILIDADEstart_date
NUMERO DO CONTRATO ALVO DA PORTABILIDADEorigin_contract_number