{"_id":"59bc55d82b480b0010010cc7","category":{"_id":"59bc55d72b480b0010010c99","version":"59bc55d72b480b0010010c92","project":"57336fd5a6a9c40e00e13a0b","__v":0,"sync":{"url":"","isSync":false},"reference":false,"createdAt":"2015-11-03T20:45:01.593Z","from_sync":false,"order":6,"slug":"topics","title":"Guides"},"project":"57336fd5a6a9c40e00e13a0b","user":"560d5913af97231900938124","parentDoc":null,"version":{"_id":"59bc55d72b480b0010010c92","project":"57336fd5a6a9c40e00e13a0b","__v":1,"createdAt":"2017-09-15T22:36:07.078Z","releaseDate":"2017-09-15T22:36:07.078Z","categories":["59bc55d72b480b0010010c93","59bc55d72b480b0010010c94","59bc55d72b480b0010010c95","59bc55d72b480b0010010c96","59bc55d72b480b0010010c97","59bc55d72b480b0010010c98","59bc55d72b480b0010010c99"],"is_deprecated":false,"is_hidden":false,"is_beta":false,"is_stable":true,"codename":"3.22.2 Release","version_clean":"8976.0.0-Basics","version":"8976-Basics"},"__v":0,"updates":[],"next":{"pages":[],"description":""},"createdAt":"2017-06-27T13:18:33.558Z","link_external":false,"link_url":"","githubsync":"","sync_unique":"","hidden":false,"api":{"results":{"codes":[]},"settings":"","auth":"required","params":[],"url":""},"isReference":false,"order":51,"body":"SEPA (Single Euro Payments Area) Direct Debit is a popular European banking payment method that simplifies cross-border shopping in Euro. It is an online payment method where money is electronically withdrawn from the shopper’s bank account and then deposited into the merchant’s own bank account. SEPA Direct Debit transactions are monitored by our built-in fraud prevention capabilities, just like credit card transactions.\n\nThis guide will cover the following topics: \n  * [Supported markets](#section-supported-markets)\n  * [SEPA Direct Debit transaction processing](#section-sepa-direct-debit-transaction-processing)\n  * [Implementing SEPA Direct Debit](#section-implementing-sepa-direct-debit)\n  * [Sandbox testing](#section-sandbox-testing)\n\n#Supported markets\n\n###Supported shopper countries \n[block:html]\n{\n  \"html\": \"<div style=\\\"margin-bottom: -25px;\\\">\\n<ul class='row-custom'>\\n\\t<li>Austria</li>     \\n\\t<li>Belgium</li>  \\n\\t<li>Cyprus</li>    \\n\\t<li>Estonia</li>\\n\\t<li>Finland</li>  \\n\\t<li>France</li>   \\n\\t<li>Germany</li>  \\n</ul>\\n<ul class='row-custom'>\\n  <li>Greece</li>\\n  <li>Ireland</li>\\n  <li>Italy</li>\\n  <li>Latvia</li>\\n  <li>Lithuania</li>\\n  <li>Luxembourg</li>\\n  <li>Malta</li>\\n</ul>\\n<ul class='row-custom'>\\n  <li>Monaco</li>\\n  <li>Netherlands</li>\\n  <li>Portugal</li>\\n  <li>San Marino</li>\\n  <li>Slovakia</li>\\n  <li>Slovenia</li>\\n  <li>Spain</li>\\n</ul>\\n</div>\\n<style>\\n  .row-custom {\\n    display: inline-block;\\n    vertical-align: top; \\n    padding-right: 45px;\\n  }\\n</style>\"\n}\n[/block]\n###Supported currencies\nEuro (EUR)\n\n#SEPA Direct Debit transaction processing\n[block:html]\n{\n  \"html\": \"<br>\\n\\n<!-- SEPA Transaction Processing -->\\n<!-- Uses Bootstrap thumbnails -->\\n\\n<!-- row 1 -->\\n <div class=\\\"row row-custom-1\\\" style=\\\"margin-bottom: 24px;\\\">\\n  <!-- step 1 -->\\n  <div class=\\\"col-md-4\\\">\\n    <div class=\\\"thumbnail\\\"> \\n        <img src=\\\"https://files.readme.io/7bdeb45-step1-3.PNG\\\" alt=\\\"Step1\\\" style=\\\"width:90%;\\\">\\n        <div class=\\\"caption\\\">\\n          <p><strong>1</strong>. Shopper selects SEPA DD and provides IBAN and account holder information.</p> \\n        </div> \\n    </div>\\n  </div>\\n   <!-- step 2 -->\\n  <div class=\\\"col-md-4\\\">\\n    <div class=\\\"thumbnail\\\">\\n        <img src=\\\"https://files.readme.io/36cec3a-step2-3.PNG\\\" alt=\\\"Step2\\\" style=\\\"width:90%;margin-bottom: 26px;\\\">\\n        <div class=\\\"caption\\\">\\n          <p><strong>2</strong>. Shopper accepts mandate authorizing their account to be debited and submits payment.</p>\\n        </div>\\n    </div>\\n  </div>\\n   <!-- step 3 -->\\n  <div class=\\\"col-md-4\\\">\\n    <div class=\\\"thumbnail\\\">\\n        <img src=\\\"https://files.readme.io/725acc1-step3.PNG\\\" alt=\\\"Step3\\\" style=\\\"width:80%;margin-bottom: 11px;margin-top: 5px;\\\">\\n        <div class=\\\"caption\\\">\\n          <p><strong>3</strong>. Merchant sends transaction details to BlueSnap (an invoice in pending status is created). </p>\\n        </div>\\n    </div>\\n  </div>\\n</div>\\n\\n<!-- row 2 -->\\n <div class=\\\"row row-custom-1\\\">\\n   <!-- step 4 -->\\n  <div class=\\\"col-md-4\\\">\\n    <div class=\\\"thumbnail\\\"> \\n        <img src=\\\"https://files.readme.io/769789f-step4-1.PNG\\\" alt=\\\"Step4\\\" style=\\\"width:90%;\\\">\\n        <div class=\\\"caption\\\">\\n          <p><strong>4</strong>. Shopper gets redirected to post-checkout page and gets notification of upcoming debit.</p>\\n        </div> \\n    </div>\\n  </div>   \\n   <!-- step 5 -->\\n  <div class=\\\"col-md-4\\\">\\n    <div class=\\\"thumbnail\\\">\\n        <img src=\\\"https://files.readme.io/977f65d-step6-2.png\\\" alt=\\\"Step5\\\" style=\\\"width: 85%;margin-top: -22px;margin-bottom: -48px;\\\">\\n        <div class=\\\"caption\\\">\\n          <p><br>\\n            <strong>5</strong>. Within 6 days, shopper's account is debited (invoice status updates to approved).</p>\\n        </div>\\n    </div>\\n  </div>\\n   <!-- step 6 -->\\n  <div class=\\\"col-md-4\\\">\\n    <div class=\\\"thumbnail\\\">\\n        <img src=\\\"https://files.readme.io/8cab19f-step6-1.PNG\\\" alt=\\\"Step6\\\" style=\\\"width:85%;\\\">\\n        <div class=\\\"caption\\\" style=\\\"margin-bottom: 29px;\\\">\\n          <p><strong>6</strong>. Shopper gets notification of successful account debit.</p>\\n        </div>\\n    </div> \\n  </div>\\n</div>\\n\\n<style>\\n  .row-custom-1 {\\n    text-align: center; \\n  }\\n</style>\"\n}\n[/block]\n#Implementing SEPA Direct Debit \n[block:callout]\n{\n  \"type\": \"info\",\n  \"title\": \"Before you begin:\",\n  \"body\": \"Contact [merchant support](mailto:\\\"merchants:::at:::bluesnap.com) to have SEPA Direct Debit enabled for your account.\\n\\nAfter SEPA is enabled, confirm that SEPA Direct Debit is set to **Show** in your BlueSnap Console by going to **Checkout Page > Payment Methods**.\"\n}\n[/block]\nImplementing SEPA Direct Debit will consist of these steps: \n  * [Step 1: Collect a mandate acceptance from your shopper](#section-step-1-collect-a-mandate-acceptance-from-your-shopper)\n  * [Step 2: Send the transaction for processing](#section-step-2-send-the-transaction-for-processing)\n  * [Step 3: Display a confirmation message & send a pre-notification email](#section-step-3-display-a-confirmation-message-send-a-pre-notification-email)\n  * [Step 4: Confirm the transaction was successful & send a receipt email](#section-step-4-confirm-the-transaction-was-successful-send-a-receipt-email)\n\n##Step 1: Collect a mandate acceptance from your shopper\nA [SEPA Direct Debit mandate](https://www.europeanpaymentscouncil.eu/what-we-do/sepa-direct-debit/sdd-mandate) is an agreement accepted by the shopper during checkout, authorizing you (through BlueSnap) to pull the funds from their bank account.\n<span></span>\nBelow is an example of the standardized mandate that you must display, where **Jane's Shop** is your business' name. To get the mandate text in another language, you may download the text from the [European Payments Council](https://www.europeanpaymentscouncil.eu/other/core-sdd-mandate-translations), or use the [Get Mandate Text](/v4.0/docs/get-mandate-text) API. \n[block:html]\n{\n  \"html\": \"<!-- Mandate text example -->\\n<div class=\\\"container\\\" style=\\\"padding:0\\\">\\n  <div class=\\\"panel panel-default\\\" style=\\\"background:#F2F4F4\\\">\\n    <div class=\\\"panel-body\\\">By signing this mandate form, you authorise (A) <strong>Jane's Shop</strong> to send instructions to your bank to debit your account and (B) your bank to debit your account in accordance with the instructions from <strong>Jane's Shop</strong>. As part of your rights, you are entitled to a refund from your bank under the terms and conditions of your agreement with your bank. A refund must be claimed within 8 weeks starting from the date on which your account was debited.</div>\\n  </div>\\n</div>\"\n}\n[/block]\n<a class=\"btn btn-primary\" href=\"#\" role=\"button\">Back to Top</a>\n\n##Step 2: Send the transaction for processing\nOnce you have the shopper's authorization, it's time to send their information to BlueSnap via the Payment API or Extended Payment API. Click the desired tab to learn how. \n<br>\n[block:html]\n{\n  \"html\": \"<ul class=\\\"nav nav-tabs\\\">\\n  <li class=\\\"active\\\"><a data-toggle=\\\"tab\\\" href=\\\"#papiMenu\\\">Payment API</a></li>\\n  <li><a data-toggle=\\\"tab\\\" href=\\\"#extended\\\">Extended Payment API</a></li>\\n</ul>\\n\\n<div class=\\\"tab-content\\\">\\n  <div id=\\\"papiMenu\\\" class=\\\"tab-pane fade in active\\\">\"\n}\n[/block]\n<span></span>\n###Processing transactions with the Payment API\nYou can send a [Create SEPA DD Transaction](/v2.1/docs/create-sepa-dd-transaction) or [Create Subscription](/v2.1/docs/create-subscription) request to begin processing the transaction. You can also create/update a [vaulted shopper](/v2.1/docs/create-vaulted-shopper) before you  send the transaction for processing. \n\nBelow is a simple [Create SEPA DD Transaction](/v2.1/docs/create-sepa-dd-transaction) request with a new shopper.\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"curl -v -X POST https://sandbox.bluesnap.com/services/2/alt-transactions/ \\\\\\n-H 'Content-Type: application/json' \\\\\\n-H 'Accept: application/json' \\\\ \\n-H 'Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=' \\\\\\n-d '\\n{\\n  \\\"sepaDirectDebitTransaction\\\": {\\n      \\\"iban\\\": \\\"DE09100100101234567893\\\"\\n  },\\n  \\\"payerInfo\\\": {\\n      \\\"firstName\\\": \\\"John\\\",\\n      \\\"lastName\\\": \\\"Doe\\\"\\n  },\\n  \\\"amount\\\": 9.65,\\n  \\\"currency\\\": \\\"EUR\\\",\\n  \\\"authorizedByShopper\\\": true\\n}'\",\n      \"language\": \"curl\",\n      \"name\": \"Create SEPA DD Transaction - Request\"\n    }\n  ]\n}\n[/block]\nIf successful, the response HTTP status code is 200 OK and it will contain the following properties (among others). The values will be used in the next step when you display the confirmation message and send an email informing the shopper of the upcoming debit (i.e. pre-notification email). \n\n* `mandateId`: Unique identifier for the shopper's mandate acceptance. \n* `mandateDate`: Date of the shopper's mandate acceptance. \n* `preNotificationText`: Text (in English) for pre-notification email informing shopper of upcoming debit.\n* `preNotificationTranslationRef`: Endpoint to [get pre-notification text](/v4.0/docs/get-pre-notification-text) in another language*. \n\n*Specify language by its two letter ISO 639-1 code using `language` query string parameter. Omitting parameter gets text in all supported languages. \n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{\\n    \\\"transactionId\\\": \\\"1011183521\\\",\\n    \\\"amount\\\": 9.65,\\n    \\\"currency\\\": \\\"EUR\\\",\\n    \\\"payerInfo\\\": { \\n        \\\"firstName\\\": \\\"John\\\",\\n        \\\"lastName\\\": \\\"Doe\\\"\\n    },\\n    \\\"vaultedShopperId\\\": 21781957,\\n    \\\"sepaDirectDebitTransaction\\\": {\\n        \\\"ibanFirstFour\\\": \\\"DE09\\\",\\n        \\\"ibanLastFour\\\": \\\"7893\\\",\\n        \\\"mandateId\\\": \\\"Ooo153451\\\",\\n        \\\"mandateDate\\\": \\\"21-Jul-17\\\",\\n        \\\"preNotificationText\\\": \\\"The amount of 9.65 EUR will be collected using SEPA Direct Debit with Mandate Ooo153451 from your bank account IBAN DE09XXXXXX7891 in the next few days. Please ensure sufficient funds in your account.\\\",\\n        \\\"preNotificationTranslationRef\\\": \\\"https://sandbox.bluesnap.com/services/2/translations/sepa/prenotification?transactionid=1011183521\\\"\\n    },\\n    \\\"processingInfo\\\": {\\n        \\\"processingStatus\\\": \\\"PENDING\\\"\\n    } \\n}\",\n      \"language\": \"json\",\n      \"name\": \"Create SEPA DD Transaction - Response\"\n    }\n  ]\n}\n[/block]\n\n[block:html]\n{\n  \"html\": \"</div>\\n <div id=\\\"extended\\\" class=\\\"tab-pane fade\\\">\"\n}\n[/block]\n<span></span>\n###Processing transactions with the Extended Payment API\nYou can send a [Create Order and New Shopper](/v3.0/docs/create-shopper-and-order) or [Create Order with Existing Shopper](/v3.0/docs/create-order) request to begin processing the transaction. You can also create/update a [shopper](/v3.0/docs/create-shopper) before you  send the transaction for processing. \n\nBelow is a [Create Order and New Shopper](/v3.0/docs/create-shopper-and-order) request and response. \n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"curl -v -X POST https://sandbox.bluesnap.com/services/2/batch/order-placement \\\\\\n-H 'Content-Type: application/xml' \\\\\\n-H 'Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=' \\\\\\n-d '\\n<batch-order xmlns=\\\"http://ws.plimus.com\\\">\\n  <shopper>\\n    <web-info>\\n      <ip>62.219.121.253</ip>\\n      <remote-host>www.merchant.com</remote-host>\\n      <user-agent>Mozilla/5.0 (Linux; X11)</user-agent>\\n    </web-info>\\n    <shopper-info>\\n      <store-id>10540</store-id>\\n      <locale>en</locale>\\n      <shopper-contact-info>\\n        <title>Mr.</title>\\n        <first-name>John</first-name>\\n        <last-name>Doe</last-name>\\n        <email>jdoe@johndoeandsons.com</email>\\n        <company-name>JohnDoeAndSons</company-name>\\n        <address1>138 Market St</address1>\\n        <city>San Francisco</city>\\n        <zip>75654</zip>\\n        <state>CA</state>\\n        <country>US</country>\\n        <phone>14135556789</phone>\\n        <fax>14135556788</fax>\\n      </shopper-contact-info>\\n      <payment-info>\\n        <credit-cards-info>\\n          <credit-card-info>\\n            <billing-contact-info>\\n              <first-name>John</first-name>\\n              <last-name>Doe</last-name>\\n              <address1>138 Market St</address1>\\n              <city>San Francisco</city>\\n              <state>CA</state>\\n              <zip>75654</zip>\\n              <country>US</country>\\n            </billing-contact-info>\\n            <credit-card>\\n              <card-number>4111 1111 1111 1111</card-number>\\n              <security-code>123</security-code>\\n              <card-type>VISA</card-type>\\n              <expiration-month>09</expiration-month>\\n              <expiration-year>2019</expiration-year>\\n            </credit-card>\\n          </credit-card-info>\\n        </credit-cards-info>\\n      </payment-info>\\n    </shopper-info>\\n  </shopper>\\n  <order>\\n    <ordering-shopper>\\n      <web-info>\\n        <ip>62.219.121.253</ip>\\n        <remote-host>www.merchant.com</remote-host>\\n        <user-agent>Mozilla/5.0 (Linux; X11)</user-agent>\\n      </web-info>\\n      <fraud-info>\\n        <fraud-session-id>1234567890</fraud-session-id>\\n      </fraud-info>\\n    </ordering-shopper>\\n    <cart>\\n      <cart-item>\\n        <sku>\\n          <sku-id>2183634</sku-id>\\n        </sku>\\n        <quantity>1</quantity>\\n      </cart-item>\\n    </cart>\\n    <expected-total-price>\\n      <amount>50.00</amount>\\n      <currency>USD</currency>\\n    </expected-total-price>\\n  </order>\\n</batch-order>'\",\n      \"language\": \"curl\",\n      \"name\": \"Create Order and New Shopper: Request\"\n    },\n    {\n      \"code\": \"<?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"yes\\\"?>\\n<batch-order xmlns=\\\"http://ws.plimus.com\\\">\\n    <shopper>\\n        <shopper-info>\\n            <shopper-id>21858941</shopper-id>\\n            <shopper-contact-info>\\n                <title>Mr.</title>\\n                <first-name>John</first-name>\\n                <last-name>Doe</last-name>\\n                <email>jdoe&#x40;email.com</email>\\n                <company-name>JohnDoeAndSons</company-name>\\n                <address1>138 Market St</address1>\\n                <city>Toulouse</city>\\n                <zip>75654</zip>\\n                <country>fr</country>\\n                <phone>14135556789</phone>\\n                <fax>14135556788</fax>\\n            </shopper-contact-info>\\n            <shipping-contact-info/>\\n            <invoice-contacts-info>\\n                <invoice-contact-info>\\n                    <default>true</default>\\n                    <title>Mr.</title>\\n                    <first-name>John</first-name>\\n                    <last-name>Doe</last-name>\\n                    <email>jdoe&#x40;email.com</email>\\n                    <company-name>JohnDoeAndSons</company-name>\\n                    <address1>138 Market St</address1>\\n                    <city>Toulouse</city>\\n                    <zip>75654</zip>\\n                    <country>fr</country>\\n                    <phone>14135556789</phone>\\n                    <fax>14135556788</fax>\\n                </invoice-contact-info>\\n            </invoice-contacts-info>\\n            <payment-info>\\n                <credit-cards-info/>\\n                <ecps-info/>\\n                <sepa-direct-debits-info>\\n                    <sepa-direct-debit-info>\\n                        <billing-contact-info>\\n                            <first-name>John</first-name>\\n                            <last-name>Doe</last-name>\\n                            <address1>138 Market St</address1>\\n                            <city>Toulouse</city>\\n                            <zip>75654</zip>\\n                            <country>fr</country>\\n                        </billing-contact-info>\\n                        <sepa-direct-debit>\\n                            <iban-first-four>DE09</iban-first-four>\\n                            <iban-last-four>7893</iban-last-four>\\n                        </sepa-direct-debit>\\n                    </sepa-direct-debit-info>\\n                </sepa-direct-debits-info>\\n                <balance/>\\n            </payment-info>\\n            <store-id>14912</store-id>\\n            <shopper-currency>EUR</shopper-currency>\\n            <locale>en</locale>\\n        </shopper-info>\\n    </shopper>\\n    <order>\\n        <order-id>5835715</order-id>\\n        <ordering-shopper>\\n            <shopper-id>21858941</shopper-id>\\n        </ordering-shopper>\\n        <cart>\\n            <charged-currency>EUR</charged-currency>\\n            <cart-item>\\n                <sku>\\n                    <sku-id>2429827</sku-id>\\n                    <sku-name>sepa prod sepa one time</sku-name>\\n                </sku>\\n                <quantity>1</quantity>\\n                <item-sub-total>0.73</item-sub-total>\\n            </cart-item>\\n            <tax>0.00</tax>\\n            <tax-rate>0</tax-rate>\\n            <total-cart-cost>0.73</total-cart-cost>\\n        </cart>\\n        <post-sale-info>\\n            <invoices>\\n                <invoice>\\n                    <invoice-id>1011296599</invoice-id>\\n                    <url>https://sandbox.bluesnap.com/jsp/show_invoice.jsp?ref=CDB32EF9D1C572C6436E39BE78BB87E1</url>\\n                    <financial-transactions>\\n                        <financial-transaction>\\n                            <status>Pending</status>\\n                            <date-due>03-Aug-17</date-due>\\n                            <date-created>03-Aug-17</date-created>\\n                            <amount>0.73</amount>\\n                            <currency>EUR</currency>\\n                            <soft-descriptor>Oooops LTD</soft-descriptor>\\n                            <payment-method>SEPA Direct Debit</payment-method>\\n                            <target-balance>PLIMUS_ACCOUNT</target-balance>\\n                            <paypal-transaction-data/>\\n                            <sepa-direct-debit>\\n                                <iban-first-four>DE09</iban-first-four>\\n                                <iban-last-four>7893</iban-last-four>\\n                                <mandate-id>Ooo157097</mandate-id>\\n                                <mandate-date>03-Aug-17</mandate-date>\\n                                <pre-notification-text>The amount of 0.73 EUR will be collected using SEPA Direct Debit with Mandate Ooo157097 from your bank account IBAN DE09XXXXXX7893 in the next few days. Please ensure sufficient funds in your account.</pre-notification-text>\\n                                <pre-notification-translation-ref>https://sandbox.bluesnap.com/services/2/translations/sepa/prenotification?transactionid=1011296599</pre-notification-translation-ref>\\n                            </sepa-direct-debit>\\n                            <invoice-contact-info>\\n                                <title>Mr.</title>\\n                                <first-name>John</first-name>\\n                                <last-name>Doe</last-name>\\n                                <email>jdoe&#x40;email.com</email>\\n                                <company-name>JohnDoeAndSons</company-name>\\n                                <address1>138 Market St</address1>\\n                                <city>Toulouse</city>\\n                                <zip>75654</zip>\\n                                <country>fr</country>\\n                                <phone>14135556789</phone>\\n                                <fax>14135556788</fax>\\n                            </invoice-contact-info>\\n                            <skus>\\n                                <sku>\\n                                    <sku-id>2429827</sku-id>\\n                                    <sku-name>sepa prod sepa one time</sku-name>\\n                                </sku>\\n                            </skus>\\n                        </financial-transaction>\\n                    </financial-transactions>\\n                </invoice>\\n            </invoices>\\n        </post-sale-info>\\n        <fulfillment>\\n            <license-keys/>\\n        </fulfillment>\\n        <fraud-result-info>\\n            <device-data-collector>N</device-data-collector>\\n        </fraud-result-info>\\n    </order>\\n</batch-order>\",\n      \"language\": \"xml\",\n      \"name\": \"Response\"\n    }\n  ]\n}\n[/block]\nIf successful, the response HTTP status code is 200 OK and it will contain the following properties (among others). The values will be used in the next step when you display the confirmation message and send an email informing the shopper of the upcoming debit (i.e. pre-notification email). \n\n* `mandate-id`: Unique identifier for the shopper's mandate acceptance. \n* `mandate-date`: Date of the shopper's mandate acceptance. \n* `pre-notification-text`: Text (in English) for pre-notification email informing shopper of upcoming debit.\n* `pre-notification-translation-ref`: Endpoint to [get pre-notification text](/v4.0/docs/get-pre-notification-text) in another language*. \n\n*Specify language by its two letter ISO 639-1 code using `language` query string parameter. Omitting parameter gets text in all supported languages. \n[block:html]\n{\n  \"html\": \"\\t</div>\\n</div>\"\n}\n[/block]\n<span></span>\n<a class=\"btn btn-primary\" href=\"#\" role=\"button\">Back to Top</a>\n\n##Step 3: Display a confirmation message & send a pre-notification email \nAfter receiving a successful response from BlueSnap, you'll display a confirmation message to your shopper that shows the mandate ID and mandate date. \n\nIn addition to displaying the confirmation message, the [European Payments Council](https://www.europeanpaymentscouncil.eu/) requires that you send your shopper a pre-notification email - an email informing them each time their account is going to be debited. Pre-notification emails must include the following information: \n\n* Mandate ID \n* Mandate date \n* Pre-notification text \n\nBelow is an example of the standardized text that you must display (text is included within `preNotificationText` property). To get the pre-notification text in another language, you may use the [Get Pre-Notification Text](/v4.0/docs/get-pre-notification-text) API (`preNotificationTranslationRef` property provides you with the endpoint). \n[block:html]\n{\n  \"html\": \"<!-- Mandate text example -->\\n<div class=\\\"container\\\" style=\\\"padding:0\\\">\\n  <div class=\\\"panel panel-default\\\" style=\\\"background:#F2F4F4\\\">\\n    <div class=\\\"panel-body\\\">The amount of <strong>25</strong> EUR will be collected using SEPA Direct Debit with Mandate <strong>Ape151899</strong> and from your bank account IBAN <strong>DE09XXXXXX7893</strong> in the next few days. Please ensure sufficient funds in your account.</div>\\n  </div>\\n</div>\"\n}\n[/block]\n\n[block:callout]\n{\n  \"type\": \"info\",\n  \"title\": \"Timeline for sending pre-notification email\",\n  \"body\": \"**For one-time and initial subscription charges**: The pre-notification email should be sent  after the shopper completes checkout and after you receive a successful response from BlueSnap. \\n\\n**For recurring subscription charges**: The pre-notification email should be sent at least 5 days before the next charge date.\"\n}\n[/block]\n\n##Step 4: Confirm the transaction was successful & send a receipt email \nTypically within 5 to 6 business days, the shopper's account will be debited (invoice status updates to approved) and BlueSnap will send a `Charge` [webhook](https://support.bluesnap.com/docs/ipn-name-reference) with `sepaMandateId` and `sepaMandateDate` parameters, notifying you of the successful transaction. At this time, you'll need to send the receipt email to the shopper that displays the mandate ID and mandate date. \n\n**Note**: It is recommended to deliver the product only after the approval has been received.\n[block:callout]\n{\n  \"type\": \"success\",\n  \"title\": \"Staying informed of status changes\",\n  \"body\": \"**Webhooks** \\nThe `Charge` webhook (for one-time and initial subscription charges) and `Recurring` webhook (for recurring subscription charges) will notify you when the shopper's account has been debited for the transaction. Make sure you have webhooks enabled in your [account settings](https://support.bluesnap.com/docs/ipn-setup). \\n\\n**Direct Debit report** \\nUsing the [Reporting API](/v4.0/docs/get-report-data), you can pull the Direct Debit report to view the invoice status. \\n\\n**Payment API - Retrieve SEPA DD Transaction request**\\nThe [Retrieve SEPA DD Transaction](/v2.1/docs/retrieve-sepa-dd-transaction) response will include a `processingStatus` property. The value will indicate the current transaction status.\\n\\n**Extended Payment API - Retrieve Order** \\nThe [Retrieve Order](/v3.0/docs/retrieve-order) response will include a `status` property that will indicate the current transaction status.\"\n}\n[/block]\n#Sandbox testing \nYou may use the following IBANs to test various scenarios. \n* **DE09100100101234567893**: The transaction status moves from pending to success\n* **DE09100100101234567892**: The transaction status moves from pending to fail\n* **DE09100100101234567894**: The transaction status moves from pending to success to refunded\n\n**Note**: After the initial transaction request, you will see the status change within an hour. \n\n<span></span>\n<a class=\"btn btn-primary\" href=\"#\" role=\"button\">Back to Top</a>","excerpt":"Learn how to accept SEPA Direct Debit payments with the BlueSnap APIs.\nFor more information on topics like subscriptions and refunds, visit the [Help & Support](https://support.bluesnap.com/docs/sepa-direct-debit#section-sepa-direct-debit-in-the-bluesnap-apis) center.","slug":"sepa-direct-debit","type":"basic","title":"SEPA Direct Debit"}

SEPA Direct Debit

Learn how to accept SEPA Direct Debit payments with the BlueSnap APIs. For more information on topics like subscriptions and refunds, visit the [Help & Support](https://support.bluesnap.com/docs/sepa-direct-debit#section-sepa-direct-debit-in-the-bluesnap-apis) center.

SEPA (Single Euro Payments Area) Direct Debit is a popular European banking payment method that simplifies cross-border shopping in Euro. It is an online payment method where money is electronically withdrawn from the shopper’s bank account and then deposited into the merchant’s own bank account. SEPA Direct Debit transactions are monitored by our built-in fraud prevention capabilities, just like credit card transactions.

This guide will cover the following topics:

Supported markets

Supported shopper countries

  • Austria
  • Belgium
  • Cyprus
  • Estonia
  • Finland
  • France
  • Germany
  • Greece
  • Ireland
  • Italy
  • Latvia
  • Lithuania
  • Luxembourg
  • Malta
  • Monaco
  • Netherlands
  • Portugal
  • San Marino
  • Slovakia
  • Slovenia
  • Spain

Supported currencies

Euro (EUR)

SEPA Direct Debit transaction processing


Step1

1. Shopper selects SEPA DD and provides IBAN and account holder information.

Step2

2. Shopper accepts mandate authorizing their account to be debited and submits payment.

Step3

3. Merchant sends transaction details to BlueSnap (an invoice in pending status is created).

Step4

4. Shopper gets redirected to post-checkout page and gets notification of upcoming debit.

Step5


5. Within 6 days, shopper's account is debited (invoice status updates to approved).

Step6

6. Shopper gets notification of successful account debit.

Implementing SEPA Direct Debit

Before you begin:

Contact merchant support to have SEPA Direct Debit enabled for your account.

After SEPA is enabled, confirm that SEPA Direct Debit is set to Show in your BlueSnap Console by going to Checkout Page > Payment Methods.

Implementing SEPA Direct Debit will consist of these steps:

Step 1: Collect a mandate acceptance from your shopper

A SEPA Direct Debit mandate is an agreement accepted by the shopper during checkout, authorizing you (through BlueSnap) to pull the funds from their bank account.

Below is an example of the standardized mandate that you must display, where Jane's Shop is your business' name. To get the mandate text in another language, you may download the text from the European Payments Council, or use the Get Mandate Text API.

By signing this mandate form, you authorise (A) Jane's Shop to send instructions to your bank to debit your account and (B) your bank to debit your account in accordance with the instructions from Jane's Shop. As part of your rights, you are entitled to a refund from your bank under the terms and conditions of your agreement with your bank. A refund must be claimed within 8 weeks starting from the date on which your account was debited.

Back to Top

Step 2: Send the transaction for processing

Once you have the shopper's authorization, it's time to send their information to BlueSnap via the Payment API or Extended Payment API. Click the desired tab to learn how.

Processing transactions with the Payment API

You can send a Create SEPA DD Transaction or Create Subscription request to begin processing the transaction. You can also create/update a vaulted shopper before you send the transaction for processing.

Below is a simple Create SEPA DD Transaction request with a new shopper.

curl -v -X POST https://sandbox.bluesnap.com/services/2/alt-transactions/ \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \ 
-H 'Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=' \
-d '
{
  "sepaDirectDebitTransaction": {
      "iban": "DE09100100101234567893"
  },
  "payerInfo": {
      "firstName": "John",
      "lastName": "Doe"
  },
  "amount": 9.65,
  "currency": "EUR",
  "authorizedByShopper": true
}'

If successful, the response HTTP status code is 200 OK and it will contain the following properties (among others). The values will be used in the next step when you display the confirmation message and send an email informing the shopper of the upcoming debit (i.e. pre-notification email).

  • mandateId: Unique identifier for the shopper's mandate acceptance.
  • mandateDate: Date of the shopper's mandate acceptance.
  • preNotificationText: Text (in English) for pre-notification email informing shopper of upcoming debit.
  • preNotificationTranslationRef: Endpoint to get pre-notification text in another language*.

*Specify language by its two letter ISO 639-1 code using language query string parameter. Omitting parameter gets text in all supported languages.

{
    "transactionId": "1011183521",
    "amount": 9.65,
    "currency": "EUR",
    "payerInfo": { 
        "firstName": "John",
        "lastName": "Doe"
    },
    "vaultedShopperId": 21781957,
    "sepaDirectDebitTransaction": {
        "ibanFirstFour": "DE09",
        "ibanLastFour": "7893",
        "mandateId": "Ooo153451",
        "mandateDate": "21-Jul-17",
        "preNotificationText": "The amount of 9.65 EUR will be collected using SEPA Direct Debit with Mandate Ooo153451 from your bank account IBAN DE09XXXXXX7891 in the next few days. Please ensure sufficient funds in your account.",
        "preNotificationTranslationRef": "https://sandbox.bluesnap.com/services/2/translations/sepa/prenotification?transactionid=1011183521"
    },
    "processingInfo": {
        "processingStatus": "PENDING"
    } 
}

Processing transactions with the Extended Payment API

You can send a Create Order and New Shopper or Create Order with Existing Shopper request to begin processing the transaction. You can also create/update a shopper before you send the transaction for processing.

Below is a Create Order and New Shopper request and response.

curl -v -X POST https://sandbox.bluesnap.com/services/2/batch/order-placement \
-H 'Content-Type: application/xml' \
-H 'Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=' \
-d '
<batch-order xmlns="http://ws.plimus.com">
  <shopper>
    <web-info>
      <ip>62.219.121.253</ip>
      <remote-host>www.merchant.com</remote-host>
      <user-agent>Mozilla/5.0 (Linux; X11)</user-agent>
    </web-info>
    <shopper-info>
      <store-id>10540</store-id>
      <locale>en</locale>
      <shopper-contact-info>
        <title>Mr.</title>
        <first-name>John</first-name>
        <last-name>Doe</last-name>
        <email>jdoe@johndoeandsons.com</email>
        <company-name>JohnDoeAndSons</company-name>
        <address1>138 Market St</address1>
        <city>San Francisco</city>
        <zip>75654</zip>
        <state>CA</state>
        <country>US</country>
        <phone>14135556789</phone>
        <fax>14135556788</fax>
      </shopper-contact-info>
      <payment-info>
        <credit-cards-info>
          <credit-card-info>
            <billing-contact-info>
              <first-name>John</first-name>
              <last-name>Doe</last-name>
              <address1>138 Market St</address1>
              <city>San Francisco</city>
              <state>CA</state>
              <zip>75654</zip>
              <country>US</country>
            </billing-contact-info>
            <credit-card>
              <card-number>4111 1111 1111 1111</card-number>
              <security-code>123</security-code>
              <card-type>VISA</card-type>
              <expiration-month>09</expiration-month>
              <expiration-year>2019</expiration-year>
            </credit-card>
          </credit-card-info>
        </credit-cards-info>
      </payment-info>
    </shopper-info>
  </shopper>
  <order>
    <ordering-shopper>
      <web-info>
        <ip>62.219.121.253</ip>
        <remote-host>www.merchant.com</remote-host>
        <user-agent>Mozilla/5.0 (Linux; X11)</user-agent>
      </web-info>
      <fraud-info>
        <fraud-session-id>1234567890</fraud-session-id>
      </fraud-info>
    </ordering-shopper>
    <cart>
      <cart-item>
        <sku>
          <sku-id>2183634</sku-id>
        </sku>
        <quantity>1</quantity>
      </cart-item>
    </cart>
    <expected-total-price>
      <amount>50.00</amount>
      <currency>USD</currency>
    </expected-total-price>
  </order>
</batch-order>'
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<batch-order xmlns="http://ws.plimus.com">
    <shopper>
        <shopper-info>
            <shopper-id>21858941</shopper-id>
            <shopper-contact-info>
                <title>Mr.</title>
                <first-name>John</first-name>
                <last-name>Doe</last-name>
                <email>jdoe&#x40;email.com</email>
                <company-name>JohnDoeAndSons</company-name>
                <address1>138 Market St</address1>
                <city>Toulouse</city>
                <zip>75654</zip>
                <country>fr</country>
                <phone>14135556789</phone>
                <fax>14135556788</fax>
            </shopper-contact-info>
            <shipping-contact-info/>
            <invoice-contacts-info>
                <invoice-contact-info>
                    <default>true</default>
                    <title>Mr.</title>
                    <first-name>John</first-name>
                    <last-name>Doe</last-name>
                    <email>jdoe&#x40;email.com</email>
                    <company-name>JohnDoeAndSons</company-name>
                    <address1>138 Market St</address1>
                    <city>Toulouse</city>
                    <zip>75654</zip>
                    <country>fr</country>
                    <phone>14135556789</phone>
                    <fax>14135556788</fax>
                </invoice-contact-info>
            </invoice-contacts-info>
            <payment-info>
                <credit-cards-info/>
                <ecps-info/>
                <sepa-direct-debits-info>
                    <sepa-direct-debit-info>
                        <billing-contact-info>
                            <first-name>John</first-name>
                            <last-name>Doe</last-name>
                            <address1>138 Market St</address1>
                            <city>Toulouse</city>
                            <zip>75654</zip>
                            <country>fr</country>
                        </billing-contact-info>
                        <sepa-direct-debit>
                            <iban-first-four>DE09</iban-first-four>
                            <iban-last-four>7893</iban-last-four>
                        </sepa-direct-debit>
                    </sepa-direct-debit-info>
                </sepa-direct-debits-info>
                <balance/>
            </payment-info>
            <store-id>14912</store-id>
            <shopper-currency>EUR</shopper-currency>
            <locale>en</locale>
        </shopper-info>
    </shopper>
    <order>
        <order-id>5835715</order-id>
        <ordering-shopper>
            <shopper-id>21858941</shopper-id>
        </ordering-shopper>
        <cart>
            <charged-currency>EUR</charged-currency>
            <cart-item>
                <sku>
                    <sku-id>2429827</sku-id>
                    <sku-name>sepa prod sepa one time</sku-name>
                </sku>
                <quantity>1</quantity>
                <item-sub-total>0.73</item-sub-total>
            </cart-item>
            <tax>0.00</tax>
            <tax-rate>0</tax-rate>
            <total-cart-cost>0.73</total-cart-cost>
        </cart>
        <post-sale-info>
            <invoices>
                <invoice>
                    <invoice-id>1011296599</invoice-id>
                    <url>https://sandbox.bluesnap.com/jsp/show_invoice.jsp?ref=CDB32EF9D1C572C6436E39BE78BB87E1</url>
                    <financial-transactions>
                        <financial-transaction>
                            <status>Pending</status>
                            <date-due>03-Aug-17</date-due>
                            <date-created>03-Aug-17</date-created>
                            <amount>0.73</amount>
                            <currency>EUR</currency>
                            <soft-descriptor>Oooops LTD</soft-descriptor>
                            <payment-method>SEPA Direct Debit</payment-method>
                            <target-balance>PLIMUS_ACCOUNT</target-balance>
                            <paypal-transaction-data/>
                            <sepa-direct-debit>
                                <iban-first-four>DE09</iban-first-four>
                                <iban-last-four>7893</iban-last-four>
                                <mandate-id>Ooo157097</mandate-id>
                                <mandate-date>03-Aug-17</mandate-date>
                                <pre-notification-text>The amount of 0.73 EUR will be collected using SEPA Direct Debit with Mandate Ooo157097 from your bank account IBAN DE09XXXXXX7893 in the next few days. Please ensure sufficient funds in your account.</pre-notification-text>
                                <pre-notification-translation-ref>https://sandbox.bluesnap.com/services/2/translations/sepa/prenotification?transactionid=1011296599</pre-notification-translation-ref>
                            </sepa-direct-debit>
                            <invoice-contact-info>
                                <title>Mr.</title>
                                <first-name>John</first-name>
                                <last-name>Doe</last-name>
                                <email>jdoe&#x40;email.com</email>
                                <company-name>JohnDoeAndSons</company-name>
                                <address1>138 Market St</address1>
                                <city>Toulouse</city>
                                <zip>75654</zip>
                                <country>fr</country>
                                <phone>14135556789</phone>
                                <fax>14135556788</fax>
                            </invoice-contact-info>
                            <skus>
                                <sku>
                                    <sku-id>2429827</sku-id>
                                    <sku-name>sepa prod sepa one time</sku-name>
                                </sku>
                            </skus>
                        </financial-transaction>
                    </financial-transactions>
                </invoice>
            </invoices>
        </post-sale-info>
        <fulfillment>
            <license-keys/>
        </fulfillment>
        <fraud-result-info>
            <device-data-collector>N</device-data-collector>
        </fraud-result-info>
    </order>
</batch-order>

If successful, the response HTTP status code is 200 OK and it will contain the following properties (among others). The values will be used in the next step when you display the confirmation message and send an email informing the shopper of the upcoming debit (i.e. pre-notification email).

  • mandate-id: Unique identifier for the shopper's mandate acceptance.
  • mandate-date: Date of the shopper's mandate acceptance.
  • pre-notification-text: Text (in English) for pre-notification email informing shopper of upcoming debit.
  • pre-notification-translation-ref: Endpoint to get pre-notification text in another language*.

*Specify language by its two letter ISO 639-1 code using language query string parameter. Omitting parameter gets text in all supported languages.


Back to Top

Step 3: Display a confirmation message & send a pre-notification email

After receiving a successful response from BlueSnap, you'll display a confirmation message to your shopper that shows the mandate ID and mandate date.

In addition to displaying the confirmation message, the European Payments Council requires that you send your shopper a pre-notification email - an email informing them each time their account is going to be debited. Pre-notification emails must include the following information:

  • Mandate ID
  • Mandate date
  • Pre-notification text

Below is an example of the standardized text that you must display (text is included within preNotificationText property). To get the pre-notification text in another language, you may use the Get Pre-Notification Text API (preNotificationTranslationRef property provides you with the endpoint).

The amount of 25 EUR will be collected using SEPA Direct Debit with Mandate Ape151899 and from your bank account IBAN DE09XXXXXX7893 in the next few days. Please ensure sufficient funds in your account.

Timeline for sending pre-notification email

For one-time and initial subscription charges: The pre-notification email should be sent after the shopper completes checkout and after you receive a successful response from BlueSnap.

For recurring subscription charges: The pre-notification email should be sent at least 5 days before the next charge date.

Step 4: Confirm the transaction was successful & send a receipt email

Typically within 5 to 6 business days, the shopper's account will be debited (invoice status updates to approved) and BlueSnap will send a Charge webhook with sepaMandateId and sepaMandateDate parameters, notifying you of the successful transaction. At this time, you'll need to send the receipt email to the shopper that displays the mandate ID and mandate date.

Note: It is recommended to deliver the product only after the approval has been received.

Staying informed of status changes

Webhooks
The Charge webhook (for one-time and initial subscription charges) and Recurring webhook (for recurring subscription charges) will notify you when the shopper's account has been debited for the transaction. Make sure you have webhooks enabled in your account settings.

Direct Debit report
Using the Reporting API, you can pull the Direct Debit report to view the invoice status.

Payment API - Retrieve SEPA DD Transaction request
The Retrieve SEPA DD Transaction response will include a processingStatus property. The value will indicate the current transaction status.

Extended Payment API - Retrieve Order
The Retrieve Order response will include a status property that will indicate the current transaction status.

Sandbox testing

You may use the following IBANs to test various scenarios.

  • DE09100100101234567893: The transaction status moves from pending to success
  • DE09100100101234567892: The transaction status moves from pending to fail
  • DE09100100101234567894: The transaction status moves from pending to success to refunded

Note: After the initial transaction request, you will see the status change within an hour.


Back to Top