Skip to main content

tauri_plugin_sumup/
models.rs

1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Deserialize, Serialize)]
4#[serde(rename_all = "camelCase")]
5pub struct PingRequest {
6  pub value: Option<String>,
7}
8
9#[derive(Debug, Clone, Default, Deserialize, Serialize)]
10#[serde(rename_all = "camelCase")]
11pub struct PingResponse {
12  pub value: Option<String>,
13}
14
15// SumUp SDK Models
16#[derive(Debug, Deserialize, Serialize)]
17#[serde(rename_all = "camelCase")]
18pub struct InitSdkRequest {
19  pub affiliate_key: String,
20}
21
22#[derive(Debug, Deserialize, Serialize)]
23#[serde(rename_all = "camelCase")]
24pub struct LoginRequest {
25  pub token: String,
26}
27
28#[derive(Debug, Deserialize, Serialize)]
29#[serde(rename_all = "camelCase")]
30pub struct CheckoutRequest {
31  pub total: f64,
32  pub currency: String,
33  pub title: Option<String>,
34  pub receipt_email: Option<String>,
35  pub receipt_sms: Option<String>,
36  pub additional_info: Option<std::collections::HashMap<String, String>>,
37  pub foreign_transaction_id: Option<String>,
38  pub skip_success_screen: Option<bool>,
39  pub skip_failed_screen: Option<bool>,
40}
41
42#[derive(Debug, Clone, Deserialize, Serialize)]
43#[serde(rename_all = "camelCase")]
44pub struct CheckoutResult {
45  pub transaction_code: Option<String>,
46  pub card_type: Option<String>,
47  pub merchant_code: Option<String>,
48  pub amount: Option<f64>,
49  pub currency: Option<String>,
50  pub status: String,
51  pub payment_type: Option<String>,
52  pub entry_mode: Option<String>,
53  pub installments: Option<i32>,
54}
55
56#[derive(Debug, Clone, Deserialize, Serialize)]
57#[serde(rename_all = "camelCase")]
58pub struct MerchantInfo {
59  pub merchant_code: String,
60  pub currency_code: String,
61}
62
63#[derive(Debug, Clone, Default, Deserialize, Serialize)]
64#[serde(rename_all = "camelCase")]
65pub struct EmptyResponse {}