diff --git a/openapi.json b/openapi.json index fb9740d..e2bd9d5 100755 --- a/openapi.json +++ b/openapi.json @@ -6474,7 +6474,9 @@ "boleto", "ideal", "blik", - "bancontact" + "bancontact", + "google_pay", + "apple_pay" ] }, "installments": { @@ -6489,6 +6491,50 @@ "card": { "$ref": "#/components/schemas/Card" }, + "google_pay": { + "description": "Raw `PaymentData` object received from Google Pay. Send the Google Pay response payload as-is.", + "type": "object", + "example": { + "apiVersionMinor": 0, + "apiVersion": 2, + "paymentMethodData": { + "description": "Visa •••• 1111", + "tokenizationData": { + "type": "PAYMENT_GATEWAY", + "token": "token-data" + }, + "type": "CARD", + "info": { + "cardNetwork": "VISA", + "cardDetails": "1111" + } + } + } + }, + "apple_pay": { + "description": "Raw payment token object received from Apple Pay. Send the Apple Pay response payload as-is.", + "type": "object", + "example": { + "token": { + "paymentData": { + "data": "si2xuT2ArQo689SfE-long-token", + "signature": "MIAGCSqGSIb3DQEHA-long-signature", + "header": { + "publicKeyHash": "PWfjDi3TSwgZ20TY/A7f3V6J/1rhHyRDCspbeljM0io=", + "ephemeralPublicKey": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEaBtz7UN2MNV0qInJVEEhXy10PU0KfO6KxFjXm93oKWL6lCsxZZGDl/EKioUHVSlKgpsKGin0xvgldfxeJVgy0g==", + "transactionId": "62e0568bc9258e9d0e059d745650fc8211d05ef7a7a1589a6411bf9b12cdfd04" + }, + "version": "EC_v1" + }, + "paymentMethod": { + "displayName": "MasterCard 8837", + "network": "MasterCard", + "type": "debit" + }, + "transactionIdentifier": "62E0568BC9258E9D0E059D745650FC8211D05EF7A7A1589A6411BF9B12CDFD04" + } + } + }, "token": { "description": "__Required when using a tokenized card to process a checkout.__ Unique token identifying the saved payment card for a customer.", "type": "string" @@ -8848,7 +8894,7 @@ "description": "The company's legal name.", "type": "string", "example": "Gin & Doughnuts Bar GmbH", - "maxLength": 512, + "maxLength": 150, "minLength": 1 }, "merchant_category_code": { @@ -8908,7 +8954,7 @@ "description": "The customer-facing business name.", "type": "string", "example": "Example Coffee", - "maxLength": 512, + "maxLength": 150, "minLength": 1 }, "dynamic_descriptor": { @@ -8924,13 +8970,13 @@ "type": "string", "format": "uri", "example": "https://example.com", - "maxLength": 512 + "maxLength": 255 }, "email": { "description": "A publicly available email address.", "type": "string", "example": "contact@example.com", - "maxLength": 256 + "maxLength": 255 }, "phone_number": { "$ref": "#/components/schemas/PhoneNumber" @@ -8954,7 +9000,7 @@ "description": "A publicly available phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.\n", "type": "string", "example": "+420123456789", - "maxLength": 64 + "maxLength": 16 }, "Branding": { "description": "Settings used to apply the Merchant's branding to email receipts, invoices, checkouts, and other products.", diff --git a/src/SumUp/Models/ProcessCheckout.g.cs b/src/SumUp/Models/ProcessCheckout.g.cs index eabd66b..6ba0ea8 100644 --- a/src/SumUp/Models/ProcessCheckout.g.cs +++ b/src/SumUp/Models/ProcessCheckout.g.cs @@ -4,15 +4,22 @@ namespace SumUp; using System.Text.Json.Serialization; +using System.Text.Json; /// Details of the payment instrument for processing the checkout. public sealed partial class ProcessCheckout { + /// Raw payment token object received from Apple Pay. Send the Apple Pay response payload as-is. + [JsonPropertyName("apple_pay")] + public JsonDocument? ApplePay { get; set; } /// __Required when payment type is `card`.__ Details of the payment card. [JsonPropertyName("card")] public Card? Card { get; set; } /// __Required when `token` is provided.__ Unique ID of the customer. [JsonPropertyName("customer_id")] public string? CustomerId { get; set; } + /// Raw `PaymentData` object received from Google Pay. Send the Google Pay response payload as-is. + [JsonPropertyName("google_pay")] + public JsonDocument? GooglePay { get; set; } /// Number of installments for deferred payments. Available only to merchant users in Brazil. [JsonPropertyName("installments")] public int? Installments { get; set; } diff --git a/src/SumUp/Models/ProcessCheckoutPaymentType.g.cs b/src/SumUp/Models/ProcessCheckoutPaymentType.g.cs index 556de79..1acd02c 100644 --- a/src/SumUp/Models/ProcessCheckoutPaymentType.g.cs +++ b/src/SumUp/Models/ProcessCheckoutPaymentType.g.cs @@ -19,4 +19,8 @@ public enum ProcessCheckoutPaymentType Blik, [EnumMember(Value = "bancontact")] Bancontact, + [EnumMember(Value = "google_pay")] + GooglePay, + [EnumMember(Value = "apple_pay")] + ApplePay, } \ No newline at end of file