Description

The Deposit Preauthorization object enables you to reserve funds on a card so they can be captured later. A deposit preauthorization thus has two parts:

  • Authorization of the transaction, handled by the Deposit Preauthorization object
  • Capture of the funds, handled by the Deposit Preauthorized PayIn object

The preauthorized funds can be captured within 29.5 days of a successful authorization.

Note that preauthorizations may not be permitted by some issuers and for some card types.

The Deposit Preauthorization feature also allows you to charge a complement against it, either on top of the preauthorized amount or instead of it (by declaring a no-show).

Caution – Multi-capture not possible with the Deposit Preauthorization

A maximum of two captures are possible against a Deposit Preauthorization: (i) the initial pay-in to capture the preauthorized amount, and/or (ii) a pay-in complement to capture an additional amount.

Multiple partial captures are not possible with the Deposit Preauthorization like they are with the Preauthorization object.

Attributes

Id
string

Max. length: 255 characters

CreationDate
timestamp

The date and time at which the object was created.

ExpirationDate
timestamp

The date and time at which the hold period ends and the preauthorized funds are released.
At the expiration date, the deposit preauthorization’s PaymentStatus changes to EXPIRED if no captures were made.

AuthorId
string

The unique identifier of the user at the source of the transaction.

DebitedFunds
object

Information about the preauthorized funds.

Status
string

Returned values: CREATED, SUCCEEDED, FAILED

The status of the authorization.

PaymentStatus
string

Returned values: WAITING, CANCELED, CANCEL_REQUESTED, EXPIRED, TO_BE_COMPLETED, NO_SHOW_REQUESTED, NO_SHOW, VALIDATED, FAILED

The payment status of the deposit preauthorization object:

  • WAITING – The deposit preauthorization can be used: the preauthorized funds can be captured (without or prior to complement); a no-show can be declared; or the preauthorization can be canceled manually.
  • CANCELED – Value to pass to manually cancel the deposit preauthorization before use (whether for capture or no-show); indicates that the deposit preauthorization was canceled manually.
  • CANCEL_REQUESTED – The cancellation of the deposit preauthorization has been requested but not yet processed.
  • EXPIRED – The hold period on the preauthorized funds has ended without it being used (whether for capture or no-show).
  • TO_BE_COMPLETED – The preauthorized funds were captured (prior to complement) but the complement has not yet been captured.
  • NO_SHOW_REQUESTED – Value to pass to request a no-show, signaling no capture of the preauthorized funds but the intent to capture a complement.
  • NO_SHOW – A no-show was requested but a complement not yet been captured.
  • VALIDATED – Indicates either (i) that the preauthorized funds were captured without complement; (ii) that the preauthorized funds and a complement were captured; or (iii) that a no-show was declared and a complement was captured.
  • FAILED – The action against the preauthorization has failed (whether capture without complement, capture prior to complement, no-show request, complement), but a retry may be possible.
PayinsLinked
object

Information about the deposit preauthorized pay-ins made against the deposit preauthorization.

ResultCode
string

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

ResultMessage
string

The explanation of the result code.

CardId
string

The unique identifier of the Card object, obtained during the card registration process.

PreferredCardNetwork
string

Returned values: VISA, MASTERCARD, CB, MAESTRO

The card network to use, as chosen by the cardholder, in case of co-branded card products.

SecureModeReturnURL
string

Max. length: 255 characters

The URL to which users are automatically returned after 3DS2 if it is triggered (i.e., if the SecureModeNeeded parameter is set to true).

SecureModeRedirectURL
string

Max. length: 255 characters

The URL to which to redirect the user to proceed to 3DS2 validation.

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.

SecureModeNeeded
boolean

Whether or not the SecureMode was used.

PaymentType
string

Returned values: CARD, DIRECT_DEBIT, PREAUTHORIZED, BANK_WIRE

The type of pay-in.

ExecutionType
string

Returned values: WEB, DIRECT, EXTERNAL_INSTRUCTION

The type of execution for the pay-in.

StatementDescriptor
string

Max. length: 10 characters; only alphanumeric and spaces

Custom description to appear on the user’s bank statement along with the platform name. Different banks may show more or less information. See the Customizing bank statement references article for details.

Culture
string

Returned values: One of the supported languages in the ISO 639-1 format: DE, EN, ES, FR, IT, NL, PL, PT.

The language in which the payment page is to be displayed.

BrowserInfo
object

Information about the browser used by the end user (author) to perform the payment.

IpAddress
string

The IP address of the end user initiating the transaction, in IPV4 or IPV6 format.

Billing
object

Default value: FirstName, LastName, and Address information of the Shipping object if any, otherwise the user (author).

Information about the end user billing address. If left empty, the default values will be automatically taken into account.

Shipping
object

Default value: FirstName, LastName, and Address information of the Billing object, if supplied, otherwise of the user (author).

Information about the end user’s shipping address.

Requested3DSVersion
string

Returned values: V1, V2_1

The 3DS protocol version to be applied to the transaction.

Applied3DSVersion
string

Returned values: V1, V2_1

The 3DS protocol version applied to the transaction.

Tag
string

Max. length: 255 characters

Custom data that you can add to this object.

CardInfo
string

Information about the card used for the transaction. 
If the information or data is not available, null is returned.

ProfilingAttemptReference
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.

Guide

Learn more about 30-day preauthorization