Create a Web Direct-Debit PayIn

Deprecated
<Warning icon="fa-regular fa-triangle-exclamation"> **Warning – Deprecated endpoint** This endpoint is deprecated and will be removed. Both payment methods available via this endpoint, Sofort and Giropay, are no longer available. </Warning> <Warning icon="fa-regular fa-triangle-exclamation"> **Warning – Giropay no longer available after June 30, 2024** Giropay’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 <a href="/errors/codes/101101">101101</a> error - Refunds will be possible for one year  This change affects both the <a href="/api-reference/giropay">new</a> integration and this legacy one. Our team is ready to assist you with your integration of alternatives like <a href="/guides/payment-methods/klarna">Klarna</a>, <a href="/guides/payment-methods/paypal">PayPal</a>, or <a href="/guides/payment-methods/banking/virtual-iban">virtual IBANs</a> for the German market. Please reach out <a href="https://hub.mangopay.com/" target="_blank">via the Dashboard</a>.  </Warning> <Warning icon="fa-regular fa-triangle-exclamation"> **Caution – Sofort no longer available after June 1, 2024** These 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](/guides/payment-methods/klarna). </Warning>

Authentication

AuthorizationBearer
Bearer authentication of the form `Bearer <token>`, where token is your auth token. If your platform is using a [proxy](/guides/sca/proxy-management) to take SCA-triggering action on behalf of users, you also need to integrate [mTLS authentication](/guides/sca/platform) and use the `api-mtls` base URL.

Path parameters

ClientIdstringRequired
Platform's API account identifier, associated with the API key.

Request

This endpoint expects an object.
DirectDebitTypestringRequired

Allowed values: GIROPAY, SOFORT

The type of direct debit.

AuthorIdstringRequired
The unique identifier of the user at the source of the transaction.
DebitedFundsobjectRequired
Information about the debited funds.
FeesobjectRequired
Information about the fees.
CreditedWalletIdstringRequired
The unique identifier of the credited wallet.
ReturnURLstringRequired

Max. length: 220 characters

The URL to which the user is returned after the payment, whether the transaction is successful or not.

CulturestringRequired

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.

TagstringOptional

Max. length: 255 characters

Custom data that you can add to this object.

CreditedUserIdstringOptional

Default value: The unique identifier of the owner of the credited wallet.

The unique identifier of the user whose wallet is credited.

FlowDescriptorobjectOptional

Information about the Owner beneficiaries targeted by the pay-in and its subsequent transfers, who must all be KYC/KYB verified when the pay-in request is made (read more).

If the FlowDescriptor.Beneficiaries is sent in the API request, then:

  • The transaction’s CreditedWalletId holder is disregarded in KYC/KYB checks.
  • ALL UserId values in the array must be one of:
    • OWNER whose KYCLevel is REGULAR
    • PLATFORM

The pay-in Status becomes FAILED with ResultCode 002951 if at least one FlowDescriptor.Beneficiaries.UserId is:

  • PAYER
  • OWNER whose KYCLevel is LIGHT

If the FlowDescriptor.Beneficiaries is not sent in the API request, then the CreditedWalletId holder is subject to KYC/KYB checks. This property is optional for backwards compatibility but is recommended for all pay-in flows, even when the CreditedWalletId holder is a PAYER or the same value as one of the FlowDescriptor.Beneficiaries.

TemplateURLOptionsobjectOptional

Caution: This customization feature is deprecated and must no longer be used.

The URL of the SSL page of your customized payment page.

ProfilingAttemptReferencestringOptional

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.

Response

Success
DirectDebitTypestring

Returned values: GIROPAY, SOFORT

The type of direct debit.

Idstring

Max length: 128 characters (see data formats for details)

The unique identifier of the object.

Tagstring

Max. length: 255 characters

Custom data that you can add to this object.

CreationDateinteger

Unix timestamp (UTC) of the date and time the object was created.

ResultCodestring

The code indicating the result of the operation. This information is mostly used to handle errors or for filtering purposes.

ResultMessagestring
The explanation of the result code.
AuthorIdstring
The unique identifier of the user at the source of the transaction.
CreditedUserIdstring

Default value: The unique identifier of the owner of the credited wallet.

The unique identifier of the user whose wallet is credited.

FlowDescriptorobject

Information about the Owner beneficiaries targeted by the pay-in and its subsequent transfers, who must all be KYC/KYB verified when the pay-in request is made (read more).

If the FlowDescriptor.Beneficiaries is sent in the API request, then:

  • The transaction’s CreditedWalletId holder is disregarded in KYC/KYB checks.
  • ALL UserId values in the array must be one of:
    • OWNER whose KYCLevel is REGULAR
    • PLATFORM

The pay-in Status becomes FAILED with ResultCode 002951 if at least one FlowDescriptor.Beneficiaries.UserId is:

  • PAYER
  • OWNER whose KYCLevel is LIGHT

If the FlowDescriptor.Beneficiaries is not sent in the API request, then the CreditedWalletId holder is subject to KYC/KYB checks. This property is optional for backwards compatibility but is recommended for all pay-in flows, even when the CreditedWalletId holder is a PAYER or the same value as one of the FlowDescriptor.Beneficiaries.

DebitedFundsobject
Information about the debited funds.
CreditedFundsobject

Information about the credited funds (CreditedFunds = DebitedFunds - Fees).

Feesobject
Information about the fees.
Statusstring

Returned values: CREATED, SUCCEEDED, FAILED

The status of the transaction.

ExecutionDateinteger

Unix timestamp (UTC) of the date and time the status changed to SUCCEEDED, indicating that the transaction occurred. The statuses CREATED and FAILED return an ExecutionDate of null.

Typestring

Returned values: PAYIN, TRANSFER, CONVERSION, PAYOUT

The type of the transaction.

Naturestring

Returned values: REGULAR, REPUDIATION, REFUND, SETTLEMENT

The 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.
CreditedWalletIdstring
The unique identifier of the credited wallet.
DebitedWalletIdstring

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.

PaymentTypestring

Returned values: DIRECT_DEBIT

The payment type of the pay-in.

ExecutionTypestring

Returned values: WEB

The execution type of the pay-in.

RedirectURLstring

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.

ReturnURLstring

Max. length: 220 characters

The URL to which the user is returned after the payment, whether the transaction is successful or not.

TemplateURLstring

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.

Culturestring

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.