{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"105c89cd-dd67-4cc9-995b-d40d4a921579","name":"API ReCB v1.98","description":"# [ 1-Introdução ]\r\n\r\nSe você é um desenvolvedor e pretende integrar seu site ou aplicação a um sistema completo de gestão de cobranças on-line, você está no lugar certo!.\r\n\r\nEsta documentação é destinada a desenvolvedores que desejam integrar seu site ou aplicação com a API da ReCB. São descritas as funcionalidades da API, métodos e parâmetros técnicos, são disponibilizados códigos prontos de exemplos para facilitar suas atividades de desenvolvimento.\r\n\r\nA ReCB é uma empresa Intermediadora de Pagamentos. Por meio dela, você pode emitir cobranças para seus clientes (por boleto) sem ter que realizar convênios específicos com bancos. Atendendo a determinação da Febraban, os boletos e carnês gerados pela ReCB são registrados.\r\n\r\n# [ 2-Começando ]\r\n\r\nPara iniciar o desenvolvimento, entre em contato com a ReCB através do e-mail: suporte@recb.com.br ou telefone (86) 3303-5697, para obter as informações necessárias para acesso ao ambiente de homologação/testes. Forneceremos as seguintes informações para o seu acesso:\r\n\r\n- client_id;\r\n- client_user;\r\n- client_pass;\r\n- client_token;\r\n- client_ip;\r\n- URL Homologação: http://35.199.90.140/app/api/v1\r\n\r\nApós a homologação a ReCB fornecerá novos dados de acesso para o ambiente produção. \r\n\r\nDeverão ser gerados alguns boletos com valores baixos (sugestão R$ 15,00 com desconto de R$ 5,00), para conferirmos o registro e liquidação após o pagamento, efetuando a baixa automática obtendo as informações via API.\r\n\r\n# [ 3 - Autenticação ]\r\n\r\nEm todas requisições POST, serão realizadas autenticações, validando os parâmetros especificados no item [ 2-Começando ]. Também será validado o IP de origem, caso não esteja cadastrado não será possível obter respostas da API. \r\nCaso ocorra algum erro na autenticação, será listado um json com a mensagem de erro abaixo:\r\n\r\n<pre>\r\n{\r\n  \"message\": {\r\n    \"title\": \"Erro\",\r\n    \"message\": \"Usuario, senha ou token invalidos\",\r\n    \"messageID\": \"101\"\r\n  }\r\n}\r\n</pre>\r\n\r\n\r\n# [ 4 - Fluxo obrigatório para geração de novos Carnets ]\r\n\r\nNa geração de todo Carnet, serão usados obrigatoriamente os métodos dentro dos seguintes procedimentos abaixo:\r\n\r\n     [3-Autenticação] >> [7.1-create_category] >> [7.3-create_payer] >> [7.5-create_carnet]\r\n\r\n# [ 5 - Gerando Carnês ]\r\n\r\nConforme dito anteriormente, um “Carnet” sempre estará associado a uma “Categoria e a um “Cliente”, portanto será necessário sempre executar o Fluxo Obrigatório conforme descrito acima no item [4].\r\n\r\nUm carnê é um conjunto de transações (parcelas/boletos) geradas em lote e com forma de pagamento já definida. As parcelas de um carnê vencem mensalmente, de acordo com a data definida por você.\r\n\r\nPor exemplo, ao gerar um carnê com o vencimento da primeira parcela em 10/11/2018, o vencimento da segunda parcela será 10/12/2018, e assim sucessivamente. O intervalo é sempre de 1 (um) mês entre elas (mensal).\r\n\r\nAinda cabe frisar que cada carnê gerado possui uma identificação única denominada [carnetID], e cada parcela desse carnê também possuem um identificador único denominado [ticketID], assim como o pagador possui um identificador único [payerID] e a categoria [categoryID].\r\n\r\n# [ 6 - Estrutura hierárquica dos atributos: Schema ]\r\n\r\n\r\n\r\n- Categoria: [categoryID]: \"/src/category/create\" ou \"/src/category/detail\"\r\n     > [ description ]\r\n     > [ valor ]\r\n\r\n- Pagador: [payerID]: \"/src/payer/create\" ou \"/src/payer/detail\"\r\n     > [ categoryID ]\r\n     >  [ nome_razao_social ]\r\n     >  [ nome_abreviado ]\r\n     >  [ cpf/cnpj ]\r\n     >  [ insc_estadual ]\r\n     >  [ rg ]\r\n     >  [ org_exp ]\r\n     >  [ data_nasc ]\r\n     >  [ endereco ]\r\n     >  [ numero ]\r\n     >  [ bairro ]\r\n     >  [ cidade ]\r\n     >  [ estado ]\r\n     >  [ cep ]\r\n     >  [ fone_res ]\r\n     >  [ fone_cel ]\r\n     >  [ obs ]\r\n\r\n- Carnet: [carnetID]: \"/src/carnet/createAllBanks\" ou \"/src/carnet/detail\"\r\n     >  [ categoryID ]\r\n     >  [ payerID ]\r\n     >  [ dia ]\r\n     >  [ mes ]\r\n     >  [ ano ]\r\n     >  [ qtd_parcelas ]\r\n     >  [ periodicidade ]\r\n     >  [ valor_parcela ]\r\n     >  [ msg_boleto1 ]\r\n     >  [ msg_boleto2 ]\r\n     >  [ msg_personalizada ]\r\n     >  [ multa ]\r\n     >  [ mora ]\r\n     >  [ desconto ]\r\n\r\n> OBSERVAÇÕES IMPORTANTES: \r\n- Multa máxima de 10%\r\n- Juros/Mora ao dia máximo de 1%\r\n- Desconto máximo de 90% do valor nominal do boleto.\r\n\r\n- Nota 01: \"Campos opcionais\": É possível usar múltiplos descontos para boletos padrão Itaú. Caso necessite ativar esta opção, solicite a ReCB, pois o padrão é desativado.\r\n\r\n\t>  [ data_desconto_1 ]: Data limite para o primeiro desconto.\r\n\t>  [ valor_desconto_1 ]: Valor em reais(R$) para o primeiro desconto.\r\n\t>  [ data_desconto_2 ]: Data limite para o segundo desconto.\r\n\t>  [ valor_desconto_2 ]: Valor em reais(R$) para o segundo desconto.\r\n\t>  [ data_desconto_3 ]: Data limite para o terceiro desconto.\r\n\t>  [ valor_desconto_3 ]: Valor em reais(R$) para o terceiro desconto.\r\n\r\n- Nota 02: \"Campos opcionais\": Recomendamos a utilização do valor do desconto em reais(R$), para isso você deve preencher o campo [ desconto ] com o valor \"0.00\", e utilizar apenas os campos opcionais [ data_desconto_1 ] referente a data limite para concessão do desconto e [ valor_desconto_1 ] com o valor em reais(R$) a ser concedido até a data limite. Esta funcionalidade poderá ser utilizada para emissão de boletos padrão BB ou Itaú. Reforçamos que o valor do desconto em R$ não deve ultrapassar 90% do valor nominal do boleto.\r\n\r\n# [ 7 - Métodos disponíveis na API ]\r\n\r\nSeguem abaixo as requisições utilizando método {POST}, presentes na API da ReCB Cobrança Inteligente.\r\nUtilize os exemplos listados na opção \"Example Request\" para visualizar o código necessário para executar requisições de cada método, bem como observar as respostas logo abaixo na opção \"Example Response\".","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":false,"owner":"5034290","team":180608,"collectionId":"105c89cd-dd67-4cc9-995b-d40d4a921579","publishedId":"RWgxuvRX","public":true,"publicUrl":"https://documenter-api.postman.tech/view/5034290/RWgxuvRX","privateUrl":"https://go.postman.co/documentation/5034290-105c89cd-dd67-4cc9-995b-d40d4a921579","customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"EF5B25"},"documentationLayout":"classic-double-column","version":"8.10.1","publishDate":"2018-10-25T23:40:07.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{},"logos":{}},"statusCode":200},"environments":[],"user":{"authenticated":false,"permissions":{"publish":false}},"run":{"button":{"js":"https://run.pstmn.io/button.js","css":"https://run.pstmn.io/button.css"}},"web":"https://www.getpostman.com/","team":{"logo":"https://res.cloudinary.com/postman/image/upload/t_team_logo_pubdoc/v1/team/1492e915d035b34b98594d1c671cac635a80aa7bc9f400569d930c9c202bc79d","favicon":""},"isEnvFetchError":false,"languages":"[{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"HttpClient\"},{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"RestSharp\"},{\"key\":\"curl\",\"label\":\"cURL\",\"variant\":\"cURL\"},{\"key\":\"dart\",\"label\":\"Dart\",\"variant\":\"http\"},{\"key\":\"go\",\"label\":\"Go\",\"variant\":\"Native\"},{\"key\":\"http\",\"label\":\"HTTP\",\"variant\":\"HTTP\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"OkHttp\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"Unirest\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"Fetch\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"jQuery\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"XHR\"},{\"key\":\"c\",\"label\":\"C\",\"variant\":\"libcurl\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Axios\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Native\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Request\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Unirest\"},{\"key\":\"objective-c\",\"label\":\"Objective-C\",\"variant\":\"NSURLSession\"},{\"key\":\"ocaml\",\"label\":\"OCaml\",\"variant\":\"Cohttp\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"cURL\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"Guzzle\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"HTTP_Request2\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"pecl_http\"},{\"key\":\"powershell\",\"label\":\"PowerShell\",\"variant\":\"RestMethod\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"http.client\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"Requests\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"httr\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"RCurl\"},{\"key\":\"ruby\",\"label\":\"Ruby\",\"variant\":\"Net::HTTP\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"Httpie\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"wget\"},{\"key\":\"swift\",\"label\":\"Swift\",\"variant\":\"URLSession\"}]","languageSettings":[{"key":"csharp","label":"C#","variant":"HttpClient"},{"key":"csharp","label":"C#","variant":"RestSharp"},{"key":"curl","label":"cURL","variant":"cURL"},{"key":"dart","label":"Dart","variant":"http"},{"key":"go","label":"Go","variant":"Native"},{"key":"http","label":"HTTP","variant":"HTTP"},{"key":"java","label":"Java","variant":"OkHttp"},{"key":"java","label":"Java","variant":"Unirest"},{"key":"javascript","label":"JavaScript","variant":"Fetch"},{"key":"javascript","label":"JavaScript","variant":"jQuery"},{"key":"javascript","label":"JavaScript","variant":"XHR"},{"key":"c","label":"C","variant":"libcurl"},{"key":"nodejs","label":"NodeJs","variant":"Axios"},{"key":"nodejs","label":"NodeJs","variant":"Native"},{"key":"nodejs","label":"NodeJs","variant":"Request"},{"key":"nodejs","label":"NodeJs","variant":"Unirest"},{"key":"objective-c","label":"Objective-C","variant":"NSURLSession"},{"key":"ocaml","label":"OCaml","variant":"Cohttp"},{"key":"php","label":"PHP","variant":"cURL"},{"key":"php","label":"PHP","variant":"Guzzle"},{"key":"php","label":"PHP","variant":"HTTP_Request2"},{"key":"php","label":"PHP","variant":"pecl_http"},{"key":"powershell","label":"PowerShell","variant":"RestMethod"},{"key":"python","label":"Python","variant":"http.client"},{"key":"python","label":"Python","variant":"Requests"},{"key":"r","label":"R","variant":"httr"},{"key":"r","label":"R","variant":"RCurl"},{"key":"ruby","label":"Ruby","variant":"Net::HTTP"},{"key":"shell","label":"Shell","variant":"Httpie"},{"key":"shell","label":"Shell","variant":"wget"},{"key":"swift","label":"Swift","variant":"URLSession"}],"languageOptions":[{"label":"C# - HttpClient","value":"csharp - HttpClient - C#"},{"label":"C# - RestSharp","value":"csharp - RestSharp - C#"},{"label":"cURL - cURL","value":"curl - cURL - cURL"},{"label":"Dart - http","value":"dart - http - Dart"},{"label":"Go - Native","value":"go - Native - Go"},{"label":"HTTP - HTTP","value":"http - HTTP - HTTP"},{"label":"Java - OkHttp","value":"java - OkHttp - Java"},{"label":"Java - Unirest","value":"java - Unirest - Java"},{"label":"JavaScript - Fetch","value":"javascript - Fetch - JavaScript"},{"label":"JavaScript - jQuery","value":"javascript - jQuery - JavaScript"},{"label":"JavaScript - XHR","value":"javascript - XHR - JavaScript"},{"label":"C - libcurl","value":"c - libcurl - C"},{"label":"NodeJs - Axios","value":"nodejs - Axios - NodeJs"},{"label":"NodeJs - Native","value":"nodejs - Native - NodeJs"},{"label":"NodeJs - Request","value":"nodejs - Request - NodeJs"},{"label":"NodeJs - Unirest","value":"nodejs - Unirest - NodeJs"},{"label":"Objective-C - NSURLSession","value":"objective-c - NSURLSession - Objective-C"},{"label":"OCaml - Cohttp","value":"ocaml - Cohttp - OCaml"},{"label":"PHP - cURL","value":"php - cURL - PHP"},{"label":"PHP - Guzzle","value":"php - Guzzle - PHP"},{"label":"PHP - HTTP_Request2","value":"php - HTTP_Request2 - PHP"},{"label":"PHP - pecl_http","value":"php - pecl_http - PHP"},{"label":"PowerShell - RestMethod","value":"powershell - RestMethod - PowerShell"},{"label":"Python - http.client","value":"python - http.client - Python"},{"label":"Python - Requests","value":"python - Requests - Python"},{"label":"R - httr","value":"r - httr - R"},{"label":"R - RCurl","value":"r - RCurl - R"},{"label":"Ruby - Net::HTTP","value":"ruby - Net::HTTP - Ruby"},{"label":"Shell - Httpie","value":"shell - Httpie - Shell"},{"label":"Shell - wget","value":"shell - wget - Shell"},{"label":"Swift - URLSession","value":"swift - URLSession - Swift"}],"layoutOptions":[{"value":"classic-single-column","label":"Single Column"},{"value":"classic-double-column","label":"Double Column"}],"versionOptions":[],"environmentOptions":[{"value":"0","label":"No Environment"}],"canonicalUrl":"https://documenter.gw.postman.com/view/metadata/RWgxuvRX"}