Consulta dados de cartões e faturas 1. [Autenticar em Cartões na API de Autenticar em Cartões](#autentica) 2. [Reautenticar (refresh de sessão) em Cartões na API de Reautenticar em Cartões](#reautentica) 3. [Busca cooperado pelo CPF](#customer) 4. [Busca cartões pelo customer ID](#card) 5. [Busca faturas do cartão do Cooperado](#fatura) ### <a id="autentica"></a>Endpoint que autentica em cartões **POST**: /auth/realms/api-gateway/protocol/openid-connect/token **Headers:** Content-Type Exemplo: application/x-www-form-urlencoded Form URL Encoded: grant_type=password client_id=unicred username=user password=****** **Retornos:** 200 (Ok) 401 (Unauthorized) 500 (Internal Server Error) Exemplos de retorno: Retorna 200 quando autentica com sucesso **Body de retorno:** ```JSON { "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI2cG9MdlIzckE2aVRBMThhbE1GeGk4b0xFN0F0SWVVZG5xcFpLdlVqYlE0In0.eyJleHAiOjE2MTM2NTk1NzksImlhdCI6MTYxMzY1OTI3OSwianRpIjoiMzI0ZGNlOGUtNjliNS00NWFlLWE3ZDAtMDIzMTAzNmUzODk3IiwiaXNzIjoiaHR0cDovL2F1dGgudGVzdC5jYXJ0b2VzdW5pY3JlZC5jb20uYnIvYXV0aC9yZWFsbXMvYXBpLWdhdGV3YXkiLCJhdWQiOiJhY2NvdW50Iiwic3ViIjoiYWE1OWMyOWItNDdiZi00ODMwLTgyNWMtNGIzODU1ODg4ZmYwIiwidHlwIjoiQmVhcmVyIiwiYXpwIjoidW5pY3JlZCIsInNlc3Npb25fc3RhdGUiOiJhODJkMjc5Mi05NzEzLTRjYzUtYTk2My0wY2MwMTkwZWFlMzUiLCJhY3IiOiIxIiwicmVhbG1fYWNjZXNzIjp7InJvbGVzIjpbIm9mZmxpbmVfYWNjZXNzIiwiZ2V0X3Jld2FyZHNfYmFsYW5jZSIsImdldF9jdXN0b21lcl9kb2N1bWVudCIsInVtYV9hdXRob3JpemF0aW9uIl19LCJyZXNvdXJjZV9hY2Nlc3MiOnsiYWNjb3VudCI6eyJyb2xlcyI6WyJtYW5hZ2UtYWNjb3VudCIsIm1hbmFnZS1hY2NvdW50LWxpbmtzIiwidmlldy1wcm9maWxlIl19fSwic2NvcGUiOiJlbWFpbCBwcm9maWxlIiwiZW1haWxfdmVyaWZpZWQiOmZhbHNlLCJwcmVmZXJyZWRfdXNlcm5hbWUiOiJjYW5haXNfdXNlciJ9.YNtHl62ZoOIGkIr5FwMSKmAlzkGzjZ396JLQfa_xhy-LnuNYTFR7w6FHjdlQMfTE9r_Db7NTLwpQXFQeqGnPy5KqZ4kpXkgop924bHty_3gjRSJy-yeYCL_ZCYtk7AzWmIfdKuj5xqd129A-QU9ibiHIDMx0iH6Szdy8pQZPrdB0RVul8eqywDF4Smhpd9wjEEQYVjg9KPPr3Bmxrmr1xjfdbElbCSrZ83Vy6z_PHvY4l4fZ19rlHA8Z-XPfmY-n0zAqdZ4cpRov", "expires_in": 300, "refresh_expires_in": 1800, "refresh_token": "eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICIzMzgzNDI5OS05ZTFlLTQ0NWItODJjMC1jNWQ3NmQ0NzQ5MjIifQ.eyJleHAiOjE2MTM2NjEwNzksImlhdCI6MTYxMzY1OTI3OSwianRpIjoiOWM0ZWM5Y2YtMTRkYy00NzE0LThiMmQtMzM5YmFhMTIyMTZkIiwiaXNzIjoiaHR0cDovL2F1dGgudGVzdC5jYXJ0b2VzdW5pY3JlZC5jb20uYnIvYXV0aC9yZWFsbXMvYXBpLWdhdGV3YXkiLCJhdWQiOiJodHRwOi8vYXV0aC50ZXN0LmNhcnRvZXN1bmljcmVkLmNvbS5ici9hdXRoL3JlYWxtcy9hcGktZ2F0ZXdheSIsInN1YiI6ImFhNTljMjliLTQ3YmYtNDgzMC04MjVjLTRiMzg1NTg4OGZmMCIsInR5cCI6IlJlZnJlc2giLCJhenAiOiJ1bmljcmVkIiwic2Vzc2lvbl9zdGF0ZSI6ImE4MmQyNzkyLTk3MTMtNGNjNS1hOTYzLTBjYzAxOTBlYWUzNSI", "token_type": "bearer", "not-before-policy": 0, "session_state": "a82d2792-9713-4cc5-a963-0cc0190eae35", "scope": "email profile" } ``` ## <a id="reautentica"></a>Endpoint que reautentica em cartoes **POST:** /auth/realms/api-gateway/protocol/openid-connect/token **Headers:** Content-Type Exemplo: application/x-www-form-urlencoded Form URL Encoded: grant_type=refresh_token client_id=unicred refresh_token=eyJhbGciOiJIUzI1NiIsInR5cCI… **Retornos:** 200 (Ok) 401 (Unauthorized) 500 (Internal Server Error) Exemplos de retorno: Retorna 200 quando autentica com sucesso **Body de retorno:** ```JSON { "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI2cG9MdlIzckE2aVRBMThhbE1GeGk4b0xFN0F0SWVVZG5xcFpLdlVqYlE0In0.eyJleHAiOjE2MTM2NTk1NzksImlhdCI6MTYxMzY1OTI3OSwianRpIjoiMzI0ZGNlOGUtNjliNS00NWFlLWE3ZDAtMDIzMTAzNmUzODk3IiwiaXNzIjoiaHR0cDovL2F1dGgudGVzdC5jYXJ0b2VzdW5pY3JlZC5jb20uYnIvYXV0aC9yZWFsbXMvYXBpLWdhdGV3YXkiLCJhdWQiOiJhY2NvdW50Iiwic3ViIjoiYWE1OWMyOWItNDdiZi00ODMwLTgyNWMtNGIzODU1ODg4ZmYwIiwidHlwIjoiQmVhcmVyIiwiYXpwIjoidW5pY3JlZCIsInNlc3Npb25fc3RhdGUiOiJhODJkMjc5Mi05NzEzLTRjYzUtYTk2My0wY2MwMTkwZWFlMzUiLCJhY3IiOiIxIiwicmVhbG1fYWNjZXNzIjp7InJvbGVzIjpbIm9mZmxpbmVfYWNjZXNzIiwiZ2V0X3Jld2FyZHNfYmFsYW5jZSIsImdldF9jdXN0b21lcl9kb2N1bWVudCIsInVtYV9hdXRob3JpemF0aW9uIl19LCJyZXNvdXJjZV9hY2Nlc3MiOnsiYWNjb3VudCI6eyJyb2xlcyI6WyJtYW5hZ2UtYWNjb3VudCIsIm1hbmFnZS1hY2NvdW50LWxpbmtzIiwidmlldy1wcm9maWxlIl19fSwic2NvcGUiOiJlbWFpbCBwcm9maWxlIiwiZW1haWxfdmVyaWZpZWQiOmZhbHNlLCJwcmVmZXJyZWRfdXNlcm5hbWUiOiJjYW5haXNfdXNlciJ9.YNtHl62ZoOIGkIr5FwMSKmAlzkGzjZ396JLQfa_xhy-LnuNYTFR7w6FHjdlQMfTE9r_Db7NTLwpQXFQeqGnPy5KqZ4kpXkgop924bHty_3gjRSJy-yeYCL_ZCYtk7AzWmIfdKuj5xqd129A-QU9ibiHIDMx0iH6Szdy8pQZPrdB0RVul8eqywDF4Smhpd9wjEEQYVjg9KPPr3Bmxrmr1xjfdbElbCSrZ83Vy6z_PHvY4l4fZ19rlHA8Z-XPfmY-n0zAqdZ4cpRov", "expires_in": 300, "refresh_expires_in": 1800, "refresh_token": "eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICIzMzgzNDI5OS05ZTFlLTQ0NWItODJjMC1jNWQ3NmQ0NzQ5MjIifQ.eyJleHAiOjE2MTM2NjEwNzksImlhdCI6MTYxMzY1OTI3OSwianRpIjoiOWM0ZWM5Y2YtMTRkYy00NzE0LThiMmQtMzM5YmFhMTIyMTZkIiwiaXNzIjoiaHR0cDovL2F1dGgudGVzdC5jYXJ0b2VzdW5pY3JlZC5jb20uYnIvYXV0aC9yZWFsbXMvYXBpLWdhdGV3YXkiLCJhdWQiOiJodHRwOi8vYXV0aC50ZXN0LmNhcnRvZXN1bmljcmVkLmNvbS5ici9hdXRoL3JlYWxtcy9hcGktZ2F0ZXdheSIsInN1YiI6ImFhNTljMjliLTQ3YmYtNDgzMC04MjVjLTRiMzg1NTg4OGZmMCIsInR5cCI6IlJlZnJlc2giLCJhenAiOiJ1bmljcmVkIiwic2Vzc2lvbl9zdGF0ZSI6ImE4MmQyNzkyLTk3MTMtNGNjNS1hOTYzLTBjYzAxOTBlYWUzNSI", "token_type": "bearer", "not-before-policy": 0, "session_state": "a82d2792-9713-4cc5-a963-0cc0190eae35", "scope": "email profile" } ``` ### <a id="customer"></a> Endpoint que busca cartões de um customer. **GET:** /v1/cards/card/cards?customerUuid=699296d4-7a5f-451e-b879-c61db92f97fd **Headers:** Authorization Exemplo: bearer token Traffic-Code Exemplo: 136 Query Param: customerUuid Exemplo: 699296d4-7a5f-451e-b879-c61db92f97fd **Retornos:** 200 (Ok) 400 (Bad Request) 401 (Unauthorized) 404 (Not Found) 500 (Internal Server Error) **Exemplos de retorno:** Retorna 200 com uma lista de cartões: ```JSON [ { "uuid": "e7cddce1-127b-4f55-9676-e6c1c5d6d36e", "lastFourNumbers": "3456", "printedName": "ALMIRO DOMINGOS", "ownerName": "Almiro Domingos", "productName": "Gold", "productUuid": "cd3d599d-17d0-4187-840b-5d40970ef477", "totalLimit": 20000.00, "validThru": "2025-11-25T07:00:00", "status": {"code": 1, "type": "ACTIVE", "description": "Active"}, "dateLastChangeDueDay": "2025-11-13T07:00:00", "additional": false, "automaticDebit": false, "firstBlock": false, "availableLimit": 10000.00, "accountNumber": "123491", "dueDay": 5, "email": "almiro@unicred.com.br", "telephone": { "areaCode": "51", "number": "98580651" }, "address": { "zipCode": "92056000", "publicPlace": "Ipiranga", "number": "7200", "complement": "sala 101", "neighborhood": "Jardim do Salso", "city": "Porto Alegre", "federatedUnit": "RS" }, "cardAccount": { "uuid": "755d4f39-ebd4-3a22-b7b6-6988073dbd98" }, "modality": "DEBIT", "customerUuid": "8196feb0-ebc6-4db6-aa23-0a54387430ef", "annuityUuid": "fc12eebb-8f6b-4eb1-bedb-f3b20afd34e5", "annuityValue": 20.00, "travelNotice": false }, { "uuid": "e7cddce1-127b-4f55-9676-f6c1c5d6d38l", "lastFourNumbers": "1158", "printedName": "JOSE BARROSO", "ownerName": "Jose Barroso", "productName": "Gold", "productUuid": "cd3d599d-17d0-4187-840b-5d40970ef477", "totalLimit": 12000.00, "validThru": "2025-11-25T07:00:00", "status": {"code": 2, "type": "BLOCKED", "description": "Temporary locked allows unlock via cell phone"}, "dateLastChangeDueDay": "2025-11-13T07:00:00", "additional": false, "automaticDebit": false, "firstBlock": true, "availableLimit": 1000.00, "accountNumber": "123491", "dueDay": 5, "email": "jose@unicred.com.br", "telephone": { "areaCode": "51", "number": "98580651" }, "address": { "zipCode": "92056000", "publicPlace": "Ipiranga", "number": "7200", "complement": "sala 101", "neighborhood": "Jardim do Salso", "city": "Porto Alegre", "federatedUnit": "RS" }, "cardAccount": { "uuid": "33651f06-6115-4aab-843b-cea8eddf76c95" }, "modality": "MULTIPLE", "customerUuid": "8196feb0-ebc6-4db6-aa23-0a54387430ef", "annuityUuid": "fc12eebb-8f6b-4eb1-bedb-f3b20afd34e5", "annuityValue": 20.00, "travelNotice": true } ] ``` ### <a id="card"></a>Endpoint que busca o cooperado em cartões. **GET:** /v1/cards/customers/natural-persons/document **Headers:** Authorization Exemplo: bearer token Traffic-Code Exemplo: 136 Document Ex: 07848399990 **Retornos:** 200 (Ok) 400 (Bad Request) 401 (Unauthorized) 404 (Not Found) // Customer não encontrado 500 (Internal Server Error) **Exemplos de retorno:** Retorna 200 quando o customer existe: ```JSON { "customerUuid": "string", "institution": "string", "name": "string", "organizations": ["string"], "document": "string", "dateOfBirth": "2020-03-26", "gender": "string", "email": "string", "mobile": { "countryCode": "string", "areaCode": "string", "number": "string" } } ``` ### <a id="fatura"></a>Endpoint de consultar últimas faturas fechada. > Operação realizada para recuperar as faturas, utilizando o filtro situation = CLOSED e limit = 1 para retornar a última fatura fechada oi x para quantas faturas desejar > **GET:**/cards/v1/invoices/card-account/{uuid} **Headers:** - Authorization **(required)** - **Exemplo:** eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI2cG9MdlIzckE2aVRBMThhbE1GeGk4b0xFN0F0SWVVZG5xcFpLdlVqYlE0In0.eyJleHAiOjE2MTM2NTk1NzksImlhdCI6MTYxMzY1OTI3OSwianRpIjoiM - Traffic-Code **(required)** - **Exemplo:** 136 **Path:** - uuid **(required)** - UUID card identifier - **Exemplo:** b45cffe0-84dd-3d20-9928-bee85e7b0f21 **Query Params:** - situation - **Exemplo:** CLOSED - limit - **Exemplo:** 1 **Retornos:** - 200 (Ok) - 400 (Bad Request) - 401 (Unauthorized) - 500 (Internal Server Error) **Exemplos de retorno:** # **Retorna 200 quando é retornado as faturas** **Body de retorno:** ``` [ { "uuid": "fb4e305d-eaf2-4119-8e8d-17bfb0b0aa28", "situation": "OPENED", "paid": false, "dueDate": "2020-01-23", "realDueDate": "2020-01-25", "closingDate": "2020-01-20", "totalAmount": 2000, "minimumPaymentAmount": 200, "lineNumber": "00190500954014481606906809350314337370000000100", "pdfAvailable": false, "debitAccount": { "automaticDebit": false, "cancelled": true, "organization": "1120", "accountNumber": "123456" } } ] ``` **Retorna 400 quando ocorre um erro de envio informações inválidas** **Body de retorno:**