{
"DirectDebitType": "SOFORT",
"Tag": "custom meta",
"AuthorId": "146476890",
"DebitedFunds": {
"Currency": "EUR",
"Amount": 1200
},
"Fees": {
"Currency": "EUR",
"Amount": 12
},
"CreditedWalletId": "148968396",
"ReturnURL": "http://example.com",
"TemplateURLOptions": ""PAYLINE"=>"https://...",
"Culture": "EN"
}
const mangopayInstance = require('mangopay4-nodejs-sdk')
const mangopay = new mangopayInstance({
clientId: 'your-client-id',
clientApiKey: 'your-api-key',
})
let myPayIn = {
PaymentType: 'DIRECT_DEBIT',
ExecutionType: 'WEB',
DirectDebitType: 'SOFORT',
AuthorId: '146476890',
Tag: 'Created with Mangopay Node.js SDK',
CreditedUserId: '146476890',
DebitedFunds: {
Currency: 'EUR',
Amount: 1000,
},
Fees: {
Currency: 'EUR',
Amount: 100,
},
CreditedWalletId: '148968396',
ReturnURL: 'http://example.com',
TemplateURL: 'http://example.com',
Culture: 'EN',
}
const createWebDirectDebitPayIn = async (payin) => {
return await mangopay.PayIns.create(payin)
.then((response) => {
console.info(response)
return response
})
.catch((err) => {
console.log(err)
return false
})
}
createWebDirectDebitPayIn(myPayIn)
require 'mangopay'
MangoPay.configure do |client|
client.preproduction = true
client.client_id = 'your-client-id'
client.client_apiKey = 'your-api-key'
client.log_file = File.join(Dir.pwd, 'mangopay.log')
end
def createWebDirectDebitPayIn(payInObject)
begin
response = MangoPay::PayIn::DirectDebit::Web.create(payInObject)
puts response
return response
rescue MangoPay::ResponseError => error
puts "Failed to create pay-in: #{error.message}"
puts "Error details: #{error.details}"
return false
end
end
myPayIn = {
DirectDebitType: 'SOFORT',
AuthorId: '146476890',
Tag: 'Created with Mangopay Node.js SDK',
CreditedUserId: '146476890',
DebitedFunds: {
Currency: 'EUR',
Amount: 1000,
},
Fees: {
Currency: 'EUR',
Amount: 100,
},
CreditedWalletId: '148968396',
ReturnURL: 'http://example.com',
TemplateURL: 'http://example.com',
Culture: 'EN',
}
createWebDirectDebitPayIn(myPayIn)
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.mangopay.MangoPayApi;
import com.mangopay.core.Money;
import com.mangopay.core.enumerations.CultureCode;
import com.mangopay.core.enumerations.CurrencyIso;
import com.mangopay.core.enumerations.DirectDebitType;
import com.mangopay.entities.PayIn;
import com.mangopay.entities.subentities.PayInExecutionDetailsWeb;
import com.mangopay.entities.subentities.PayInPaymentDetailsDirectDebit;
import com.mangopay.entities.subentities.PayInTemplateURLOptions;
public class CreateWebDirectDebitPayIn {
public static void main(String[] args) throws Exception {
MangoPayApi mangopay = new MangoPayApi();
mangopay.getConfig().setClientId("your-client-id");
mangopay.getConfig().setClientPassword("your-api-key");
var userId = "user_m_01HT2NFK7Z2BRQNGNHMY30VVTT";
var walletId = "wlt_m_01HTF5S9MG0XXBZ8A0550MED3Z";
PayIn payIn = new PayIn();
Money debitedFunds = new Money();
debitedFunds.setAmount(1000);
debitedFunds.setCurrency(CurrencyIso.EUR);
Money fees = new Money();
fees.setAmount(0);
fees.setCurrency(CurrencyIso.EUR);
PayInPaymentDetailsDirectDebit paymentDetails = new PayInPaymentDetailsDirectDebit();
paymentDetails.setDirectDebitType(DirectDebitType.GIROPAY);
paymentDetails.setStatementDescriptor("Apr2024");
PayInExecutionDetailsWeb executionDetails = new PayInExecutionDetailsWeb();
executionDetails.setReturnUrl("https://www.mangopay.com/docs/please-ignore");
executionDetails.setCulture(CultureCode.FR);
executionDetails.setTemplateURLOptions(new PayInTemplateURLOptions());
executionDetails.getTemplateURLOptions().PAYLINE = "https://www.maysite.com/payline_template/";
payIn.setAuthorId(userId);
payIn.setCreditedWalletId(walletId);
payIn.setDebitedFunds(debitedFunds);
payIn.setFees(fees);
payIn.setPaymentDetails(paymentDetails);
payIn.setExecutionDetails(executionDetails);
PayIn createPayIn = mangopay.getPayInApi().create(payIn);
Gson prettyPrint = new GsonBuilder().setPrettyPrinting().create();
String prettyJson = prettyPrint.toJson(createPayIn);
System.out.println(prettyJson);
}
}
from pprint import pprint
import mangopay
mangopay.client_id='your-client-id'
mangopay.apikey='your-api-key'
from mangopay.api import APIRequest
handler = APIRequest(sandbox=True)
from mangopay.resources import NaturalUser, DirectDebitWebPayIn
from mangopay.utils import Money
natural_user = NaturalUser.get('213753890')
direct_debit_web_payin = DirectDebitWebPayIn(
direct_debit_type = 'GIROPAY',
author_id = natural_user.id,
debited_funds = Money(amount='1000', currency='EUR'),
fees = Money(amount='0', currency='EUR'),
credited_wallet_id = '213754077',
return_url = 'http://example.com',
culture = 'EN',
tag = 'Created using the Mangopay Python SDK',
)
create_direct_debit_web_payin = direct_debit_web_payin.save()
pprint(create_direct_debit_web_payin)
using MangoPay.SDK;
using MangoPay.SDK.Core.Enumerations;
using MangoPay.SDK.Entities;
using MangoPay.SDK.Entities.POST;
using Newtonsoft.Json;
class Program
{
static async Task Main(string[] args)
{
MangoPayApi api = new MangoPayApi();
api.Config.ClientId = "your-client-id";
api.Config.ClientPassword = "your-api-key";
var userId = "user_m_01J2TZ261WZNDM0ZDRWGDYA4GN";
var walletId = "wlt_m_01J30991BXBB7VF28PBS82EWD3";
var returnUrl = "https://www.mangopay.com/docs/please-ignore/";
var payIn = new PayInDirectDebitPostDTO(
userId,
new Money { Amount = 100, Currency = CurrencyIso.EUR },
new Money { Amount = 10, Currency = CurrencyIso.EUR },
walletId, returnUrl,
CultureCode.FR, DirectDebitType.SOFORT
) {
TemplateURLOptions = new TemplateURLOptions { PAYLINE = "https://www.maysite.com/payline_template/" },
Tag = "Created using the Mangopay .NET SDK"
};
var createWebDirectDebitPayIn = await api.PayIns.CreateDirectDebitAsync(payIn);
string prettyPrint = JsonConvert.SerializeObject(createWebDirectDebitPayIn, Formatting.Indented);
Console.WriteLine(prettyPrint);
}
}
{
"DirectDebitType": "SOFORT",
"Id": "158596153",
"Tag": "custom meta",
"CreationDate": 1671609130,
"ResultCode": null,
"ResultMessage": null,
"AuthorId": "146476890",
"CreditedUserId": "146476890",
"DebitedFunds": {
"Currency": "EUR",
"Amount": 1200
},
"CreditedFunds": {
"Currency": "EUR",
"Amount": 1188
},
"Fees": {
"Currency": "EUR",
"Amount": 12
},
"Status": "CREATED",
"ExecutionDate": null,
"Type": "PAYIN",
"Nature": "REGULAR",
"CreditedWalletId": "148968396",
"DebitedWalletId": null,
"PaymentType": "DIRECT_DEBIT",
"ExecutionType": "WEB",
"RedirectURL": "https://api.sandbox.mangopay.com/Content/PaylineTemplateWidget?rp=7012a35bacc94224887444a6befdcabc&transactionId=158596153&token=14gpfysmDhsVLpjlL2451671609131187",
"ReturnURL": "http://www.my-site.com/returnURL/?transactionId=158596153",
"TemplateURL": "https://api.sandbox.mangopay.com/Content/PaylineTemplateWidget?rp=7012a35bacc94224887444a6befdcabc&transactionId=158596153",
"Culture": "EN"
}
Web direct debits
[Deprecated] Create a Web Direct-Debit PayIn
POST
/
v2.01
/
{ClientId}
/
payins
/
directdebit
/
web
{
"DirectDebitType": "SOFORT",
"Tag": "custom meta",
"AuthorId": "146476890",
"DebitedFunds": {
"Currency": "EUR",
"Amount": 1200
},
"Fees": {
"Currency": "EUR",
"Amount": 12
},
"CreditedWalletId": "148968396",
"ReturnURL": "http://example.com",
"TemplateURLOptions": ""PAYLINE"=>"https://...",
"Culture": "EN"
}
const mangopayInstance = require('mangopay4-nodejs-sdk')
const mangopay = new mangopayInstance({
clientId: 'your-client-id',
clientApiKey: 'your-api-key',
})
let myPayIn = {
PaymentType: 'DIRECT_DEBIT',
ExecutionType: 'WEB',
DirectDebitType: 'SOFORT',
AuthorId: '146476890',
Tag: 'Created with Mangopay Node.js SDK',
CreditedUserId: '146476890',
DebitedFunds: {
Currency: 'EUR',
Amount: 1000,
},
Fees: {
Currency: 'EUR',
Amount: 100,
},
CreditedWalletId: '148968396',
ReturnURL: 'http://example.com',
TemplateURL: 'http://example.com',
Culture: 'EN',
}
const createWebDirectDebitPayIn = async (payin) => {
return await mangopay.PayIns.create(payin)
.then((response) => {
console.info(response)
return response
})
.catch((err) => {
console.log(err)
return false
})
}
createWebDirectDebitPayIn(myPayIn)
require 'mangopay'
MangoPay.configure do |client|
client.preproduction = true
client.client_id = 'your-client-id'
client.client_apiKey = 'your-api-key'
client.log_file = File.join(Dir.pwd, 'mangopay.log')
end
def createWebDirectDebitPayIn(payInObject)
begin
response = MangoPay::PayIn::DirectDebit::Web.create(payInObject)
puts response
return response
rescue MangoPay::ResponseError => error
puts "Failed to create pay-in: #{error.message}"
puts "Error details: #{error.details}"
return false
end
end
myPayIn = {
DirectDebitType: 'SOFORT',
AuthorId: '146476890',
Tag: 'Created with Mangopay Node.js SDK',
CreditedUserId: '146476890',
DebitedFunds: {
Currency: 'EUR',
Amount: 1000,
},
Fees: {
Currency: 'EUR',
Amount: 100,
},
CreditedWalletId: '148968396',
ReturnURL: 'http://example.com',
TemplateURL: 'http://example.com',
Culture: 'EN',
}
createWebDirectDebitPayIn(myPayIn)
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.mangopay.MangoPayApi;
import com.mangopay.core.Money;
import com.mangopay.core.enumerations.CultureCode;
import com.mangopay.core.enumerations.CurrencyIso;
import com.mangopay.core.enumerations.DirectDebitType;
import com.mangopay.entities.PayIn;
import com.mangopay.entities.subentities.PayInExecutionDetailsWeb;
import com.mangopay.entities.subentities.PayInPaymentDetailsDirectDebit;
import com.mangopay.entities.subentities.PayInTemplateURLOptions;
public class CreateWebDirectDebitPayIn {
public static void main(String[] args) throws Exception {
MangoPayApi mangopay = new MangoPayApi();
mangopay.getConfig().setClientId("your-client-id");
mangopay.getConfig().setClientPassword("your-api-key");
var userId = "user_m_01HT2NFK7Z2BRQNGNHMY30VVTT";
var walletId = "wlt_m_01HTF5S9MG0XXBZ8A0550MED3Z";
PayIn payIn = new PayIn();
Money debitedFunds = new Money();
debitedFunds.setAmount(1000);
debitedFunds.setCurrency(CurrencyIso.EUR);
Money fees = new Money();
fees.setAmount(0);
fees.setCurrency(CurrencyIso.EUR);
PayInPaymentDetailsDirectDebit paymentDetails = new PayInPaymentDetailsDirectDebit();
paymentDetails.setDirectDebitType(DirectDebitType.GIROPAY);
paymentDetails.setStatementDescriptor("Apr2024");
PayInExecutionDetailsWeb executionDetails = new PayInExecutionDetailsWeb();
executionDetails.setReturnUrl("https://www.mangopay.com/docs/please-ignore");
executionDetails.setCulture(CultureCode.FR);
executionDetails.setTemplateURLOptions(new PayInTemplateURLOptions());
executionDetails.getTemplateURLOptions().PAYLINE = "https://www.maysite.com/payline_template/";
payIn.setAuthorId(userId);
payIn.setCreditedWalletId(walletId);
payIn.setDebitedFunds(debitedFunds);
payIn.setFees(fees);
payIn.setPaymentDetails(paymentDetails);
payIn.setExecutionDetails(executionDetails);
PayIn createPayIn = mangopay.getPayInApi().create(payIn);
Gson prettyPrint = new GsonBuilder().setPrettyPrinting().create();
String prettyJson = prettyPrint.toJson(createPayIn);
System.out.println(prettyJson);
}
}
from pprint import pprint
import mangopay
mangopay.client_id='your-client-id'
mangopay.apikey='your-api-key'
from mangopay.api import APIRequest
handler = APIRequest(sandbox=True)
from mangopay.resources import NaturalUser, DirectDebitWebPayIn
from mangopay.utils import Money
natural_user = NaturalUser.get('213753890')
direct_debit_web_payin = DirectDebitWebPayIn(
direct_debit_type = 'GIROPAY',
author_id = natural_user.id,
debited_funds = Money(amount='1000', currency='EUR'),
fees = Money(amount='0', currency='EUR'),
credited_wallet_id = '213754077',
return_url = 'http://example.com',
culture = 'EN',
tag = 'Created using the Mangopay Python SDK',
)
create_direct_debit_web_payin = direct_debit_web_payin.save()
pprint(create_direct_debit_web_payin)
using MangoPay.SDK;
using MangoPay.SDK.Core.Enumerations;
using MangoPay.SDK.Entities;
using MangoPay.SDK.Entities.POST;
using Newtonsoft.Json;
class Program
{
static async Task Main(string[] args)
{
MangoPayApi api = new MangoPayApi();
api.Config.ClientId = "your-client-id";
api.Config.ClientPassword = "your-api-key";
var userId = "user_m_01J2TZ261WZNDM0ZDRWGDYA4GN";
var walletId = "wlt_m_01J30991BXBB7VF28PBS82EWD3";
var returnUrl = "https://www.mangopay.com/docs/please-ignore/";
var payIn = new PayInDirectDebitPostDTO(
userId,
new Money { Amount = 100, Currency = CurrencyIso.EUR },
new Money { Amount = 10, Currency = CurrencyIso.EUR },
walletId, returnUrl,
CultureCode.FR, DirectDebitType.SOFORT
) {
TemplateURLOptions = new TemplateURLOptions { PAYLINE = "https://www.maysite.com/payline_template/" },
Tag = "Created using the Mangopay .NET SDK"
};
var createWebDirectDebitPayIn = await api.PayIns.CreateDirectDebitAsync(payIn);
string prettyPrint = JsonConvert.SerializeObject(createWebDirectDebitPayIn, Formatting.Indented);
Console.WriteLine(prettyPrint);
}
}
{
"DirectDebitType": "SOFORT",
"Id": "158596153",
"Tag": "custom meta",
"CreationDate": 1671609130,
"ResultCode": null,
"ResultMessage": null,
"AuthorId": "146476890",
"CreditedUserId": "146476890",
"DebitedFunds": {
"Currency": "EUR",
"Amount": 1200
},
"CreditedFunds": {
"Currency": "EUR",
"Amount": 1188
},
"Fees": {
"Currency": "EUR",
"Amount": 12
},
"Status": "CREATED",
"ExecutionDate": null,
"Type": "PAYIN",
"Nature": "REGULAR",
"CreditedWalletId": "148968396",
"DebitedWalletId": null,
"PaymentType": "DIRECT_DEBIT",
"ExecutionType": "WEB",
"RedirectURL": "https://api.sandbox.mangopay.com/Content/PaylineTemplateWidget?rp=7012a35bacc94224887444a6befdcabc&transactionId=158596153&token=14gpfysmDhsVLpjlL2451671609131187",
"ReturnURL": "http://www.my-site.com/returnURL/?transactionId=158596153",
"TemplateURL": "https://api.sandbox.mangopay.com/Content/PaylineTemplateWidget?rp=7012a35bacc94224887444a6befdcabc&transactionId=158596153",
"Culture": "EN"
}
Warning – Deprecated endpointThis endpoint is deprecated and will be removed. Both payment methods available via this endpoint, Sofort and Giropay, are no longer available.
Warning – Giropay no longer available after June 30, 2024Giropay’s operator Paydirekt has decided to cease the payment method’s services at the end of June, without providing a direct alternative. This decision by Paydirekt impacts the entire industry and is beyond our control.Effective July 1, 2024:
- Pay-ins will fail with the 101101 error
- Refunds will be possible for one year
Caution – Sofort no longer available after June 1, 2024These endpoints are the legacy integration of Sofort with Mangopay (
DirectDebitType is SOFORT).As of June 1, 2024, the Sofort payment method was no longer available with Mangopay. Klarna acquired deprecated the Sofort brand and technical solution.Platforms looking for Sofort are invited to integrate Klarna.Body parameters
string
required
Allowed values:
GIROPAY, SOFORTThe type of direct debit.string
Max. length: 255 charactersCustom data that you can add to this object.
For transactions (pay-in, transfer, payout), you can use this parameter to identify corresponding information regarding the user, transaction, or payment methods on your platform.
For transactions (pay-in, transfer, payout), you can use this parameter to identify corresponding information regarding the user, transaction, or payment methods on your platform.
string
required
The unique identifier of the user at the source of the transaction.
string
Default value: The unique identifier of the owner of the credited wallet.The unique identifier of the user whose wallet is credited.
object
required
Information about the debited funds.
Show properties
Show properties
string
required
Allowed values: The three-letter ISO 4217 code (EUR, GBP, etc.) of a supported currency (depends on feature, contract, and activation settings).The currency of the debited funds.
integer
required
An amount of money in the smallest sub-division of the currency (e.g., EUR 12.60 would be represented as
1260 whereas JPY 12 would be represented as just 12).object
required
Information about the fees taken by the platform for this transaction (and hence transferred to the Fees Wallet).
Show properties
Show properties
string
required
Allowed values: The three-letter ISO 4217 code (EUR, GBP, etc.) of a supported currency (depends on feature, contract, and activation settings).The currency of the fees.
integer
required
An amount of money in the smallest sub-division of the currency (e.g., EUR 12.60 would be represented as
1260 whereas JPY 12 would be represented as just 12).string
required
The unique identifier of the credited wallet.
string
required
Max. length: 220 charactersThe URL to which the user is returned after the payment, whether the transaction is successful or not.
object
deprecated
Caution: This customization feature is deprecated and must no longer be used.The URL of the SSL page of your customized payment page.
Show properties
Show properties
string
deprecated
Caution: This customization feature is deprecated and must no longer be used.The URL of the corresponding template with the Javascript widget.
string
required
Allowed values: One of the supported languages in the ISO 639-1 format: CS, DA, DE, EL, EN, ES, FI, FR, HU, IT, NL, NO, PL, PT, SK, SV.The language in which the payment page is to be displayed.
string
The unique reference generated for the profiling session, used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.Note: Parameter not returned by the API. Profiling feature available on request – contact Mangopay via the Dashboard for more information.
Responses
200
200
string
Returned values:
GIROPAY, SOFORTThe type of direct debit.string
Max length: 128 characters (see data formats for details)The unique identifier of the object.
string
Max. length: 255 charactersCustom data that you can add to this object.
For transactions (pay-in, transfer, payout), you can use this parameter to identify corresponding information regarding the user, transaction, or payment methods on your platform.
For transactions (pay-in, transfer, payout), you can use this parameter to identify corresponding information regarding the user, transaction, or payment methods on your platform.
Unix timestamp
The date and time at which the object was created.
string
The code indicating the result of the operation. This information is mostly used to handle errors or for filtering purposes.
string
The explanation of the result code.
string
The unique identifier of the user at the source of the transaction.
string
Default value: The unique identifier of the owner of the credited wallet.The unique identifier of the user whose wallet is credited.
object
Information about the debited funds.
Show properties
Show properties
string
Returned values: The three-letter ISO 4217 code (EUR, GBP, etc.) of a supported currency (depends on feature, contract, and activation settings).The currency of the debited funds.
integer
An amount of money in the smallest sub-division of the currency (e.g., EUR 12.60 would be represented as
1260 whereas JPY 12 would be represented as just 12).object
Information about the credited funds (
CreditedFunds = DebitedFunds - Fees).Show properties
Show properties
string
Returned values: The three-letter ISO 4217 code (EUR, GBP, etc.) of a supported currency (depends on feature, contract, and activation settings).The currency of the credited funds.
integer
An amount of money in the smallest sub-division of the currency (e.g., EUR 12.60 would be represented as
1260 whereas JPY 12 would be represented as just 12).object
Information about the fees taken by the platform for this transaction (and hence transferred to the Fees Wallet).
Show properties
Show properties
string
Returned values: The three-letter ISO 4217 code (EUR, GBP, etc.) of a supported currency (depends on feature, contract, and activation settings).The currency of the fees.
integer
An amount of money in the smallest sub-division of the currency (e.g., EUR 12.60 would be represented as
1260 whereas JPY 12 would be represented as just 12).string
Returned values:
CREATED, SUCCEEDED, FAILEDThe status of the transaction.Unix timestamp
The date and time at which the status changed to
SUCCEEDED, indicating that the transaction occurred. The statuses CREATED and FAILED return an ExecutionDate of null.string
Returned values:
PAYIN, TRANSFER, CONVERSION, PAYOUTThe type of the transaction.string
Returned values:
REGULAR, REPUDIATION, REFUND, SETTLEMENTThe nature of the transaction, providing more information about the context in which the transaction occurred:REGULAR– Relative to most of the transactions (pay-ins, payouts, and transfers) in a usual workflow.REPUDIATION– Automatic withdrawal of funds from the platform’s repudiation wallet as part of the dispute process (when the user has requested a chargeback).REFUND– Reimbursement of a transaction to the user (pay-in refund), to a wallet (transfer refund), or of a payout (payout refund, only initiated by Mangopay).SETTLEMENT– Transfer made to the repudiation wallet by the platform to settle a lost dispute.
string
The unique identifier of the credited wallet.
string
The unique identifier of the debited wallet.In the case of a pay-in, this value is always
null since there is no debited wallet.string
Returned values:
CARD, DIRECT_DEBIT, PREAUTHORIZED, BANK_WIREThe type of pay-in.string
Returned values:
WEB, DIRECT, EXTERNAL_INSTRUCTIONThe type of execution for the pay-in.string
The URL to which to redirect the user to complete the payment.Caution: This variable URL is specific to each payment. You must rely on the returned URL in full (host, path, and queries) and not hardcode any part of it.
string
Max. length: 220 charactersThe URL to which the user is returned after the payment, whether the transaction is successful or not.
string
deprecated
Caution: This customization feature is deprecated and must no longer be used. You must redirect on the
RedirectURL instead.The customized URL to which to redirect the user to complete the payment.string
Returned values: One of the supported languages in the ISO 639-1 format: CS, DA, DE, EL, EN, ES, FI, FR, HU, IT, NL, NO, PL, PT, SK, SV.The language in which the payment page is to be displayed.
{
"DirectDebitType": "SOFORT",
"Id": "158596153",
"Tag": "custom meta",
"CreationDate": 1671609130,
"ResultCode": null,
"ResultMessage": null,
"AuthorId": "146476890",
"CreditedUserId": "146476890",
"DebitedFunds": {
"Currency": "EUR",
"Amount": 1200
},
"CreditedFunds": {
"Currency": "EUR",
"Amount": 1188
},
"Fees": {
"Currency": "EUR",
"Amount": 12
},
"Status": "CREATED",
"ExecutionDate": null,
"Type": "PAYIN",
"Nature": "REGULAR",
"CreditedWalletId": "148968396",
"DebitedWalletId": null,
"PaymentType": "DIRECT_DEBIT",
"ExecutionType": "WEB",
"RedirectURL": "https://api.sandbox.mangopay.com/Content/PaylineTemplateWidget?rp=7012a35bacc94224887444a6befdcabc&transactionId=158596153&token=14gpfysmDhsVLpjlL2451671609131187",
"ReturnURL": "http://www.my-site.com/returnURL/?transactionId=158596153",
"TemplateURL": "https://api.sandbox.mangopay.com/Content/PaylineTemplateWidget?rp=7012a35bacc94224887444a6befdcabc&transactionId=158596153",
"Culture": "EN"
}
{
"DirectDebitType": "SOFORT",
"Tag": "custom meta",
"AuthorId": "146476890",
"DebitedFunds": {
"Currency": "EUR",
"Amount": 1200
},
"Fees": {
"Currency": "EUR",
"Amount": 12
},
"CreditedWalletId": "148968396",
"ReturnURL": "http://example.com",
"TemplateURLOptions": ""PAYLINE"=>"https://...",
"Culture": "EN"
}
const mangopayInstance = require('mangopay4-nodejs-sdk')
const mangopay = new mangopayInstance({
clientId: 'your-client-id',
clientApiKey: 'your-api-key',
})
let myPayIn = {
PaymentType: 'DIRECT_DEBIT',
ExecutionType: 'WEB',
DirectDebitType: 'SOFORT',
AuthorId: '146476890',
Tag: 'Created with Mangopay Node.js SDK',
CreditedUserId: '146476890',
DebitedFunds: {
Currency: 'EUR',
Amount: 1000,
},
Fees: {
Currency: 'EUR',
Amount: 100,
},
CreditedWalletId: '148968396',
ReturnURL: 'http://example.com',
TemplateURL: 'http://example.com',
Culture: 'EN',
}
const createWebDirectDebitPayIn = async (payin) => {
return await mangopay.PayIns.create(payin)
.then((response) => {
console.info(response)
return response
})
.catch((err) => {
console.log(err)
return false
})
}
createWebDirectDebitPayIn(myPayIn)
require 'mangopay'
MangoPay.configure do |client|
client.preproduction = true
client.client_id = 'your-client-id'
client.client_apiKey = 'your-api-key'
client.log_file = File.join(Dir.pwd, 'mangopay.log')
end
def createWebDirectDebitPayIn(payInObject)
begin
response = MangoPay::PayIn::DirectDebit::Web.create(payInObject)
puts response
return response
rescue MangoPay::ResponseError => error
puts "Failed to create pay-in: #{error.message}"
puts "Error details: #{error.details}"
return false
end
end
myPayIn = {
DirectDebitType: 'SOFORT',
AuthorId: '146476890',
Tag: 'Created with Mangopay Node.js SDK',
CreditedUserId: '146476890',
DebitedFunds: {
Currency: 'EUR',
Amount: 1000,
},
Fees: {
Currency: 'EUR',
Amount: 100,
},
CreditedWalletId: '148968396',
ReturnURL: 'http://example.com',
TemplateURL: 'http://example.com',
Culture: 'EN',
}
createWebDirectDebitPayIn(myPayIn)
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.mangopay.MangoPayApi;
import com.mangopay.core.Money;
import com.mangopay.core.enumerations.CultureCode;
import com.mangopay.core.enumerations.CurrencyIso;
import com.mangopay.core.enumerations.DirectDebitType;
import com.mangopay.entities.PayIn;
import com.mangopay.entities.subentities.PayInExecutionDetailsWeb;
import com.mangopay.entities.subentities.PayInPaymentDetailsDirectDebit;
import com.mangopay.entities.subentities.PayInTemplateURLOptions;
public class CreateWebDirectDebitPayIn {
public static void main(String[] args) throws Exception {
MangoPayApi mangopay = new MangoPayApi();
mangopay.getConfig().setClientId("your-client-id");
mangopay.getConfig().setClientPassword("your-api-key");
var userId = "user_m_01HT2NFK7Z2BRQNGNHMY30VVTT";
var walletId = "wlt_m_01HTF5S9MG0XXBZ8A0550MED3Z";
PayIn payIn = new PayIn();
Money debitedFunds = new Money();
debitedFunds.setAmount(1000);
debitedFunds.setCurrency(CurrencyIso.EUR);
Money fees = new Money();
fees.setAmount(0);
fees.setCurrency(CurrencyIso.EUR);
PayInPaymentDetailsDirectDebit paymentDetails = new PayInPaymentDetailsDirectDebit();
paymentDetails.setDirectDebitType(DirectDebitType.GIROPAY);
paymentDetails.setStatementDescriptor("Apr2024");
PayInExecutionDetailsWeb executionDetails = new PayInExecutionDetailsWeb();
executionDetails.setReturnUrl("https://www.mangopay.com/docs/please-ignore");
executionDetails.setCulture(CultureCode.FR);
executionDetails.setTemplateURLOptions(new PayInTemplateURLOptions());
executionDetails.getTemplateURLOptions().PAYLINE = "https://www.maysite.com/payline_template/";
payIn.setAuthorId(userId);
payIn.setCreditedWalletId(walletId);
payIn.setDebitedFunds(debitedFunds);
payIn.setFees(fees);
payIn.setPaymentDetails(paymentDetails);
payIn.setExecutionDetails(executionDetails);
PayIn createPayIn = mangopay.getPayInApi().create(payIn);
Gson prettyPrint = new GsonBuilder().setPrettyPrinting().create();
String prettyJson = prettyPrint.toJson(createPayIn);
System.out.println(prettyJson);
}
}
from pprint import pprint
import mangopay
mangopay.client_id='your-client-id'
mangopay.apikey='your-api-key'
from mangopay.api import APIRequest
handler = APIRequest(sandbox=True)
from mangopay.resources import NaturalUser, DirectDebitWebPayIn
from mangopay.utils import Money
natural_user = NaturalUser.get('213753890')
direct_debit_web_payin = DirectDebitWebPayIn(
direct_debit_type = 'GIROPAY',
author_id = natural_user.id,
debited_funds = Money(amount='1000', currency='EUR'),
fees = Money(amount='0', currency='EUR'),
credited_wallet_id = '213754077',
return_url = 'http://example.com',
culture = 'EN',
tag = 'Created using the Mangopay Python SDK',
)
create_direct_debit_web_payin = direct_debit_web_payin.save()
pprint(create_direct_debit_web_payin)
using MangoPay.SDK;
using MangoPay.SDK.Core.Enumerations;
using MangoPay.SDK.Entities;
using MangoPay.SDK.Entities.POST;
using Newtonsoft.Json;
class Program
{
static async Task Main(string[] args)
{
MangoPayApi api = new MangoPayApi();
api.Config.ClientId = "your-client-id";
api.Config.ClientPassword = "your-api-key";
var userId = "user_m_01J2TZ261WZNDM0ZDRWGDYA4GN";
var walletId = "wlt_m_01J30991BXBB7VF28PBS82EWD3";
var returnUrl = "https://www.mangopay.com/docs/please-ignore/";
var payIn = new PayInDirectDebitPostDTO(
userId,
new Money { Amount = 100, Currency = CurrencyIso.EUR },
new Money { Amount = 10, Currency = CurrencyIso.EUR },
walletId, returnUrl,
CultureCode.FR, DirectDebitType.SOFORT
) {
TemplateURLOptions = new TemplateURLOptions { PAYLINE = "https://www.maysite.com/payline_template/" },
Tag = "Created using the Mangopay .NET SDK"
};
var createWebDirectDebitPayIn = await api.PayIns.CreateDirectDebitAsync(payIn);
string prettyPrint = JsonConvert.SerializeObject(createWebDirectDebitPayIn, Formatting.Indented);
Console.WriteLine(prettyPrint);
}
}
Was this page helpful?