diff --git a/.docker/db/scripts/0_init_db.sql b/.docker/db/scripts/0_init_db.sql
index 68b5bb9b499d11c15ab517fad190d7a81d418889..2769faf1e86eb735096084270f77fa4c0ca3f105 100644
--- a/.docker/db/scripts/0_init_db.sql
+++ b/.docker/db/scripts/0_init_db.sql
@@ -6,7 +6,7 @@ GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA bank_user TO "ACC_USER";
 CREATE SCHEMA IF NOT EXISTS bank_account;
 CREATE USER "ACC_ACCOUNT" WITH PASSWORD 'accountAccPasswd';
 ALTER ROLE "ACC_ACCOUNT" SET SEARCH_PATH TO bank_account;
-GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA bank_account TO "ACC_ACCOUNT";
+GRANT ALL PRIVILEGES ON SCHEMA bank_account TO "ACC_ACCOUNT";
 
 CREATE SCHEMA IF NOT EXISTS bank_transaction;
 CREATE USER "ACC_TRANSACTION" WITH PASSWORD 'transactionAccPasswd';
diff --git a/.docker/db/scripts/1_create_account_db.sql b/.docker/db/scripts/1_create_account_db.sql
index a2e08131a5aad5ad8a372f676cd6ee7ac347c95b..8565e9df69b690c97aa9cf043f9f1688abe13eca 100644
--- a/.docker/db/scripts/1_create_account_db.sql
+++ b/.docker/db/scripts/1_create_account_db.sql
@@ -2,3 +2,25 @@ SET ROLE "ACC_ACCOUNT";
 SET SEARCH_PATH TO bank_account;
 
 -- CREATE TABLES
+
+CREATE TABLE IF NOT EXISTS bal_transaction
+(
+    amount NUMERIC(38, 2),
+    type SMALLINT,
+    date TIMESTAMP(6) WITH TIME ZONE,
+    id BIGINT PRIMARY KEY,
+    process_id UUID,
+    balance_id CHARACTER VARYING(255)
+);
+
+CREATE TABLE IF NOT EXISTS balance
+(
+    amount NUMERIC(38, 2),
+    balance_id CHARACTER VARYING(255) PRIMARY KEY
+);
+
+CREATE SEQUENCE bal_transaction_seq START WITH 1 INCREMENT BY 50;
+
+ALTER TABLE bal_transaction ADD CONSTRAINT CONSTRAINT_FF CHECK(TYPE BETWEEN 0 AND 4);
+ALTER TABLE bal_transaction ADD CONSTRAINT CONSTRAINT_F CHECK(TYPE BETWEEN 0 AND 4);
+ALTER TABLE bal_transaction ADD CONSTRAINT FKICJDGHKQ3OQKDCDC6KKUJD6O3 FOREIGN KEY(BALANCE_ID) REFERENCES balance(BALANCE_ID);
\ No newline at end of file
diff --git a/.docker/db/scripts/2_generate_account_db.sql b/.docker/db/scripts/2_generate_account_db.sql
index 19c94428fe23a845a884b109f520b2262baea8fd..7cf2f758941be23a8a34d730c93f0c52ea84a67f 100644
--- a/.docker/db/scripts/2_generate_account_db.sql
+++ b/.docker/db/scripts/2_generate_account_db.sql
@@ -1,3 +1,15 @@
 SET SEARCH_PATH TO bank_account;
 
--- INSERT starting data
\ No newline at end of file
+-- INSERT starting data
+INSERT INTO balance VALUES
+                                   (90.00, 'id1'),
+                                   (118.00, 'id2'),
+                                   (243.00, 'id3'),
+                                   (-243.00, 'id4');
+
+INSERT INTO bal_transaction VALUES
+                                       (90.00, 1, TIMESTAMP WITH TIME ZONE '2024-04-15 14:11:00.288446+02', 1, UUID 'b775b79f-52a9-45c4-8ab3-bdb9f0f3d4ae', 'id1'),
+                                       (94.00, 2, TIMESTAMP WITH TIME ZONE '2024-04-15 14:11:42.919109+02', 2, UUID 'c91b6ef6-32ac-4160-bf7f-97979ca84606', 'id2'),
+                                       (24.00, 1, TIMESTAMP WITH TIME ZONE '2024-04-15 14:11:57.480291+02', 3, UUID '6a1fa40e-3ba8-46a8-b005-8bcd63ae44de', 'id2'),
+                                       (243.00, 3, TIMESTAMP WITH TIME ZONE '2024-04-15 14:12:14.949613+02', 4, UUID 'd9974137-7000-4f34-8c64-1d35b0534e31', 'id3'),
+                                       (-243.00, 3, TIMESTAMP WITH TIME ZONE '2024-04-15 14:12:23.109443+02', 5, UUID 'd9974137-7000-4f34-8c64-1d35b0534e31', 'id4');
\ No newline at end of file
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 9302c9da3f077077d7b5a1608af8631962142c13..ac197589ab28487841cee0753c0b13f837a1690e 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,4 +1,5 @@
 stages:
+  - build
   - test
 
 image: maven:latest
@@ -13,11 +14,14 @@ test-account-management:
 
 test-account-query:
   stage: test
+  image: docker
   tags:
     - shared-fi
   script:
+    - 'docker-compose up -d'
     - 'cd account-query'
     - 'mvn clean install'
+    - 'docker-compose down'
 
 test-infrastructure:
   stage: test
diff --git a/account-query/Dockerfile b/account-query/Dockerfile
new file mode 100644
index 0000000000000000000000000000000000000000..74314e39090fbafb0ab74a2b5834d8b385b166b8
--- /dev/null
+++ b/account-query/Dockerfile
@@ -0,0 +1,5 @@
+FROM eclipse-temurin:21.0.2_13-jdk-alpine
+WORKDIR /app
+COPY target/*.jar /account-query.jar
+EXPOSE 8081
+ENTRYPOINT ["java", "-jar", "-Ddb.hostname=banking-db", "/account-query.jar"]
diff --git a/account-query/dump.sql b/account-query/dump.sql
deleted file mode 100644
index 5a0b886648d72a80f854eb9e8f43c9209dd4d919..0000000000000000000000000000000000000000
--- a/account-query/dump.sql
+++ /dev/null
@@ -1,34 +0,0 @@
--- H2 2.2.224;
-;             
-CREATE USER IF NOT EXISTS "ACCOUNT-QUERY-SERVICE" SALT '21f469e7ee641b1b' HASH '18dbefd38a85a488a92d7cc2e485ff9c47f29703294af67d9d907903a1551190' ADMIN;      
-CREATE SEQUENCE "PUBLIC"."TRANSACTION_SEQ" START WITH 1 RESTART WITH 101 INCREMENT BY 50;     
-CREATE MEMORY TABLE "PUBLIC"."BALANCE"(
-    "AMOUNT" NUMERIC(38, 2),
-    "BALANCE_ID" CHARACTER VARYING(255) NOT NULL
-);   
-ALTER TABLE "PUBLIC"."BALANCE" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_1" PRIMARY KEY("BALANCE_ID");              
--- 4 +/- SELECT COUNT(*) FROM PUBLIC.BALANCE; 
-INSERT INTO "PUBLIC"."BALANCE" VALUES
-(400.00, 'id1'),
-(86.00, 'id2'),
-(23.00, 'id3'),
-(232.00, 'id4');   
-CREATE MEMORY TABLE "PUBLIC"."TRANSACTION"(
-    "AMOUNT" NUMERIC(38, 2),
-    "TYPE" SMALLINT,
-    "DATE" TIMESTAMP(6) WITH TIME ZONE,
-    "ID" BIGINT NOT NULL,
-    "PROCESS_ID" UUID,
-    "BALANCE_ID" CHARACTER VARYING(255)
-);      
-ALTER TABLE "PUBLIC"."TRANSACTION" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_FFF" PRIMARY KEY("ID");
--- 5 +/- SELECT COUNT(*) FROM PUBLIC.TRANSACTION;             
-INSERT INTO "PUBLIC"."TRANSACTION" VALUES
-(433.00, 1, TIMESTAMP WITH TIME ZONE '2024-04-15 11:04:09.18155+02', 1, UUID '00000000-0000-0000-0000-000000000001', 'id1'),
-(-33.00, 0, TIMESTAMP WITH TIME ZONE '2024-04-15 11:04:18.442307+02', 2, UUID '00000000-0000-0000-0000-000000000002', 'id1'),
-(86.00, 2, TIMESTAMP WITH TIME ZONE '2024-04-15 11:04:32.518962+02', 3, UUID '00000000-0000-0000-0000-000000000003', 'id2'),
-(23.00, 4, TIMESTAMP WITH TIME ZONE '2024-04-15 11:05:05.083367+02', 4, UUID '00000000-0000-0000-0000-000000000005', 'id3'),
-(232.00, 1, TIMESTAMP WITH TIME ZONE '2024-04-15 11:05:18.375087+02', 5, UUID '00000000-0000-0000-0000-000000000006', 'id4');             
-ALTER TABLE "PUBLIC"."TRANSACTION" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_FF" CHECK("TYPE" BETWEEN 0 AND 4) NOCHECK;             
-ALTER TABLE "PUBLIC"."TRANSACTION" ADD CONSTRAINT "PUBLIC"."CONSTRAINT_F" CHECK("TYPE" BETWEEN 0 AND 4) NOCHECK;              
-ALTER TABLE "PUBLIC"."TRANSACTION" ADD CONSTRAINT "PUBLIC"."FKICJDGHKQ3OQKDCDC6KKUJD6O3" FOREIGN KEY("BALANCE_ID") REFERENCES "PUBLIC"."BALANCE"("BALANCE_ID") NOCHECK;       
diff --git a/account-query/pom.xml b/account-query/pom.xml
index 0dbffdc484984dec3064be101720cd772e421ee4..69af3420294fa8c7cf88a10d41796ac2ab515c56 100644
--- a/account-query/pom.xml
+++ b/account-query/pom.xml
@@ -22,6 +22,7 @@
 
         <spring.version>3.2.4</spring.version>
         <org.mapstruct.version>1.5.5.Final</org.mapstruct.version>
+        <jdbc-postgres.version>42.7.3</jdbc-postgres.version>
     </properties>
 
     <build>
@@ -116,10 +117,14 @@
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-data-jpa</artifactId>
         </dependency>
+        <!--   DB     -->
         <dependency>
-            <groupId>com.h2database</groupId>
-            <artifactId>h2</artifactId>
+            <groupId>org.postgresql</groupId>
+            <artifactId>postgresql</artifactId>
+            <version>${jdbc-postgres.version}</version>
+            <scope>runtime</scope>
         </dependency>
+
         <dependency>
             <groupId>org.mapstruct</groupId>
             <artifactId>mapstruct</artifactId>
diff --git a/account-query/src/main/java/cz/muni/pa165/banking/application/controller/BalanceController.java b/account-query/src/main/java/cz/muni/pa165/banking/application/controller/BalanceController.java
index 1541bee756261982f3ab0f66b318c43059d4162f..f1d905f38515420104d69d67daab2264fb6c9dcc 100644
--- a/account-query/src/main/java/cz/muni/pa165/banking/application/controller/BalanceController.java
+++ b/account-query/src/main/java/cz/muni/pa165/banking/application/controller/BalanceController.java
@@ -49,4 +49,10 @@ public class BalanceController implements CustomerServiceApi, SystemServiceApi {
         balanceFacade.createNewBalance(id);
         return new ResponseEntity<>(HttpStatus.CREATED);
     }
+
+    @Override
+    public ResponseEntity<Void> deleteBalance(String id) {
+        balanceFacade.deleteBalance(id);
+        return new ResponseEntity<>(HttpStatus.OK);
+    }
 }
diff --git a/account-query/src/main/java/cz/muni/pa165/banking/application/facade/BalanceFacade.java b/account-query/src/main/java/cz/muni/pa165/banking/application/facade/BalanceFacade.java
index b89d717c93695ce038e443d9074139c606191177..36cf383884e46703891cd8b2666a289ca1627992 100644
--- a/account-query/src/main/java/cz/muni/pa165/banking/application/facade/BalanceFacade.java
+++ b/account-query/src/main/java/cz/muni/pa165/banking/application/facade/BalanceFacade.java
@@ -65,4 +65,7 @@ public class BalanceFacade {
         return toReturn.stream().map(balanceMapper::mapTransactionIn).toList();
     }
 
+    public void deleteBalance(String id) throws NotFoundAccountException {
+        balanceService.deleteBalance(id);
+    }
 }
diff --git a/account-query/src/main/java/cz/muni/pa165/banking/application/service/BalanceServiceImpl.java b/account-query/src/main/java/cz/muni/pa165/banking/application/service/BalanceServiceImpl.java
index 22251de2253d8dd1e6d974ce7c25a499e70104cb..d702ee1d2bc618c6ac45f0c3206c1c79bfc98056 100644
--- a/account-query/src/main/java/cz/muni/pa165/banking/application/service/BalanceServiceImpl.java
+++ b/account-query/src/main/java/cz/muni/pa165/banking/application/service/BalanceServiceImpl.java
@@ -95,4 +95,11 @@ public class BalanceServiceImpl implements BalanceService {
         }
         return result;
     }
+
+    @Override
+    public void deleteBalance(String id) throws NotFoundAccountException {
+        Balance balance = findById(id);
+        transactionRepository.findByBalance(balance).forEach(a -> transactionRepository.delete(a));
+        balanceRepository.delete(balance);
+    }
 }
diff --git a/account-query/src/main/java/cz/muni/pa165/banking/domain/balance/repository/BalancesRepository.java b/account-query/src/main/java/cz/muni/pa165/banking/domain/balance/repository/BalancesRepository.java
index 4021f069bca3b0f5473de500dc0e7cb145a2ae19..ae38e10cd376adda72a3cf52f0c84434cdfebdac 100644
--- a/account-query/src/main/java/cz/muni/pa165/banking/domain/balance/repository/BalancesRepository.java
+++ b/account-query/src/main/java/cz/muni/pa165/banking/domain/balance/repository/BalancesRepository.java
@@ -3,6 +3,7 @@ package cz.muni.pa165.banking.domain.balance.repository;
 import cz.muni.pa165.banking.domain.balance.Balance;
 import cz.muni.pa165.banking.domain.transaction.Transaction;
 import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.Modifying;
 import org.springframework.data.jpa.repository.Query;
 import org.springframework.stereotype.Repository;
 
diff --git a/account-query/src/main/java/cz/muni/pa165/banking/domain/balance/repository/TransactionRepository.java b/account-query/src/main/java/cz/muni/pa165/banking/domain/balance/repository/TransactionRepository.java
index 67ea7b33092703cd312bba673f3dced7e254b062..9d771349cc99e013c1f1a665413c1053940b90bf 100644
--- a/account-query/src/main/java/cz/muni/pa165/banking/domain/balance/repository/TransactionRepository.java
+++ b/account-query/src/main/java/cz/muni/pa165/banking/domain/balance/repository/TransactionRepository.java
@@ -4,10 +4,14 @@ import cz.muni.pa165.banking.domain.balance.Balance;
 import cz.muni.pa165.banking.domain.transaction.Transaction;
 import cz.muni.pa165.banking.domain.transaction.TransactionType;
 import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.Modifying;
+import org.springframework.data.jpa.repository.Query;
 import org.springframework.stereotype.Repository;
 
 import java.math.BigDecimal;
 import java.time.OffsetDateTime;
+import java.util.Collection;
+import java.util.Optional;
 import java.util.UUID;
 
 /**
@@ -20,4 +24,7 @@ public interface TransactionRepository extends JpaRepository<Transaction, Long>
                 OffsetDateTime.now(), processId, balance);
         this.save(tr);
     }
+
+    @Query("SELECT u FROM Transaction u where u.balance = :balance")
+    Collection<Transaction> findByBalance(Balance balance);
 }
diff --git a/account-query/src/main/java/cz/muni/pa165/banking/domain/balance/service/BalanceService.java b/account-query/src/main/java/cz/muni/pa165/banking/domain/balance/service/BalanceService.java
index c242a56b620bab2c0ce47ccd480578a02a2bf648..dcd29622dd5546f9dc5188857ad10ad7326993ec 100644
--- a/account-query/src/main/java/cz/muni/pa165/banking/domain/balance/service/BalanceService.java
+++ b/account-query/src/main/java/cz/muni/pa165/banking/domain/balance/service/BalanceService.java
@@ -28,4 +28,6 @@ public interface BalanceService {
 
     List<Transaction> getAllTransactions(OffsetDateTime from, OffsetDateTime from1, BigDecimal minAmount,
                                          BigDecimal maxAmount, TransactionType transactionType);
+
+    void deleteBalance(String id) throws NotFoundAccountException;
 }
diff --git a/account-query/src/main/java/cz/muni/pa165/banking/domain/transaction/Transaction.java b/account-query/src/main/java/cz/muni/pa165/banking/domain/transaction/Transaction.java
index 728ad9a0345e51dbb6bfbdaba46839bb7abb2f9c..1966562b036d9b31490539fa3b4e438210cc503e 100644
--- a/account-query/src/main/java/cz/muni/pa165/banking/domain/transaction/Transaction.java
+++ b/account-query/src/main/java/cz/muni/pa165/banking/domain/transaction/Transaction.java
@@ -13,7 +13,7 @@ import java.util.UUID;
  * @author Martin Mojzis
  */
 @Entity
-@Table(name = "transaction")
+@Table(name = "bal_transaction")
 public class Transaction {
 
     @Id
diff --git a/account-query/src/main/resources/application.properties b/account-query/src/main/resources/application.properties
index a64b221fa14e4f724bc967804f1eca8f00d5708f..6d9f8c85592e27569bde6e5aed1e1db89ccfb8c3 100644
--- a/account-query/src/main/resources/application.properties
+++ b/account-query/src/main/resources/application.properties
@@ -1,10 +1,12 @@
 server.port=8081
+db.hostname=localhost
+spring.application.name=Balance-Query
+
 spring.jpa.open-in-view=false
-spring.datasource.url=jdbc:h2:mem:account-query;MODE=PostgreSQL
-spring.datasource.driverClassName=org.h2.Driver
-spring.datasource.username=account-query-service
-spring.datasource.password=rnadompassword
-spring.jpa.database-platform=org.hibernate.dialect.H2Dialect
+spring.datasource.url=jdbc:postgresql://${db.hostname}:5432/banking
+spring.datasource.driverClassName=org.postgresql.Driver
+spring.datasource.username=ACC_ACCOUNT
+spring.datasource.password=accountAccPasswd
 # showing SQL is generally good practice for running project locally to check whether there is not an issue with implementation of JPA methods.
 spring.jpa.show-sql=true
 spring.jackson.property-naming-strategy=SNAKE_CASE
diff --git a/account-query/src/main/resources/openapi.yaml b/account-query/src/main/resources/openapi.yaml
index dd10e76d9e992ad34dd1d3c8caee7205cb627ffc..344ed566183609927723e57bc97646414b7b7065 100644
--- a/account-query/src/main/resources/openapi.yaml
+++ b/account-query/src/main/resources/openapi.yaml
@@ -115,6 +115,18 @@ paths:
         "201":
           description: OK
 
+  /balance:
+    delete:
+      tags:
+        - SystemService
+      summary: deletes a balance
+      operationId: deleteBalance
+      parameters:
+        - { name: id, in: query, required: true, schema: { type: string }, description: "id of account" }
+      responses:
+        "200":
+          description: OK
+
   /balance/add:
     post:
       tags:
diff --git a/account-query/src/test/java/cz/muni/pa165/banking/application/controller/BalanceControllerIT.java b/account-query/src/test/java/cz/muni/pa165/banking/application/controller/BalanceControllerIT.java
index c3d1e1fe4a27d5812b01e20a6d37e527a26bac1e..72650b9230bbe2e18f657bdf3ace51ad46e2552c 100644
--- a/account-query/src/test/java/cz/muni/pa165/banking/application/controller/BalanceControllerIT.java
+++ b/account-query/src/test/java/cz/muni/pa165/banking/application/controller/BalanceControllerIT.java
@@ -18,11 +18,11 @@ import org.springframework.test.web.servlet.MockMvc;
 import java.math.BigDecimal;
 import java.nio.charset.StandardCharsets;
 import java.time.OffsetDateTime;
+import java.util.Arrays;
 import java.util.List;
 import java.util.UUID;
 
-import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
-import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;
+import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.*;
 import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
 import static org.assertj.core.api.Assertions.assertThat;
 
@@ -157,19 +157,20 @@ public class BalanceControllerIT {
     @Test
     void getAllTransactions_returnsAllTransactions() throws Exception {
         // Arrange
-        mockMvc.perform(post("/balance/new?id=id"));
-        mockMvc.perform(post("/balance/add?id=id&amount=20&processId=5612b08f-27c2-42ca-9f23-0c9aff6ad877&type=WITHDRAW"));
-        mockMvc.perform(post("/balance/new?id=i"));
-        mockMvc.perform(post("/balance/add?id=i&amount=40&processId=5612b08f-27c2-42ca-9f23-0c9aff6ad874&type=WITHDRAW"));
+
+        mockMvc.perform(post("/balance/new?id=idddd"));
+        mockMvc.perform(post("/balance/add?id=idddd&amount=20&processId=5612b08f-27c2-42ca-9f23-0c9aff6ad847&type=WITHDRAW"));
+        mockMvc.perform(post("/balance/new?id=idd"));
+        mockMvc.perform(post("/balance/add?id=idd&amount=40&processId=5612b08f-27c2-42ca-9f23-0c9aff64d874&type=WITHDRAW"));
         cz.muni.pa165.banking.account.query.dto.Transaction transaction = new Transaction();
         transaction.setDate(OffsetDateTime.now());
         transaction.setAmount(BigDecimal.valueOf(20));
-        transaction.setProcessId(UUID.fromString("5612b08f-27c2-42ca-9f23-0c9aff6ad877"));
+        transaction.setProcessId(UUID.fromString("5612b08f-27c2-42ca-9f23-0c9aff6ad847"));
         transaction.setTransactionType(cz.muni.pa165.banking.account.query.dto.TransactionType.WITHDRAW);
         cz.muni.pa165.banking.account.query.dto.Transaction transaction2 = new Transaction();
         transaction2.setDate(OffsetDateTime.now());
         transaction2.setAmount(BigDecimal.valueOf(40));
-        transaction2.setProcessId(UUID.fromString("5612b08f-27c2-42ca-9f23-0c9aff6ad874"));
+        transaction2.setProcessId(UUID.fromString("5612b08f-27c2-42ca-9f23-0c9aff64d874"));
         transaction2.setTransactionType(cz.muni.pa165.banking.account.query.dto.TransactionType.WITHDRAW);
         // Act
         String id = "id";
@@ -179,26 +180,30 @@ public class BalanceControllerIT {
                 .andReturn()
                 .getResponse()
                 .getContentAsString(StandardCharsets.UTF_8);
-        cz.muni.pa165.banking.account.query.dto.Transaction[] response = OBJECT_MAPPER.readValue(responseJson, cz.muni.pa165.banking.account.query.dto.Transaction[].class);
+        List<cz.muni.pa165.banking.account.query.dto.Transaction> response = Arrays.stream(OBJECT_MAPPER.readValue(responseJson, Transaction[].class)).toList();
+        mockMvc.perform(delete("/balance?id=idddd"));
+        mockMvc.perform(delete("/balance?id=idd"));
 
         // Assert
-        assertThat(response[0].getAmount().byteValueExact()).isEqualTo(transaction2.getAmount().byteValueExact());
-        assertThat(response[0].getProcessId()).isEqualTo(transaction2.getProcessId());
-        assertThat(response[0].getTransactionType()).isEqualTo(transaction2.getTransactionType());
-        assertThat(response[1].getAmount().byteValueExact()).isEqualTo(transaction.getAmount().byteValueExact());
-        assertThat(response[1].getProcessId()).isEqualTo(transaction.getProcessId());
-        assertThat(response[1].getTransactionType()).isEqualTo(transaction.getTransactionType());
+        assertThat(response.stream().filter(a -> a.getProcessId().equals(transaction2.getProcessId())).findFirst().get()
+                .getAmount().byteValueExact()).isEqualTo(transaction2.getAmount().byteValueExact());
+        assertThat(response.stream().filter(a -> a.getProcessId().equals(transaction2.getProcessId())).findFirst().get()
+                .getTransactionType()).isEqualTo(transaction2.getTransactionType());
+        assertThat(response.stream().filter(a -> a.getProcessId().equals(transaction.getProcessId())).findFirst().get()
+                .getAmount().byteValueExact()).isEqualTo(transaction.getAmount().byteValueExact());
+        assertThat(response.stream().filter(a -> a.getProcessId().equals(transaction.getProcessId())).findFirst().get()
+                .getTransactionType()).isEqualTo(transaction.getTransactionType());
     }
 
     @Test
     void getReport_personExists_returnsReport() throws Exception {
         // Arrange
         mockMvc.perform(post("/balance/new?id=iddd"));
-        mockMvc.perform(post("/balance/add?id=iddd&amount=20&processId=5612b08f-27c2-42ca-9f23-0c9aff6ad877&type=WITHDRAW"));
+        mockMvc.perform(post("/balance/add?id=iddd&amount=20&processId=5612b08f-27c2-42ca-9f26-0c9aff6ad877&type=WITHDRAW"));
         cz.muni.pa165.banking.account.query.dto.Transaction transaction = new Transaction();
         transaction.setDate(OffsetDateTime.now());
         transaction.setAmount(BigDecimal.valueOf(20));
-        transaction.setProcessId(UUID.fromString("5612b08f-27c2-42ca-9f23-0c9aff6ad877"));
+        transaction.setProcessId(UUID.fromString("5612b08f-27c2-42ca-9f26-0c9aff6ad877"));
         transaction.setTransactionType(cz.muni.pa165.banking.account.query.dto.TransactionType.WITHDRAW);
         // Act
         String id = "id";
@@ -209,6 +214,7 @@ public class BalanceControllerIT {
                 .getResponse()
                 .getContentAsString(StandardCharsets.UTF_8);
         cz.muni.pa165.banking.account.query.dto.TransactionsReport response = OBJECT_MAPPER.readValue(responseJson, cz.muni.pa165.banking.account.query.dto.TransactionsReport.class);
+        mockMvc.perform(delete("/balance?id=iddd"));
 
         // Assert
         assertThat(response.getWithdrawalAmount().getAmountIn().byteValueExact()).isEqualTo(BigDecimal.valueOf(20).byteValueExact());
diff --git a/account-query/src/test/java/cz/muni/pa165/banking/application/repository/BalancesRepositoryTest.java b/account-query/src/test/java/cz/muni/pa165/banking/application/repository/BalancesRepositoryTest.java
deleted file mode 100644
index eedc6482be6e8ac9632c2f802626a23e39370d11..0000000000000000000000000000000000000000
--- a/account-query/src/test/java/cz/muni/pa165/banking/application/repository/BalancesRepositoryTest.java
+++ /dev/null
@@ -1,61 +0,0 @@
-package cz.muni.pa165.banking.application.repository;
-
-import cz.muni.pa165.banking.domain.balance.Balance;
-import cz.muni.pa165.banking.domain.balance.repository.BalancesRepository;
-import jakarta.transaction.Transactional;
-import org.junit.jupiter.api.BeforeEach;
-import org.junit.jupiter.api.Test;
-import org.junit.jupiter.api.extension.ExtendWith;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest;
-import org.springframework.test.context.junit.jupiter.SpringExtension;
-
-import java.math.BigDecimal;
-import java.util.List;
-import java.util.Optional;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-@ExtendWith(SpringExtension.class)
-@Transactional
-@DataJpaTest
-class BalancesRepositoryTest {
-
-    @Autowired
-    BalancesRepository balancesRepository;
-    @BeforeEach
-    public void init(){
-        balancesRepository.addBalance("id1");
-        balancesRepository.addBalance("id2");
-    }
-
-    @Test
-    void findById_accountNotExists_returnsEmpty()
-    {
-        //Act
-        Optional<Balance> result = balancesRepository.findById("id3");
-
-        //Assert
-        assertThat(result).isEqualTo(Optional.empty());
-    }
-    @Test
-    void findById_accountExists_returnsBalance()
-    {
-        //Act
-        Optional<Balance> result = balancesRepository.findById("id2");
-
-        //Assert
-        assertThat(result).isNotNull();
-        assertThat(result.get().getAmount()).isEqualTo(BigDecimal.ZERO);
-        assertThat(result.get().getAccountId()).isEqualTo("id2");
-    }
-    @Test
-    void getAllIds_returnsAllIds(){
-        //Act
-        List<String> ids = balancesRepository.getAllIds();
-        //Assert
-        assertThat(ids).isNotNull();
-        assertThat(ids.size()).isEqualTo(2);
-        assertThat(ids.contains("id1")).isEqualTo(true);
-    }
-}
\ No newline at end of file