{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-sidebars/payment_api_2_0_sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":["img","tabs","tab","admonition"]},"type":"markdown"},"seo":{"title":"CCD2 Integration Details | Payment API 2.0","description":"The specifications of Ratepay's APIs for easy payment transactions.","siteUrl":"https://docs.ratepay.com","keywords":"Ratepay developer portal, Ratepay api portal, Ratepay api reference docs","llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"integration-details","__idx":0},"children":["Integration Details"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"badges-container"},"children":[{"$$mdtype":"Tag","name":"div","attributes":{"className":"reading-time-badge"},"children":["⏱ 10 min"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"author-badge"},"children":["👤 Merchant Onboarding Team (Marcel K.)"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This page explains what to change in a direct Payment API 2.0 integration for CCD2. Only make these changes for in-scope transactions: consumer (B2C) purchases with an in-scope payment method. The rest of your integration stays the same."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The API sequence are the same for online shop, MOTO and point of sale. Only the buyers or staff interface and SECCI delivery differ. See sales channel notes below for details."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Before you start"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Confirm ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"/docs/legal/a_legal_requirements_for_the_integration/ccd2/do_i_need_to_take_action"},"children":["which of your payment method and transactions are in scope for CCD2"]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"1-present-payment-methods","__idx":1},"children":["1. Present payment methods"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In your checkout or staff interface:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Do not pre-select an in-scope Ratepay payment method, or give it disproportionate emphasis than other payment methods."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Show all available payment methods from the start, not only after a Ratepay decline."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Let the buyer choose the payment method; staff must not choose a credit method without the buyer's instruction."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The broader advertising requirements, including relevant costs and risks outside checkout, are explained on ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"/docs/legal/a_legal_requirements_for_the_integration/ccd2/responsibilities/direct_api"},"children":["Direct API: Your CCD2 responsibilities"]},". Have your legal team approve the final buyer-facing wording."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Before you continue, check that:"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["All available payment methods are visible from the start"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["No in-scope method is pre-selected or emphasised"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The buyer makes the choice."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"2-inform-the-buyer-about-the-secci","__idx":2},"children":["2. Inform the buyer about the SECCI"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Before the payment is submitted, the buyer must be informed they will receive the Standard European Consumer Credit Information (SECCI) and the merchant must trigger the delivery of SECCI."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"online-shop","__idx":3},"children":["Online shop"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Choose one variant:"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":""},"children":[]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Automatic email delivery (recommended)"},"children":["Automatic email delivery (recommended)"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Explicit SECCI interaction"},"children":["Explicit SECCI interaction"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Used when"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The buyer's email address is already available."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["When the buyer should choose how to receive SECCI, including when their email address is not yet available."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Notice shown"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Before payment-method selection."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["After an in-scope payment method is selected."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["SECCI delivery"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["• Sent by email automatically when the buyer selects an in-scope method",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},"• PDF delivery offered"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The buyer chooses email or PDF delivery."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Additional buyer interaction"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["None"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["One extra click"]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"automatic-email-delivery-recommended","__idx":4},"children":["Automatic email delivery (recommended)"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use this option when the buyer's email address is already captured and you want to reduce friction during checkout."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Screen"},"children":["Screen"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Stage"},"children":["Stage"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Implementation Notes"},"children":["Implementation Notes"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"Image","attributes":{"src":"/assets/secci-notice-before-checkout.cdc74dee270693326d7979e56be8e25c1616f545048f71264c69d35fb68b3735.9a51d86e.png","alt":"Example checkout with a SECCI notice before payment-method selection.","withLightbox":true},"children":[]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Notice before payment-method selection"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Show the SECCI notice above the payment methods. Name the in-scope methods and the buyer's email address, and keep the usual way to change the email."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"Image","attributes":{"src":"/assets/secci-email-success-checkout.2f08aa208a627c45b79b5fce58a14de7463adaaff2a35a6d6170e225835c888c.9a51d86e.png","alt":"Example confirmation after automatic SECCI email delivery.","withLightbox":true},"children":[]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Confirmation after successful email request"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["• When the buyer selects an in-scope method, your backend sends an SECCI generation request with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email"]}," as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["delivery.method"]}," (step 3).",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},"• After a successful response, show the confirmation and offer a PDF download option as well. Otherwise, give the buyer the option to retry or download SECCI as a PDF."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Suggested buyer-facing copy:"]}]},{"$$mdtype":"Tag","name":"Tabs","attributes":{"size":"medium"},"children":[{"$$mdtype":"Tag","name":"div","attributes":{"label":"English","disable":false},"children":[{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Header:"]}," Standard EU Consumer Credit Info"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Text:"]}," Selecting [affected Ratepay payment methods] will automatically send this information to [buyer email]."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Expandable section:"]}," Learn more"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Learn more text:"]},{"$$mdtype":"Tag","name":"blockquote","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["EU consumer credit rules have changed and now require additional information for [affected Ratepay payment methods]. This information helps you understand the key credit terms before completing your purchase. Our payment partner Ratepay will use your email address solely to send it, using a third-party email delivery provider."]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["After successful email delivery:"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Status:"]}," Sent by email"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Text:"]}," We've sent the required Standard European Consumer Credit Information to [buyer email]."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Button:"]}," Download PDF version"]}]}]},{"$$mdtype":"Tag","name":"div","attributes":{"label":"Deutsch","disable":false},"children":[{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Header:"]}," EU-Standardinformationen für Verbraucherkredite"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Text:"]}," Wenn Sie [betroffene Ratepay-Zahlungsarten] auswählen, senden wir diese Informationen automatisch an [E-Mail-Adresse des Käufers]."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Aufklappbarer Bereich:"]}," Mehr erfahren"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Text unter „Mehr erfahren“:"]},{"$$mdtype":"Tag","name":"blockquote","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Die EU-Verbraucherkreditregeln haben sich geändert und verlangen nun zusätzliche Informationen für [betroffene Ratepay-Zahlungsarten]. Diese Informationen helfen Ihnen, die wichtigsten Kreditbedingungen zu verstehen, bevor Sie Ihren Kauf abschließen. Unser Zahlungspartner Ratepay verwendet Ihre E-Mail-Adresse ausschließlich, um Ihnen diese Informationen über einen externen E-Mail-Versanddienstleister zu senden."]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Nach erfolgreichem E-Mail-Versand:"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Status:"]}," Per E-Mail gesendet"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Text:"]}," Wir haben die erforderlichen EU-Standardinformationen für Verbraucherkredite an [E-Mail-Adresse des Käufers] gesendet."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Button:"]}," PDF-Version herunterladen"]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"em","attributes":{},"children":["Note: Show the confirmation only after the email SECCI request succeeds."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"explicit-secci-interaction","__idx":5},"children":["Explicit SECCI Interaction"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use this when the buyer should choose the delivery method."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Screen"},"children":["Screen"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Stage"},"children":["Stage"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Implementation notes"},"children":["Implementation notes"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"Image","attributes":{"src":"/assets/secci-notice-after-checkout.56ca7f767b6f6cd6ec185b9017e510fe927e91b0fd14b619607046b3731fdce2.9a51d86e.png","alt":"Example checkout with email and PDF delivery choices after payment-method selection.","withLightbox":true},"children":[]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Notice after payment-method selection"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["• After the buyer selects an in-scope method, show the notice with two actions: ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Download PDF"]}," and ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Get by Email"]},".",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},"• Ask for an email address only if the buyer chooses email and you don't have one."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"Image","attributes":{"src":"/assets/secci-pdf-success-checkout.744263a3d1d130d5e1f283040e470d31037b4aa6babccff814cde1f08e17d9d7.9a51d86e.png","alt":"Example checkout after the SECCI PDF version has been provided.","withLightbox":true},"children":[]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Confirmation shown after the PDF is downloaded or the email request completes successfully"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Each action triggers the matching Secci generation request from your backend (step 3)."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Suggested buyer-facing copy:"]}]},{"$$mdtype":"Tag","name":"Tabs","attributes":{"size":"medium"},"children":[{"$$mdtype":"Tag","name":"div","attributes":{"label":"English","disable":false},"children":[{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Header:"]}," Standard EU Consumer Credit Info"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Text:"]}," Before placing your order, choose how you'd like to receive this information."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Expandable section:"]}," Learn more"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Learn more text:"]},{"$$mdtype":"Tag","name":"blockquote","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["EU consumer credit rules have changed and now require additional information for this payment method. This information helps you understand the key credit terms before completing your purchase. If you choose Get by email, our payment partner Ratepay will use your email address only to send this information, using a third-party email delivery provider."]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Buttons:"]}," Download · Get by Email"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["After the PDF download:"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Status:"]}," Downloaded"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Text:"]}," Your Standard European Consumer Credit Information was downloaded to your device."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Action:"]}," Back to selection"]}]}]},{"$$mdtype":"Tag","name":"div","attributes":{"label":"Deutsch","disable":false},"children":[{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Header:"]}," EU-Standardinformationen für Verbraucherkredite"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Text:"]}," Wählen Sie vor Abschluss Ihrer Bestellung, wie Sie diese Informationen erhalten möchten."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Aufklappbarer Bereich:"]}," Mehr erfahren"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Text unter „Mehr erfahren“:"]},{"$$mdtype":"Tag","name":"blockquote","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Die EU-Verbraucherkreditregeln haben sich geändert und verlangen nun zusätzliche Informationen für diese Zahlungsart. Diese Informationen helfen Ihnen, die wichtigsten Kreditbedingungen zu verstehen, bevor Sie Ihren Kauf abschließen. Wenn Sie „Per E-Mail erhalten“ wählen, verwendet unser Zahlungspartner Ratepay Ihre E-Mail-Adresse ausschließlich, um Ihnen diese Informationen über einen externen E-Mail-Versanddienstleister zu senden."]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Buttons:"]}," PDF herunterladen · Per E-Mail erhalten"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Nach dem PDF-Download:"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Status:"]}," Heruntergeladen"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Text:"]}," Ihre EU-Standardinformationen für Verbraucherkredite wurden auf Ihr Gerät heruntergeladen."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Aktion:"]}," Zurück zur Auswahl"]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"moto-and-point-of-sale","__idx":6},"children":["MOTO and point of sale"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Sales Channel"},"children":["Sales Channel"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Before submitting the order, staff…"},"children":["Before submitting the order, staff…"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["MOTO"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Option 1 - If buyer has an e-mail address"]},{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},"1. Explains the SECCI requirement, records the buyer's email if needed",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},"2. Triggers email delivery and check that it succeeded.",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Option 2 - If buyer has NO e-mail address"]},{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},"1. Explains the SECCI requirement, generate SECCI as a PDF, and summarize the content of the SECCI:",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]}," • Identity of the provider",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]}," • the total loan amount and the terms and conditions for drawing down the loan;",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]}," • the term of the loan agreement;",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]}," • the nominal interest rate, the annual percentage rate (APR), and the total amount to be paid;",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]}," • the amount, number, and due dates of the payments;",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]}," • whether or not a right of withdrawal exists.",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},"2. The SECCI document itself must then be made available to the buyer immediately, for example through the following channels:",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]}," • Customer portal / app: Made available in the customer’s personal account, provided the document can be permanently stored and downloaded there. Use the PDF download action.",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]}," • By postal: Sent by postal service / printed document within your delivery of the goods without delay. Use the PDF print action for this.",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]}," ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["Note: Keep your existing approved process for obtaining and documenting the buyer's consent to share their data with Ratepay."]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Point of sale"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1. Explains the SECCI",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},"2. Prints the PDF and hands it to the buyer",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},"3. Confirms the handover in the staff interface (for example, with a checkbox).",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},"4. If email is offered, show it as a separate staff action and its result"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Before you continue, check that:"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"em","attributes":{},"children":["Online shop - Automatic email delivery:"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The SECCI notice appears above the payment method."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"em","attributes":{},"children":["Online shop - Explicit SECCI delivery:"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The SECCI notice appears after an in-scope method is selected."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"em","attributes":{},"children":["MOTO and point of sale:"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Staff sees the delivery actions before they can submit the order."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"3-generate-and-provide-secci","__idx":7},"children":["3. Generate and provide SECCI"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Add the new ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"/apis/compliance/openapi/compliance_api/other/generatesecci"},"children":["SECCI generation"]}," endpoint ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /v2/compliance/secci"]}," to your ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["backend"]},". Ratepay generates the document from the supplied data."]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Backend only:"]}," the request contains your OAuth token, so send it from your backend, never from the browser."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Matching data:"]}," the basket, payment method and amount must match the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Authorize transaction"]}," request you send later."]}]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Environment"},"children":["Environment"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"OAuth audience"},"children":["OAuth audience"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"SECCI endpoint"},"children":["SECCI endpoint"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Integration"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["https://api-integration.ratepay.com/transaction/management"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["https://api-integration.ratepay.com/transaction/management/v2/compliance/secci"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Production"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["https://api.ratepay.com/transaction/management"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["https://api.ratepay.com/transaction/management/v2/compliance/secci"]}]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request an ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.ratepay.com/apis/authentication/openapi/authentication_api/other/createoauthtoken"},"children":["OAuth access token"]}," with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["client_credentials"]}," and the environment's audience. Send ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Authorization: Bearer YOUR_ACCESS_TOKEN"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Content-Type: application/json"]},"."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Parameters in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["delivery"]}]}]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Parameters"},"children":["Parameters"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Required"},"children":["Required"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Notes"},"children":["Notes"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["method"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["pdf"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["For ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["method"]}," = ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The buyer's email address to which Ratepay sends the SECCI document."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["action"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["For ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["method"]}," = ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["pdf"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["download"]}," (online shop) or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["print"]}," (point of sale)"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["country_code"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The buyer's billing-address country, e.g. ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["DE"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["language"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The language of the SECCI. Ensure it matches the language of your post-purchase communication with the buyer."]}]}]}]}]},{"$$mdtype":"Tag","name":"Tabs","attributes":{"size":"medium"},"children":[{"$$mdtype":"Tag","name":"div","attributes":{"label":"Email","disable":false},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use for online shop, MOTO, or POS email delivery."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"delivery\": {\n    \"method\": \"email\",\n    \"email\": \"buyer@example.com\",\n    \"country_code\": \"DE\",\n    \"language\": \"en\"\n  },\n  \"currency\": \"EUR\",\n  \"payment_method\": {\n    \"payment_option\": \"OPEN_INVOICE\",\n    \"transfer_type\": \"BANK_TRANSFER\"\n  },\n  \"shop_baskets\": [\n    {\n      \"partner_shop_id\": \"INTEGRATION_TE_DACH\",\n      \"shop_transaction_id\": \"shop-transaction-id-1234\",\n      \"gross_amount\": 200,\n      \"items\": [\n        {\n          \"article_number\": \"urban-pack\",\n          \"category\": \"bags\",\n          \"description\": \"Lightweight backpack with a padded laptop compartment\",\n          \"gross_total_price\": 180,\n          \"gross_unit_price\": 180,\n          \"name\": \"Urban Pack\",\n          \"net_total_price\": 151.26,\n          \"net_unit_price\": 151.26,\n          \"quantity\": 1,\n          \"tax_rate\": 19,\n          \"unit\": \"piece\"\n        }\n      ],\n      \"special_items\": [\n        {\n          \"article_number\": \"SHIPPING_001\",\n          \"category\": \"shipping\",\n          \"description\": \"Standard shipping via DHL\",\n          \"gross_total_price\": 20,\n          \"gross_unit_price\": 20,\n          \"name\": \"Shipping costs\",\n          \"net_total_price\": 16.81,\n          \"net_unit_price\": 16.81,\n          \"quantity\": 1,\n          \"tax_rate\": 19,\n          \"unit\": \"shipment\"\n        }\n      ],\n      \"vats\": [\n        {\n          \"net_amount\": 168.07,\n          \"tax_amount\": 31.93,\n          \"tax_rate\": 19\n        }\n      ]\n    }\n  ]\n}\n","lang":"json"},"children":[]}]},{"$$mdtype":"Tag","name":"div","attributes":{"label":"PDF download","disable":false},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use this request when the buyer downloads the document in an online shop."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"delivery\": {\n    \"method\": \"pdf\",\n    \"action\": \"download\",\n    \"country_code\": \"DE\",\n    \"language\": \"en\"\n  },\n  \"currency\": \"EUR\",\n  \"payment_method\": {\n    \"payment_option\": \"OPEN_INVOICE\",\n    \"transfer_type\": \"BANK_TRANSFER\"\n  },\n  \"shop_baskets\": [\n    {\n      \"partner_shop_id\": \"INTEGRATION_TE_DACH\",\n      \"shop_transaction_id\": \"shop-transaction-id-1234\",\n      \"gross_amount\": 200,\n      \"items\": [\n        {\n          \"article_number\": \"urban-pack\",\n          \"category\": \"bags\",\n          \"description\": \"Lightweight backpack with a padded laptop compartment\",\n          \"gross_total_price\": 180,\n          \"gross_unit_price\": 180,\n          \"name\": \"Urban Pack\",\n          \"net_total_price\": 151.26,\n          \"net_unit_price\": 151.26,\n          \"quantity\": 1,\n          \"tax_rate\": 19,\n          \"unit\": \"piece\"\n        }\n      ],\n      \"special_items\": [\n        {\n          \"article_number\": \"SHIPPING_001\",\n          \"category\": \"shipping\",\n          \"description\": \"Standard shipping via DHL\",\n          \"gross_total_price\": 20,\n          \"gross_unit_price\": 20,\n          \"name\": \"Shipping costs\",\n          \"net_total_price\": 16.81,\n          \"net_unit_price\": 16.81,\n          \"quantity\": 1,\n          \"tax_rate\": 19,\n          \"unit\": \"shipment\"\n        }\n      ],\n      \"vats\": [\n        {\n          \"net_amount\": 168.07,\n          \"tax_amount\": 31.93,\n          \"tax_rate\": 19\n        }\n      ]\n    }\n  ]\n}\n","lang":"json"},"children":[]}]},{"$$mdtype":"Tag","name":"div","attributes":{"label":"PDF print (POS)","disable":false},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use this request when staff prints the document at the point of sale."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"delivery\": {\n    \"method\": \"pdf\",\n    \"action\": \"print\",\n    \"country_code\": \"DE\",\n    \"language\": \"en\"\n  },\n  \"currency\": \"EUR\",\n  \"payment_method\": {\n    \"payment_option\": \"OPEN_INVOICE\",\n    \"transfer_type\": \"BANK_TRANSFER\"\n  },\n  \"shop_baskets\": [\n    {\n      \"partner_shop_id\": \"INTEGRATION_TE_DACH\",\n      \"shop_transaction_id\": \"shop-transaction-id-1234\",\n      \"gross_amount\": 200,\n      \"items\": [\n        {\n          \"article_number\": \"urban-pack\",\n          \"category\": \"bags\",\n          \"description\": \"Lightweight backpack with a padded laptop compartment\",\n          \"gross_total_price\": 180,\n          \"gross_unit_price\": 180,\n          \"name\": \"Urban Pack\",\n          \"net_total_price\": 151.26,\n          \"net_unit_price\": 151.26,\n          \"quantity\": 1,\n          \"tax_rate\": 19,\n          \"unit\": \"piece\"\n        }\n      ],\n      \"special_items\": [\n        {\n          \"article_number\": \"SHIPPING_001\",\n          \"category\": \"shipping\",\n          \"description\": \"Standard shipping via DHL\",\n          \"gross_total_price\": 20,\n          \"gross_unit_price\": 20,\n          \"name\": \"Shipping costs\",\n          \"net_total_price\": 16.81,\n          \"net_unit_price\": 16.81,\n          \"quantity\": 1,\n          \"tax_rate\": 19,\n          \"unit\": \"shipment\"\n        }\n      ],\n      \"vats\": [\n        {\n          \"net_amount\": 168.07,\n          \"tax_amount\": 31.93,\n          \"tax_rate\": 19\n        }\n      ]\n    }\n  ]\n}\n","lang":"json"},"children":[]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/secci-document-excerpt.bc7bbb1bbd17e1b85be33dbdeb24eb7e2dd189f3ffb25e073f1ebea5f435b4c5.9a51d86e.png","alt":"Excerpt from an illustrative SECCI document. Ratepay returns the document for the actual transaction."},"children":[]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Before continuing, check that:"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Your backend sends the right Secci generation request for each delivery action. The basket, payment method and amount must match the payment you'll submit."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"4-handle-the-secci-response","__idx":8},"children":["4. Handle the SECCI response"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Check for a successful response before allowing the buyer to finalize the order."]},{"$$mdtype":"Tag","name":"Tabs","attributes":{"size":"medium"},"children":[{"$$mdtype":"Tag","name":"div","attributes":{"label":"Email success","disable":false},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The successful email response returns an ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["x-attestation-token"]}," as response header and a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["secci_id"]}," in the response body."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"http","header":{"controls":{"copy":{}}},"source":"x-attestation-token: RETURNED_ATTESTATION_TOKEN\nContent-Type: application/json\n","lang":"http"},"children":[]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"result\": \"SUCCESS\",\n  \"secci_id\": \"SCCMS8BH-27092026\"\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Show the confirmation with the email address."]}]},{"$$mdtype":"Tag","name":"div","attributes":{"label":"PDF success","disable":false},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Both actions ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["download"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["print"]}," return the same response structure. The response body contains the binary PDF."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"http","header":{"controls":{"copy":{}}},"source":"x-attestation-token: RETURNED_ATTESTATION_TOKEN\nContent-Type: application/pdf\n\n[binary PDF response body]\n","lang":"http"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Offer the binary PDF as a download (online shop) or print it (point of sale)."]}]},{"$$mdtype":"Tag","name":"div","attributes":{"label":"Validation error","disable":false},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This excerpt shows the response to an email SECCI request without the required ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email"]}," parameter. It did not return an attestation token. Do not enable payment; correct the request and retry the delivery action."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"type\": \"https://api.ratepay.com/transaction/management/v2/validation/syntax\",\n  \"decline\": {\n    \"category\": \"SYNTAX\",\n    \"reasons\": [\n      \"INVALID_FIELDS\"\n    ],\n    \"invalid_fields\": [\n      {\n        \"json_path\": \"delivery.email\",\n        \"message\": \"is required when delivery method is 'email'\"\n      }\n    ]\n  }\n}\n","lang":"json"},"children":[]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"secci-status-handling-guideline","__idx":9},"children":["SECCI Status Handling Guideline"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"State"},"children":["State"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Buyer or staff interface"},"children":["Buyer or staff interface"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Payment submission"},"children":["Payment submission"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Pending"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Show progress and prevent repeated actions."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Blocked"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Email request successful"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Confirm delivery to the shown address."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Enabled with the stored token"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["PDF provided"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Make the actual PDF available in the browser or hand the printed document to the buyer."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Enabled with the stored token"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Failed or timed out"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Explain the failure and offer retry or another method."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Blocked"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Basket, method or relevant credit terms changed"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Clear the old result and request a new document."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Blocked until the new request succeeds"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["If SECCI is successful"]},":"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Store the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["x-attestation-token"]}," value with the current checkout or order attempt. You need it in step 5."," ","The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["x-attestation-token"]}," is valid for 7 days. If it expires before the Authorize transaction request, request a SECCI again and use the new token."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If the basket or payment method changes, discard the token and request a new SECCI."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["If SECCI request fails:"]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Suggested buyer-facing copy:"]}]},{"$$mdtype":"Tag","name":"Tabs","attributes":{"size":"medium"},"children":[{"$$mdtype":"Tag","name":"div","attributes":{"label":"English","disable":false},"children":[{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Error message:"]}," Standard European Consumer Credit Information (SECCI) is temporarily unavailable. Please try again."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Action:"]}," Try again"]}]}]},{"$$mdtype":"Tag","name":"div","attributes":{"label":"Deutsch","disable":false},"children":[{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Error message:"]}," Europäische Standardinformationen für Verbraucherkredite (SECCI) sind vorübergehend nicht verfügbar. Bitte versuche es noch einmal."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Action:"]}," Erneut versuchen"]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Before continuing, check that:"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Each response is checked and the document reaches the buyer by the chosen method"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The attestation token is stored against the order attempt"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["A SECCI delivery success message is implemented"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["A SECCI delivery failure message and retry workflow is implemented"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Pending, failed and timed-out requests block payment"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"5-submit-payment","__idx":10},"children":["5. Submit payment"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Keep your existing ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://docs.ratepay.com/apis/payment/openapi/payment_api/transaction-management"},"children":["Authorize transaction"]}," request at ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /v2/transactions"]},"."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["New for CCD2:"]}," Add the value from the successful SECCI response header ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["x-attestation-token"]}," as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["compliance_details.attestation_token"]},". This is part of your existing authorization request, not a new request."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"compliance_details\": {\n    \"attestation_token\": \"STORED_X_ATTESTATION_TOKEN\"\n  },\n  ...\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Matching data:"]}," the basket, payment method and amount must match the successful SECCI generation request. Otherwise Ratepay rejects the payment with HTTP status code 422:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n    \"type\": \"https://api.ratepay.com/transaction/management/v2/validation/unprocessable_operation\",\n    \"ratepay_transaction_id\": \"RATEPAY_TRANSACTION_ID\",\n    \"created\": \"2026-10-07T11:10:36.534+02:00\",\n    \"result\": \"DECLINED\",\n    \"decline\": {\n        \"category\": \"UNPROCESSABLE_OPERATION\",\n        \"reasons\": [\n            \"COMPLIANCE_ATTESTATION_TOKEN_VALIDATION_FAILED\"\n        ]\n    },\n    \"_links\": {\n        \"self\": {\n            \"href\": \"https://api-integration.ratepay.com/transaction/management/v2/transactions/RATEPAY_TRANSACTION_ID\"\n        }\n    }\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["If anything changed, request a new SECCI."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["When to allow order submission:"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Online shop:"]}," Enable order submission after a successful email SECCI request; or after the returned PDF has been provided to the buyer."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["MOTO:"]}," Complete the SECCI provision process described for the selected MOTO option in step 2 before submitting the payment."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Point of sale:"]}," keep the submit action disabled until the email is sent, or until the PDF is printed and handed over."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Before continuing, check that:"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["in-scope payments are submitted only after successful document provision, with the stored attestation-token and matching basket and payment method"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"6-handle-credit-declines","__idx":11},"children":["6. Handle credit declines"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["When Ratepay declines a payment for credit-risk reasons under CCD2, the response will have the HTTP status code 422, with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["CREDIT_RISK"]}," as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["decline.category"]},"."]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Use the returned ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["decline.message"]}," for the buyer's language when present."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The text can contain named placeholders; match each placeholder to an entry in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["links"]}," by ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["rel"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Render its supplied label and URL as a link in your frontend."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"em","attributes":{},"children":["Note:"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Its content differs by country and language."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Do not replace the full explanation with a generic decline text."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Other decline categories can have different response shapes."]}]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["You can test the credit-decline informations by placing a B2C order using"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["credit_risk_data@ratepay.com"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["credit_risk_score@ratepay.com"]}," as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email"]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["when sending the Authorize transaction request on the integration environment."]}]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"_links\": {\n    \"self\": {\n      \"href\": \"https://api-integration.ratepay.com/transaction/management/v2/transactions/EXAMPLE_TRANSACTION_ID\"\n    }\n  },\n  \"created\": \"2026-09-27T14:15:22Z\",\n  \"decline\": {\n    \"category\": \"CREDIT_RISK\",\n    \"message\": {\n      \"en\": {\n        \"text\": \"Our partner Ratepay ran a credit check with SCHUFA Holding AG, using your name, address and, if provided, date of birth. The score came back at 5700, below what this transaction requires. To exercise your {data_protection_rights} or to request a human review of the decision, {contact_ratepay}.\",\n        \"links\": [\n          {\n            \"rel\": \"data_protection_rights\",\n            \"href\": \"https://www.ratepay.com/en/ratepay-data-privacy-statement\",\n            \"label\": \"Data Protection Rights\"\n          },\n          {\n            \"rel\": \"contact_ratepay\",\n            \"href\": \"https://www.ratepay.com/en/shoppers/contact\",\n            \"label\": \"Contact Ratepay\"\n          }\n        ]\n      }\n    }\n  },\n  \"ratepay_transaction_id\": \"EXAMPLE_TRANSACTION_ID\",\n  \"result\": \"DECLINED\"\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Showing the message:"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Online shop:"]}," Show the message and links on the buyer's result screen. Keep another available payment method accessible."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["MOTO:"]}," Show the message and links in the staff order-entry flow so the employee can communicate them and offer another method."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["POS:"]}," Show them in the staff result so the employee can explain the decision and review options."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Illustrative buyer-facing credit decline"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/decline-buyer-example-clean.93768c2cf919d053cfa62a4b56992b77184831ed08a02e18d44d231b9813386b.9a51d86e.png","alt":"Illustrative buyer-facing credit decline. Use the actual message returned for the transaction."},"children":[]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Before continuing, check that:"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The full message, with working links, appears in the buyer or staff result view"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Other payment methods stay available"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["A declined transaction can't be processed as an accepted order."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"7-after-the-purchase","__idx":12},"children":["7. After the purchase"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["No action needed. Continue your normal order process."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["When you capture the transaction, Ratepay sends the Credit Contract Information to the buyer. If the amount increases later, Ratepay provides any updated credit information. There is no new SECCI generation request or token after checkout."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"test-your-integration","__idx":13},"children":["Test your integration"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Before going live, run the ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"/docs/developer/api_integration/payment_2.0/test_cases#ccd2-specific"},"children":["test scenarios"]}," in the integration environment."]}]},"headings":[{"value":"Integration Details","id":"integration-details","depth":1},{"value":"1. Present payment methods","id":"1-present-payment-methods","depth":2},{"value":"2. Inform the buyer about the SECCI","id":"2-inform-the-buyer-about-the-secci","depth":2},{"value":"Online shop","id":"online-shop","depth":3},{"value":"Automatic email delivery (recommended)","id":"automatic-email-delivery-recommended","depth":4},{"value":"Explicit SECCI Interaction","id":"explicit-secci-interaction","depth":4},{"value":"MOTO and point of sale","id":"moto-and-point-of-sale","depth":3},{"value":"3. Generate and provide SECCI","id":"3-generate-and-provide-secci","depth":2},{"value":"4. Handle the SECCI response","id":"4-handle-the-secci-response","depth":2},{"value":"SECCI Status Handling Guideline","id":"secci-status-handling-guideline","depth":3},{"value":"5. Submit payment","id":"5-submit-payment","depth":2},{"value":"6. Handle credit declines","id":"6-handle-credit-declines","depth":2},{"value":"7. After the purchase","id":"7-after-the-purchase","depth":2},{"value":"Test your integration","id":"test-your-integration","depth":2}],"frontmatter":{"seo":{"title":"CCD2 Integration Details | Payment API 2.0"},"markdown":{"toc":{"hide":false,"depth":3}}},"lastModified":"2026-10-19T12:00:58.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/docs/developer/api_integration/payment_2.0/ccd2/integration-details","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}