diff --git a/.idea/AndroidProjectSystem.xml b/.idea/AndroidProjectSystem.xml
new file mode 100644
index 0000000..4a53bee
--- /dev/null
+++ b/.idea/AndroidProjectSystem.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/java/com/alya/ecommerce_serang/data/api/response/AddressResponse.kt b/app/src/main/java/com/alya/ecommerce_serang/data/api/response/AddressResponse.kt
new file mode 100644
index 0000000..4a07f60
--- /dev/null
+++ b/app/src/main/java/com/alya/ecommerce_serang/data/api/response/AddressResponse.kt
@@ -0,0 +1,54 @@
+package com.alya.ecommerce_serang.data.api.response
+
+import com.google.gson.annotations.SerializedName
+
+data class AddressResponse(
+
+ @field:SerializedName("addresses")
+ val addresses: List,
+
+ @field:SerializedName("message")
+ val message: String
+)
+
+data class AddressesItem(
+
+ @field:SerializedName("is_store_location")
+ val isStoreLocation: Boolean,
+
+ @field:SerializedName("latitude")
+ val latitude: String,
+
+ @field:SerializedName("user_id")
+ val userId: Int,
+
+ @field:SerializedName("province_id")
+ val provinceId: Int,
+
+ @field:SerializedName("phone")
+ val phone: Any,
+
+ @field:SerializedName("street")
+ val street: String,
+
+ @field:SerializedName("subdistrict")
+ val subdistrict: String,
+
+ @field:SerializedName("recipient")
+ val recipient: Any,
+
+ @field:SerializedName("id")
+ val id: Int,
+
+ @field:SerializedName("detail")
+ val detail: String,
+
+ @field:SerializedName("postal_code")
+ val postalCode: String,
+
+ @field:SerializedName("longitude")
+ val longitude: String,
+
+ @field:SerializedName("city_id")
+ val cityId: Int
+)
diff --git a/app/src/main/java/com/alya/ecommerce_serang/data/api/response/CreateAddressResponse.kt b/app/src/main/java/com/alya/ecommerce_serang/data/api/response/CreateAddressResponse.kt
new file mode 100644
index 0000000..bb1b71e
--- /dev/null
+++ b/app/src/main/java/com/alya/ecommerce_serang/data/api/response/CreateAddressResponse.kt
@@ -0,0 +1,9 @@
+package com.alya.ecommerce_serang.data.api.response
+
+import com.google.gson.annotations.SerializedName
+
+data class CreateAddressResponse(
+
+ @field:SerializedName("message")
+ val message: String
+)
diff --git a/app/src/main/java/com/alya/ecommerce_serang/data/api/response/OrderDetailResponse.kt b/app/src/main/java/com/alya/ecommerce_serang/data/api/response/OrderDetailResponse.kt
new file mode 100644
index 0000000..c3fcb24
--- /dev/null
+++ b/app/src/main/java/com/alya/ecommerce_serang/data/api/response/OrderDetailResponse.kt
@@ -0,0 +1,129 @@
+package com.alya.ecommerce_serang.data.api.response
+
+import com.google.gson.annotations.SerializedName
+
+data class OrderDetailResponse(
+
+ @field:SerializedName("orders")
+ val orders: Orders,
+
+ @field:SerializedName("message")
+ val message: String
+)
+
+data class OrderItemsItem(
+
+ @field:SerializedName("review_id")
+ val reviewId: Int? = null,
+
+ @field:SerializedName("quantity")
+ val quantity: Int,
+
+ @field:SerializedName("price")
+ val price: Int,
+
+ @field:SerializedName("subtotal")
+ val subtotal: Int,
+
+ @field:SerializedName("product_image")
+ val productImage: String? = null,
+
+ @field:SerializedName("store_name")
+ val storeName: String,
+
+ @field:SerializedName("product_price")
+ val productPrice: Int,
+
+ @field:SerializedName("product_name")
+ val productName: String
+)
+
+data class Orders(
+
+ @field:SerializedName("receipt_num")
+ val receiptNum: String,
+
+ @field:SerializedName("latitude")
+ val latitude: String,
+
+ @field:SerializedName("created_at")
+ val createdAt: String,
+
+ @field:SerializedName("voucher_code")
+ val voucherCode: String? = null,
+
+ @field:SerializedName("updated_at")
+ val updatedAt: String,
+
+ @field:SerializedName("etd")
+ val etd: String,
+
+ @field:SerializedName("street")
+ val street: String,
+
+ @field:SerializedName("cancel_date")
+ val cancelDate: String,
+
+ @field:SerializedName("longitude")
+ val longitude: String,
+
+ @field:SerializedName("shipment_status")
+ val shipmentStatus: String,
+
+ @field:SerializedName("order_items")
+ val orderItems: List,
+
+ @field:SerializedName("auto_completed_at")
+ val autoCompletedAt: String,
+
+ @field:SerializedName("is_store_location")
+ val isStoreLocation: Boolean,
+
+ @field:SerializedName("voucher_name")
+ val voucherName: String? = null,
+
+ @field:SerializedName("address_id")
+ val addressId: Int,
+
+ @field:SerializedName("payment_method_id")
+ val paymentMethodId: Int,
+
+ @field:SerializedName("cancel_reason")
+ val cancelReason: String,
+
+ @field:SerializedName("total_amount")
+ val totalAmount: String,
+
+ @field:SerializedName("user_id")
+ val userId: Int,
+
+ @field:SerializedName("province_id")
+ val provinceId: Int,
+
+ @field:SerializedName("courier")
+ val courier: String,
+
+ @field:SerializedName("subdistrict")
+ val subdistrict: String,
+
+ @field:SerializedName("service")
+ val service: String,
+
+ @field:SerializedName("shipment_price")
+ val shipmentPrice: String,
+
+ @field:SerializedName("voucher_id")
+ val voucherId: Int? = null,
+
+ @field:SerializedName("detail")
+ val detail: String,
+
+ @field:SerializedName("postal_code")
+ val postalCode: String,
+
+ @field:SerializedName("order_id")
+ val orderId: Int,
+
+ @field:SerializedName("city_id")
+ val cityId: Int
+)
diff --git a/app/src/main/java/com/alya/ecommerce_serang/data/api/response/OrderListResponse.kt b/app/src/main/java/com/alya/ecommerce_serang/data/api/response/OrderListResponse.kt
new file mode 100644
index 0000000..3ea9f47
--- /dev/null
+++ b/app/src/main/java/com/alya/ecommerce_serang/data/api/response/OrderListResponse.kt
@@ -0,0 +1,91 @@
+package com.alya.ecommerce_serang.data.api.response
+
+import com.google.gson.annotations.SerializedName
+
+data class OrderListResponse(
+
+ @field:SerializedName("orders")
+ val orders: List,
+
+ @field:SerializedName("message")
+ val message: String
+)
+
+data class OrdersItem(
+
+ @field:SerializedName("receipt_num")
+ val receiptNum: String,
+
+ @field:SerializedName("latitude")
+ val latitude: String,
+
+ @field:SerializedName("created_at")
+ val createdAt: String,
+
+ @field:SerializedName("voucher_code")
+ val voucherCode: String? = null,
+
+ @field:SerializedName("updated_at")
+ val updatedAt: String,
+
+ @field:SerializedName("street")
+ val street: String,
+
+ @field:SerializedName("longitude")
+ val longitude: String,
+
+ @field:SerializedName("shipment_status")
+ val shipmentStatus: String,
+
+ @field:SerializedName("order_items")
+ val orderItems: List,
+
+ @field:SerializedName("is_store_location")
+ val isStoreLocation: Boolean,
+
+ @field:SerializedName("voucher_name")
+ val voucherName: String? = null,
+
+ @field:SerializedName("address_id")
+ val addressId: Int,
+
+ @field:SerializedName("payment_method_id")
+ val paymentMethodId: Int,
+
+ @field:SerializedName("total_amount")
+ val totalAmount: String,
+
+ @field:SerializedName("user_id")
+ val userId: Int,
+
+ @field:SerializedName("province_id")
+ val provinceId: Int,
+
+ @field:SerializedName("courier")
+ val courier: String,
+
+ @field:SerializedName("subdistrict")
+ val subdistrict: String,
+
+ @field:SerializedName("service")
+ val service: String,
+
+ @field:SerializedName("shipment_price")
+ val shipmentPrice: String,
+
+ @field:SerializedName("voucher_id")
+ val voucherId: Int? = null,
+
+ @field:SerializedName("detail")
+ val detail: String,
+
+ @field:SerializedName("postal_code")
+ val postalCode: String,
+
+ @field:SerializedName("order_id")
+ val orderId: Int,
+
+ @field:SerializedName("city_id")
+ val cityId: Int
+)
+
diff --git a/app/src/main/java/com/alya/ecommerce_serang/data/api/response/OrderResponse.kt b/app/src/main/java/com/alya/ecommerce_serang/data/api/response/OrderResponse.kt
new file mode 100644
index 0000000..3bb707d
--- /dev/null
+++ b/app/src/main/java/com/alya/ecommerce_serang/data/api/response/OrderResponse.kt
@@ -0,0 +1,105 @@
+package com.alya.ecommerce_serang.data.api.response
+
+import com.google.gson.annotations.SerializedName
+
+data class OrderResponse(
+
+ @field:SerializedName("shipping")
+ val shipping: Shipping,
+
+ @field:SerializedName("order_item")
+ val orderItem: List,
+
+ @field:SerializedName("message")
+ val message: String,
+
+ @field:SerializedName("order")
+ val order: Order
+)
+
+data class Shipping(
+
+ @field:SerializedName("receipt_num")
+ val receiptNum: Int? = null,
+
+ @field:SerializedName("etd")
+ val etd: String,
+
+ @field:SerializedName("price")
+ val price: String,
+
+ @field:SerializedName("service")
+ val service: String,
+
+ @field:SerializedName("name")
+ val name: String,
+
+ @field:SerializedName("created_at")
+ val createdAt: String,
+
+ @field:SerializedName("id")
+ val id: Int,
+
+ @field:SerializedName("order_id")
+ val orderId: Int,
+
+ @field:SerializedName("status")
+ val status: String
+)
+
+data class OrderItemItem(
+
+ @field:SerializedName("quantity")
+ val quantity: Int,
+
+ @field:SerializedName("price")
+ val price: String,
+
+ @field:SerializedName("subtotal")
+ val subtotal: String,
+
+ @field:SerializedName("product_id")
+ val productId: Int,
+
+ @field:SerializedName("id")
+ val id: Int,
+
+ @field:SerializedName("order_id")
+ val orderId: Int
+)
+
+data class Order(
+
+ @field:SerializedName("payment_method_id")
+ val paymentMethodId: Int,
+
+ @field:SerializedName("auto_completed_at")
+ val autoCompletedAt: String? = null,
+
+ @field:SerializedName("updated_at")
+ val updatedAt: String,
+
+ @field:SerializedName("total_amount")
+ val totalAmount: String,
+
+ @field:SerializedName("user_id")
+ val userId: Int,
+
+ @field:SerializedName("address_id")
+ val addressId: Int,
+
+ @field:SerializedName("is_negotiable")
+ val isNegotiable: Boolean,
+
+ @field:SerializedName("created_at")
+ val createdAt: String,
+
+ @field:SerializedName("voucher_id")
+ val voucherId: String? = null,
+
+ @field:SerializedName("id")
+ val id: Int,
+
+ @field:SerializedName("status")
+ val status: String
+)