Olá! Enviarei o exemplo do código em Python usando a biblitoteca requests, json e datetime/timeDelta
Não sei mais o que mexer no payload para aparecer os juros e multa no boleto impresso. O campo fica sempre em branco quando tentei no ambiente de produção.
Daí, quando usei o código abaixo no ambiente sandbox, ele não enviou nenhum mock. Isso é correto?
Em suma: o que há de errado no payload para não aparecer no boleto os juros e multa. E por que o ambiente sandbox não retorna nenhum mock mesmo com o código 200 (sucesso?)?
payload = json.dumps([{
"numeroCliente": CONFIG["NUMERO_CLIENTE"],
"codigoModalidade": 1,
"numeroContaCorrente": CONFIG["CONTA_CORRENTE"],
"codigoEspecieDocumento": "DS",
"dataEmissao": hoje,
"seuNumero": numeroUsuario,
"identificacaoEmissaoBoleto": 2,
"identificacaoDistribuicaoBoleto": 2,
"valor": valorParcela,
"tipoMulta": 2,
"dataMulta": dataMulta,
"valorMulta": multa,
"tipoJurosMora": 2,
"dataJurosMora": dataJurosMora,
"valorJurosMora": jurosMora,
"dataVencimento": dataVencimento,
"tipoDesconto": 0,
"numeroParcela": parcelas,
"pagador": {
"numeroCpfCnpj": cpfCnpjPagador,
"nome": nomePagador,
"endereco": enderecoPagador,
"bairro": bairroPagador,
"cidade": cidadePagador,
"cep": cepPagador,
"uf": ufPagador
}
}])
# Função para enviar boleto
def incluir_boleto(payload
token = tokenSandbox
client_id = clientIdSandbox
api_url = "https://sandbox.sicoob.com.br/sicoob/sandbox/cobranca-bancaria/v3/boletos"
headers = {
"Authorization": f"Bearer {token}",
"client_id": client_id,
"Accept": "application/json",
"Content-Type": "application/json"
}
cert = (CONFIG["CERT_PATH"], CONFIG["KEY_PATH"])
response = requests.post(api_url, headers=headers, data=payload, cert=cert)
print("Status:", response.status_code)
try:
print(json.dumps(response.json(), indent=2, ensure_ascii=False))
except Exception:
print("Não foi possível converter a resposta para JSON. Conteúdo bruto:")
print(response.text)
# EXECUÇÃO
if __name__ == "__main__":
incluir_boleto(payload)