You can find an example of integration here.
Create a Direct Debit payment method for your app or website in four easy steps:
Build the Direct Debit Source Request and Details objects.
A Direct Debit Source Request object requires the following fields.
Field | Value |
type | directDebit |
amount | The total value of the transaction. |
currency | The currency of the transaction. |
owner | An Owner object. |
directDebit | A Direct Debit Source Details object that includes the details of the transaction. |
The Direct Debit Source Details object requires the following fields.
{"returnUrl": "https://example.com"}
Field | Required/Optional | Description |
returnUrl | Required | If you choose to use the full redirect flow, this is where you will redirect your customer to after authorizing or canceling within the Direct Debit experience. |
To create a Direct Debit payment source, you must use the createSource method exposed via DigitalRiver.js.
var data = {"type": "directDebit","sessionId": "ea03bf6f-84ef-4993-b1e7-b7d5ecf71d1f","owner": {firstName: "John",lastName: "Doe",email: "test@digitalriver.com",phoneNumber: "000-000-0000",address: {line1: "123 Main Street",line2: "",city: "Paris",postalCode: "14390",country: "FR"}},"directDebit": {"returnUrl": "https://mypage.com"}}digitalriver.createSource(data).then(function(result) {if (result.error) {//handle errors} else {var source = result.source;//send source to back endsendToBackend(source);}});
{"clientId": "gc","channelId": "drdod15","liveMode": false,"id": "bddccfc7-4fa8-401b-b661-421cd5047792","clientSecret": "bddccfc7-4fa8-401b-b661-421cd5047792_bdddssccfc7-4fa8-401b-b661-421cd5047792","type": "directDebit","reusable": false,"owner": {"firstName": "John","lastName": "Doe","email": "john.doe@digitalriver.com","phoneNumber": "000-000-0000","address": {"line1": "98 Boulevard Saint-Germain","city": "Paris","state": "Île-de-France","country": "FR","postalCode": "75005"}},"amount": "778.39","currency": "EUR","state": "pending_redirect","creationIp": "209.87.178.4","createdTime": "2019-05-22T01:48:42.168Z","updatedTime": "2019-05-22T01:48:42.168Z","flow": "redirect","redirect": {"redirectUrl": "https://api.digitalriver.com:443/payments/redirects/4e478578-843a-48a5-beef-66c0dae99f5d?apiKey=pk_test_6cb0fe9ce3124093a9ad906f6c589e2d","returnUrl": "https://example.com?action=paymentSuccess"},"directDebit": {}}
When you create a Direct Debit source, the customer is required to authorize the charge through their payment provider. You can accomplish this by redirecting the customer to their payment provider.
To redirect your customer for authorization, use the redirectUrl
parameter in your createSource
response.
window.location.href = sourceResponse.redirect.redirectUrl;
The payment provider will present the customer with the transaction details where they can authorize or cancel the transaction. A successful authorization redirects the customer to the Direct Debit Return URL parameter you specified when you created the source.
Once authorized, you can use the source by either attaching it to a checkout or attaching it to a customer for multiple uses.
{"customerId": "5774321008","sourceId": "src_a78cfeae-f7ae-4719-8e1c-d05ec04e4d37"}
{"id": "5774321008","sourceId": "src_a78cfeae-f7ae-4719-8e1c-d05ec04e4d37"}
Direct Debit supports the following geographies and currencies.
Austria (AT), Belgium (BE), Bulgaria (BG), Croatia (HR), Cyprus (CY,) Czech Republic (CZ), Denmark (DK), Estonia (EE), Finland (FI), France (FR), Germany (DE), Greece (GR), Hungary (HU), Iceland (IS), Ireland (IE), Italy (IT), Latvia (LV), Liechtenstein (LI), Lithuania (LT), Luxembourg (LU,) Malta (MT), Monaco (MC), Netherlands (NL), Norway (NO), Poland (PL), Portugal (PT), Romania (RO), San Marino (SM), Slovakia (SK), Slovenia (SI), Spain (ES), Sweden (SE), Switzerland (CH), Vatican City State / Holy See Principality of Andorra (VA)
EUR