diff --git a/openapi.json b/openapi.json index d046cfa6..b838c21f 100755 --- a/openapi.json +++ b/openapi.json @@ -152,7 +152,7 @@ "post": { "operationId": "CreateCheckout", "summary": "Create a checkout", - "description": "Creates a new payment checkout resource. The unique `checkout_reference` created by this request, is used for further manipulation of the checkout.\n\nFor 3DS checkouts, add the `redirect_url` parameter to your request body schema.\n\nFollow by processing a checkout to charge the provided payment instrument.", + "description": "Creates a new payment checkout resource. The unique `checkout_reference` created by this request, is used for further manipulation of the checkout.\n\nFor 3DS checkouts, add the `redirect_url` parameter to your request body schema.\nTo use the [Hosted Checkout](https://developer.sumup.com/online-payments/checkouts/hosted-checkout/) page, set the `hosted_checkout.enabled` to `true`.\n\nFollow by processing a checkout to charge the provided payment instrument.", "requestBody": { "description": "Details for creating a checkout resource.", "required": true, @@ -196,6 +196,20 @@ "merchant_code": "MH4H92C7", "redirect_url": "https://mysite.com/completed_purchase" } + }, + "HostedCheckout": { + "description": "Create a checkout with a SumUp-hosted payment page", + "x-beta": true, + "value": { + "checkout_reference": "b50pr914-6k0e-3091-a592-890010285b3d", + "amount": 12, + "currency": "EUR", + "merchant_code": "MCXXXXXX", + "description": "A sample checkout", + "hosted_checkout": { + "enabled": true + } + } } } } @@ -316,6 +330,27 @@ } ] } + }, + "HostedCheckout": { + "description": "Response body for a checkout with a SumUp-hosted payment page", + "value": { + "checkout_reference": "b50pr914-6k0e-3091-a592-890010285b3d", + "amount": 12, + "currency": "EUR", + "merchant_code": "MCXXXXXX", + "merchant_country": "DE", + "merchant_name": "Sample Shop", + "description": "A sample checkout", + "id": "64553e20-3f0e-49e4-8af3-fd0eca86ce91", + "status": "PENDING", + "date": "2000-01-01T12:49:24.899+00:00", + "purpose": "CHECKOUT", + "hosted_checkout": { + "enabled": true + }, + "hosted_checkout_url": "https://checkout.sumup.com/pay/8f9316a3-cda9-42a9-9771-54d534315676", + "transactions": [] + } } } } @@ -6610,6 +6645,21 @@ }, "title": "ELV Card Account" }, + "HostedCheckout": { + "description": "Hosted Checkout configuration. Enable it to receive a SumUp-hosted payment page URL in the checkout response.", + "type": "object", + "properties": { + "enabled": { + "description": "Whether the checkout should include a SumUp-hosted payment page.", + "type": "boolean", + "example": true + } + }, + "required": [ + "enabled" + ], + "title": "Hosted Checkout" + }, "Checkout": { "description": "Core checkout resource returned by the Checkouts API. A checkout is created before payment processing and then updated as payment attempts, redirects, and resulting transactions are attached to it.", "type": "object", @@ -6683,6 +6733,13 @@ "mandate": { "$ref": "#/components/schemas/MandateResponse" }, + "hosted_checkout_url": { + "description": "URL of the SumUp-hosted payment page that handles the payment flow. Returned when Hosted Checkout is enabled for the checkout.", + "type": "string", + "format": "uri", + "example": "https://checkout.sumup.com/pay/8f9316a3-cda9-42a9-9771-54d534315676", + "readOnly": true + }, "transactions": { "description": "Payment attempts and resulting transaction records linked to this checkout. Use the Transactions endpoints when you need the authoritative payment result and event history.", "type": "array", @@ -6778,6 +6835,9 @@ "description": "URL where the payer should be sent after a redirect-based payment or SCA flow completes. This is required for [APMs](https://developer.sumup.com/online-payments/apm/introduction) and recommended for card checkouts that may require [3DS](https://developer.sumup.com/online-payments/features/3ds). If it is omitted, the [Payment Widget](https://developer.sumup.com/online-payments/checkouts) can render the challenge in an iframe instead of using a full-page redirect.", "type": "string", "example": "https://mysite.com/completed_purchase" + }, + "hosted_checkout": { + "$ref": "#/components/schemas/HostedCheckout" } }, "required": [ @@ -10449,6 +10509,20 @@ "merchant_code": "MH4H92C7", "redirect_url": "https://mysite.com/completed_purchase" } + }, + "HostedCheckout": { + "description": "Create a checkout with a SumUp-hosted payment page", + "x-beta": true, + "value": { + "checkout_reference": "b50pr914-6k0e-3091-a592-890010285b3d", + "amount": 12, + "currency": "EUR", + "merchant_code": "MCXXXXXX", + "description": "A sample checkout", + "hosted_checkout": { + "enabled": true + } + } } } } @@ -10709,6 +10783,27 @@ } ] } + }, + "HostedCheckout": { + "description": "Response body for a checkout with a SumUp-hosted payment page", + "value": { + "checkout_reference": "b50pr914-6k0e-3091-a592-890010285b3d", + "amount": 12, + "currency": "EUR", + "merchant_code": "MCXXXXXX", + "merchant_country": "DE", + "merchant_name": "Sample Shop", + "description": "A sample checkout", + "id": "64553e20-3f0e-49e4-8af3-fd0eca86ce91", + "status": "PENDING", + "date": "2000-01-01T12:49:24.899+00:00", + "purpose": "CHECKOUT", + "hosted_checkout": { + "enabled": true + }, + "hosted_checkout_url": "https://checkout.sumup.com/pay/8f9316a3-cda9-42a9-9771-54d534315676", + "transactions": [] + } } } } diff --git a/openapi.yaml b/openapi.yaml index 0212eef8..9f0e60a8 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -100,6 +100,7 @@ paths: Creates a new payment checkout resource. The unique `checkout_reference` created by this request, is used for further manipulation of the checkout. For 3DS checkouts, add the `redirect_url` parameter to your request body schema. + To use the [Hosted Checkout](https://developer.sumup.com/online-payments/checkouts/hosted-checkout/) page, set the `hosted_checkout.enabled` to `true`. Follow by processing a checkout to charge the provided payment instrument. requestBody: @@ -139,6 +140,17 @@ paths: currency: EUR merchant_code: MH4H92C7 redirect_url: https://mysite.com/completed_purchase + HostedCheckout: + description: Create a checkout with a SumUp-hosted payment page + x-beta: true + value: + checkout_reference: b50pr914-6k0e-3091-a592-890010285b3d + amount: 12 + currency: EUR + merchant_code: MCXXXXXX + description: A sample checkout + hosted_checkout: + enabled: true responses: '201': description: Returns the created checkout resource. @@ -238,6 +250,24 @@ paths: tip_amount: 3 entry_mode: CUSTOMER_ENTRY auth_code: '012345' + HostedCheckout: + description: Response body for a checkout with a SumUp-hosted payment page + value: + checkout_reference: b50pr914-6k0e-3091-a592-890010285b3d + amount: 12 + currency: EUR + merchant_code: MCXXXXXX + merchant_country: DE + merchant_name: Sample Shop + description: A sample checkout + id: 64553e20-3f0e-49e4-8af3-fd0eca86ce91 + status: PENDING + date: 2000-01-01T12:49:24.899+00:00 + purpose: CHECKOUT + hosted_checkout: + enabled: true + hosted_checkout_url: https://checkout.sumup.com/pay/8f9316a3-cda9-42a9-9771-54d534315676 + transactions: [] '400': description: The request body is invalid. content: @@ -4498,6 +4528,17 @@ components: type: string example: DE60870962140012345674 title: ELV Card Account + HostedCheckout: + description: Hosted Checkout configuration. Enable it to receive a SumUp-hosted payment page URL in the checkout response. + type: object + properties: + enabled: + description: Whether the checkout should include a SumUp-hosted payment page. + type: boolean + example: true + required: + - enabled + title: Hosted Checkout Checkout: description: Core checkout resource returned by the Checkouts API. A checkout is created before payment processing and then updated as payment attempts, redirects, and resulting transactions are attached to it. type: object @@ -4558,6 +4599,12 @@ components: example: 831ff8d4cd5958ab5670 mandate: $ref: '#/components/schemas/MandateResponse' + hosted_checkout_url: + description: URL of the SumUp-hosted payment page that handles the payment flow. Returned when Hosted Checkout is enabled for the checkout. + type: string + format: uri + example: https://checkout.sumup.com/pay/8f9316a3-cda9-42a9-9771-54d534315676 + readOnly: true transactions: description: Payment attempts and resulting transaction records linked to this checkout. Use the Transactions endpoints when you need the authoritative payment result and event history. type: array @@ -4631,6 +4678,8 @@ components: description: URL where the payer should be sent after a redirect-based payment or SCA flow completes. This is required for [APMs](https://developer.sumup.com/online-payments/apm/introduction) and recommended for card checkouts that may require [3DS](https://developer.sumup.com/online-payments/features/3ds). If it is omitted, the [Payment Widget](https://developer.sumup.com/online-payments/checkouts) can render the challenge in an iframe instead of using a full-page redirect. type: string example: https://mysite.com/completed_purchase + hosted_checkout: + $ref: '#/components/schemas/HostedCheckout' required: - checkout_reference - amount @@ -7587,6 +7636,17 @@ components: currency: EUR merchant_code: MH4H92C7 redirect_url: https://mysite.com/completed_purchase + HostedCheckout: + description: Create a checkout with a SumUp-hosted payment page + x-beta: true + value: + checkout_reference: b50pr914-6k0e-3091-a592-890010285b3d + amount: 12 + currency: EUR + merchant_code: MCXXXXXX + description: A sample checkout + hosted_checkout: + enabled: true CheckoutProcess: required: true description: Details of the payment instrument for processing the checkout. @@ -7785,6 +7845,24 @@ components: tip_amount: 3 entry_mode: CUSTOMER_ENTRY auth_code: '012345' + HostedCheckout: + description: Response body for a checkout with a SumUp-hosted payment page + value: + checkout_reference: b50pr914-6k0e-3091-a592-890010285b3d + amount: 12 + currency: EUR + merchant_code: MCXXXXXX + merchant_country: DE + merchant_name: Sample Shop + description: A sample checkout + id: 64553e20-3f0e-49e4-8af3-fd0eca86ce91 + status: PENDING + date: 2000-01-01T12:49:24.899+00:00 + purpose: CHECKOUT + hosted_checkout: + enabled: true + hosted_checkout_url: https://checkout.sumup.com/pay/8f9316a3-cda9-42a9-9771-54d534315676 + transactions: [] CheckoutList: description: Returns a list of checkout resources. content: