diff --git a/openapi.json b/openapi.json
index a08e3f0..7226e87 100644
--- a/openapi.json
+++ b/openapi.json
@@ -329,7 +329,21 @@
"description": "A sample checkout",
"hosted_checkout": {
"enabled": true
- }
+ },
+ "redirect_url": "https://example.com/orders/123/complete"
+ }
+ },
+ "Tokenization": {
+ "summary": "Save a customer card",
+ "description": "Create a checkout to collect consent and save a card through the Payment Widget.",
+ "value": {
+ "checkout_reference": "save-card-123",
+ "amount": 1,
+ "currency": "EUR",
+ "merchant_code": "MCXXXXXX",
+ "description": "Save a card for future payments",
+ "customer_id": "831ff8d4cd5958ab5670",
+ "purpose": "SETUP_RECURRING_PAYMENT"
}
}
}
@@ -472,6 +486,22 @@
"hosted_checkout_url": "https://checkout.sumup.com/pay/8f9316a3-cda9-42a9-9771-54d534315676",
"transactions": []
}
+ },
+ "Tokenization": {
+ "summary": "Checkout for saving a card",
+ "value": {
+ "checkout_reference": "save-card-123",
+ "amount": 1,
+ "currency": "EUR",
+ "merchant_code": "MCXXXXXX",
+ "description": "Save a card for future payments",
+ "customer_id": "831ff8d4cd5958ab5670",
+ "purpose": "SETUP_RECURRING_PAYMENT",
+ "id": "7164c99b-13cb-42a1-8ba1-3c2c46a29de7",
+ "status": "PENDING",
+ "date": "2026-10-30T12:00:00+00:00",
+ "transactions": []
+ }
}
}
}
@@ -694,17 +724,65 @@
"schema": {
"$ref": "#/components/schemas/CheckoutSuccess"
},
- "example": {
- "checkout_reference": "f00a8f74-b05d-4605-bd73-2a901bae5802",
- "amount": 10.1,
- "currency": "EUR",
- "merchant_code": "MH4H92C7",
- "description": "Purchase",
- "id": "4e425463-3e1b-431d-83fa-1e51c2925e99",
- "status": "PENDING",
- "date": "2020-02-29T10:56:56+00:00",
- "transaction_code": "TEENSK4W2K",
- "transaction_id": "410fc44a-5956-44e1-b5cc-19c6f8d727a4"
+ "examples": {
+ "Checkout": {
+ "value": {
+ "checkout_reference": "f00a8f74-b05d-4605-bd73-2a901bae5802",
+ "amount": 10.1,
+ "currency": "EUR",
+ "merchant_code": "MH4H92C7",
+ "description": "Purchase",
+ "id": "4e425463-3e1b-431d-83fa-1e51c2925e99",
+ "status": "PENDING",
+ "date": "2020-02-29T10:56:56+00:00",
+ "transaction_code": "TEENSK4W2K",
+ "transaction_id": "410fc44a-5956-44e1-b5cc-19c6f8d727a4"
+ }
+ },
+ "PaidCheckout": {
+ "summary": "Paid checkout with a transaction to refund",
+ "value": {
+ "checkout_reference": "f00a8f74-b05d-4605-bd73-2a901bae5802",
+ "amount": 42.42,
+ "currency": "EUR",
+ "merchant_code": "MH4H92C7",
+ "description": "Purchase",
+ "id": "4e425463-3e1b-431d-83fa-1e51c2925e99",
+ "status": "PAID",
+ "date": "2020-02-29T10:56:56+00:00",
+ "transaction_code": "TEENSK4W2K",
+ "transaction_id": "410fc44a-5956-44e1-b5cc-19c6f8d727a4",
+ "transactions": [
+ {
+ "id": "410fc44a-5956-44e1-b5cc-19c6f8d727a4",
+ "transaction_code": "TEENSK4W2K",
+ "amount": 42.42,
+ "currency": "EUR",
+ "status": "SUCCESSFUL",
+ "timestamp": "2026-10-30T12:00:00+00:00"
+ }
+ ]
+ }
+ },
+ "TokenizedCheckout": {
+ "summary": "Checkout with a saved card",
+ "value": {
+ "checkout_reference": "save-card-123",
+ "amount": 1,
+ "currency": "EUR",
+ "merchant_code": "MCXXXXXX",
+ "description": "Save a card for future payments",
+ "customer_id": "831ff8d4cd5958ab5670",
+ "purpose": "SETUP_RECURRING_PAYMENT",
+ "id": "7164c99b-13cb-42a1-8ba1-3c2c46a29de7",
+ "status": "PAID",
+ "date": "2026-10-30T12:00:00+00:00",
+ "transactions": [],
+ "payment_instrument": {
+ "token": "6878cb7f-6515-47bf-bdd9-1408d270fdce"
+ }
+ }
+ }
}
}
}
@@ -923,9 +1001,8 @@
"description": "Process a checkout with a token",
"value": {
"payment_type": "card",
- "installments": 1,
- "token": "ba85dfee-c3cf-48a6-84f5-d7d761fbba50",
- "customer_id": "MEDKHDTI"
+ "token": "6878cb7f-6515-47bf-bdd9-1408d270fdce",
+ "customer_id": "831ff8d4cd5958ab5670"
}
},
"ProcessBoleto": {
@@ -2223,9 +2300,6 @@
"description": "Optional amount for partial refunds.",
"content": {
"application/json": {
- "example": {
- "amount": 5
- },
"schema": {
"type": "object",
"description": "Optional amount for partial refunds of transactions.",
@@ -2237,6 +2311,18 @@
"example": 5
}
}
+ },
+ "examples": {
+ "FullRefund": {
+ "summary": "Full refund",
+ "value": {}
+ },
+ "PartialRefund": {
+ "summary": "Partial refund",
+ "value": {
+ "amount": 24.42
+ }
+ }
}
}
}
@@ -5587,6 +5673,14 @@
"requestBody": {
"content": {
"application/json": {
+ "example": {
+ "return_url": "https://example.com/sumup/webhook",
+ "total_amount": {
+ "currency": "EUR",
+ "minor_unit": 2,
+ "value": 1500
+ }
+ },
"schema": {
"$ref": "#/components/schemas/CreateReaderCheckoutRequest"
}
@@ -5960,7 +6054,7 @@
}
}
},
- "description": "The reader model is not supported, or the reader could not return its settings."
+ "description": "The reader model is not supported, the firmware version is unsupported, or the reader could not return its settings."
}
},
"security": [
@@ -6123,7 +6217,7 @@
}
}
},
- "description": "The settings are invalid, the reader is offline, the reader model is not supported, or the reader could not apply the update."
+ "description": "The settings are invalid, the reader is offline, the reader model is not supported, the firmware version is unsupported, or the reader could not apply the update."
}
},
"security": [
@@ -9988,21 +10082,14 @@
"given_name": {
"type": "string",
"description": "The first name(s) of the individual.",
- "example": "James Herrald",
+ "example": "Sofia",
"minLength": 1,
"maxLength": 60
},
"family_name": {
"type": "string",
"description": "The last name(s) of the individual.",
- "example": "Bond",
- "minLength": 1,
- "maxLength": 60
- },
- "middle_name": {
- "type": "string",
- "description": "Middle name(s) of the End-User. Note that in some cultures, people can have multiple middle names; all can be present, with the names being separated by space characters. Also note that in some cultures, middle names are not used.\n",
- "example": "Maria Sophie",
+ "example": "Rossi",
"minLength": 1,
"maxLength": 60
},
@@ -11337,7 +11424,21 @@
"description": "A sample checkout",
"hosted_checkout": {
"enabled": true
- }
+ },
+ "redirect_url": "https://example.com/orders/123/complete"
+ }
+ },
+ "Tokenization": {
+ "summary": "Save a customer card",
+ "description": "Create a checkout to collect consent and save a card through the Payment Widget.",
+ "value": {
+ "checkout_reference": "save-card-123",
+ "amount": 1,
+ "currency": "EUR",
+ "merchant_code": "MCXXXXXX",
+ "description": "Save a card for future payments",
+ "customer_id": "831ff8d4cd5958ab5670",
+ "purpose": "SETUP_RECURRING_PAYMENT"
}
}
}
@@ -11394,9 +11495,6 @@
"description": "Optional amount for partial refunds.",
"content": {
"application/json": {
- "example": {
- "amount": 5
- },
"schema": {
"type": "object",
"description": "Optional amount for partial refunds of transactions.",
@@ -11408,6 +11506,18 @@
"example": 5
}
}
+ },
+ "examples": {
+ "FullRefund": {
+ "summary": "Full refund",
+ "value": {}
+ },
+ "PartialRefund": {
+ "summary": "Partial refund",
+ "value": {
+ "amount": 24.42
+ }
+ }
}
}
}
@@ -11549,6 +11659,22 @@
"hosted_checkout_url": "https://checkout.sumup.com/pay/8f9316a3-cda9-42a9-9771-54d534315676",
"transactions": []
}
+ },
+ "Tokenization": {
+ "summary": "Checkout for saving a card",
+ "value": {
+ "checkout_reference": "save-card-123",
+ "amount": 1,
+ "currency": "EUR",
+ "merchant_code": "MCXXXXXX",
+ "description": "Save a card for future payments",
+ "customer_id": "831ff8d4cd5958ab5670",
+ "purpose": "SETUP_RECURRING_PAYMENT",
+ "id": "7164c99b-13cb-42a1-8ba1-3c2c46a29de7",
+ "status": "PENDING",
+ "date": "2026-10-30T12:00:00+00:00",
+ "transactions": []
+ }
}
}
}
@@ -11610,17 +11736,65 @@
"schema": {
"$ref": "#/components/schemas/CheckoutSuccess"
},
- "example": {
- "checkout_reference": "f00a8f74-b05d-4605-bd73-2a901bae5802",
- "amount": 10.1,
- "currency": "EUR",
- "merchant_code": "MH4H92C7",
- "description": "Purchase",
- "id": "4e425463-3e1b-431d-83fa-1e51c2925e99",
- "status": "PENDING",
- "date": "2020-02-29T10:56:56+00:00",
- "transaction_code": "TEENSK4W2K",
- "transaction_id": "410fc44a-5956-44e1-b5cc-19c6f8d727a4"
+ "examples": {
+ "Checkout": {
+ "value": {
+ "checkout_reference": "f00a8f74-b05d-4605-bd73-2a901bae5802",
+ "amount": 10.1,
+ "currency": "EUR",
+ "merchant_code": "MH4H92C7",
+ "description": "Purchase",
+ "id": "4e425463-3e1b-431d-83fa-1e51c2925e99",
+ "status": "PENDING",
+ "date": "2020-02-29T10:56:56+00:00",
+ "transaction_code": "TEENSK4W2K",
+ "transaction_id": "410fc44a-5956-44e1-b5cc-19c6f8d727a4"
+ }
+ },
+ "PaidCheckout": {
+ "summary": "Paid checkout with a transaction to refund",
+ "value": {
+ "checkout_reference": "f00a8f74-b05d-4605-bd73-2a901bae5802",
+ "amount": 42.42,
+ "currency": "EUR",
+ "merchant_code": "MH4H92C7",
+ "description": "Purchase",
+ "id": "4e425463-3e1b-431d-83fa-1e51c2925e99",
+ "status": "PAID",
+ "date": "2020-02-29T10:56:56+00:00",
+ "transaction_code": "TEENSK4W2K",
+ "transaction_id": "410fc44a-5956-44e1-b5cc-19c6f8d727a4",
+ "transactions": [
+ {
+ "id": "410fc44a-5956-44e1-b5cc-19c6f8d727a4",
+ "transaction_code": "TEENSK4W2K",
+ "amount": 42.42,
+ "currency": "EUR",
+ "status": "SUCCESSFUL",
+ "timestamp": "2026-10-30T12:00:00+00:00"
+ }
+ ]
+ }
+ },
+ "TokenizedCheckout": {
+ "summary": "Checkout with a saved card",
+ "value": {
+ "checkout_reference": "save-card-123",
+ "amount": 1,
+ "currency": "EUR",
+ "merchant_code": "MCXXXXXX",
+ "description": "Save a card for future payments",
+ "customer_id": "831ff8d4cd5958ab5670",
+ "purpose": "SETUP_RECURRING_PAYMENT",
+ "id": "7164c99b-13cb-42a1-8ba1-3c2c46a29de7",
+ "status": "PAID",
+ "date": "2026-10-30T12:00:00+00:00",
+ "transactions": [],
+ "payment_instrument": {
+ "token": "6878cb7f-6515-47bf-bdd9-1408d270fdce"
+ }
+ }
+ }
}
}
}
diff --git a/src/SumUp/Models/BasePerson.g.cs b/src/SumUp/Models/BasePerson.g.cs
index 779081d..b733e05 100644
--- a/src/SumUp/Models/BasePerson.g.cs
+++ b/src/SumUp/Models/BasePerson.g.cs
@@ -37,9 +37,6 @@ public sealed partial class BasePerson
/// A list of country-specific personal identifiers.
[JsonPropertyName("identifiers")]
public IEnumerable? Identifiers { get; set; }
- /// Middle name(s) of the End-User. Note that in some cultures, people can have multiple middle names; all can be present, with the names being separated by space characters. Also note that in some cultures, middle names are not used.
- [JsonPropertyName("middle_name")]
- public string? MiddleName { get; set; }
/// The Person's nationality. May be an ISO3166-1 alpha-2 country code, but legacy data may not conform to this standard.
[JsonPropertyName("nationality")]
public string? Nationality { get; set; }
diff --git a/src/SumUp/Models/Person.g.cs b/src/SumUp/Models/Person.g.cs
index 44106b7..aa4470c 100644
--- a/src/SumUp/Models/Person.g.cs
+++ b/src/SumUp/Models/Person.g.cs
@@ -36,9 +36,6 @@ public sealed partial class Person
/// A list of country-specific personal identifiers.
[JsonPropertyName("identifiers")]
public IEnumerable? Identifiers { get; set; }
- /// Middle name(s) of the End-User. Note that in some cultures, people can have multiple middle names; all can be present, with the names being separated by space characters. Also note that in some cultures, middle names are not used.
- [JsonPropertyName("middle_name")]
- public string? MiddleName { get; set; }
/// The Person's nationality. May be an ISO3166-1 alpha-2 country code, but legacy data may not conform to this standard.
[JsonPropertyName("nationality")]
public string? Nationality { get; set; }