Events
Event payload types for the Marketfront SDK.
Event Summary
| Event | Payload Type | Description |
|---|---|---|
onReady | None | Marketfront initialized |
onError | MarketfrontError | Error occurred |
onStoreSelected | StoreEvent | User selected a store |
onItemAdded | ItemAddedEvent | Item added to cart |
onCheckoutStarted | CheckoutStartedEvent | Checkout began |
onOrderComplete | Order | Order placed successfully |
onOrderFailed | OrderFailedEvent | Order placement failed |
Error Types
MarketfrontError
- Web
- iOS
- Android
interface MarketfrontError {
code: string;
message: string;
details?: unknown;
}
struct MarketfrontError: Error {
let code: String
let message: String
let details: Any?
}
data class MarketfrontError(
val code: String,
val message: String,
val details: Any? = null
) : Exception(message)
Store Events
StoreEvent
- Web
- iOS
- Android
interface StoreEvent {
storeId: string;
name: string;
distance?: number;
estimatedDeliveryTime?: number;
}
struct StoreEvent {
let storeId: String
let name: String
let distance: Double?
let estimatedDeliveryTime: Int?
}
data class StoreEvent(
val storeId: String,
val name: String,
val distance: Double?,
val estimatedDeliveryTime: Int?
)
Cart Events
ItemAddedEvent
- Web
- iOS
- Android
interface ItemAddedEvent {
lineItemId: string;
itemId: string;
name: string;
quantity: number;
price: number;
modifiers?: Array<{
name: string;
price: number;
}>;
}
struct ItemAddedEvent {
let lineItemId: String
let itemId: String
let name: String
let quantity: Int
let price: Decimal
let modifiers: [Modifier]?
}
data class ItemAddedEvent(
val lineItemId: String,
val itemId: String,
val name: String,
val quantity: Int,
val price: BigDecimal,
val modifiers: List<Modifier>?
)
Checkout Events
CheckoutStartedEvent
- Web
- iOS
- Android
interface CheckoutStartedEvent {
storeId: string;
itemCount: number;
subtotal: number;
}
struct CheckoutStartedEvent {
let storeId: String
let itemCount: Int
let subtotal: Decimal
}
data class CheckoutStartedEvent(
val storeId: String,
val itemCount: Int,
val subtotal: BigDecimal
)
Order Events
OrderFailedEvent
- Web
- iOS
- Android
interface OrderFailedEvent {
reason: string;
message: string;
}
struct OrderFailedEvent {
let reason: String
let message: String
}
data class OrderFailedEvent(
val reason: String,
val message: String
)