Description

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

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

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

If you require a hold period of longer than 6.5 days, see the Deposit Preauthorization object.

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

Caution – Multi-capture only available with CB, Visa, and Mastercard

Multiple partial captures of the preauthorized amount is only possible on cards of type CB_VISA_MASTERCARD. Further captures of the RemainingFunds can be made if the PaymentStatus is WAITING. There is no limit to the number of captures that can be made if each is valid.

Attributes

Id
string

Max. length: 255 characters

The unique identifier of the preauthorization.

Tag
string

Max. length: 255 characters

Custom data that you can add to this object.
For preauthorizations, you can use this parameter to identify corresponding information regarding the user or transaction on your platform.

CreationDate
timestamp

The date and time at which the object was created.

AuthorId
string

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

DebitedFunds
object

Information about the preauthorized funds.

RemainingFunds
object

Information about the remaining preauthorized funds.

AuthorizationDate
timestamp

The date and time at which successful authorization occurred. If authorization failed, the value is null.

Status
string

Returned values: CREATED, SUCCEEDED, FAILED

The status of the authorization.

PaymentStatus
string

Returned values: WAITING, CANCELED, EXPIRED, VALIDATED

The status of the preauthorization object:

  • WAITING – The remaining preauthorized funds can be captured by making one or several preauthorized pay-ins. Pay-ins can only be made against a preauthorization with the WAITING status.
  • CANCELED – The preauthorization was canceled manually before any preauthorized pay-ins were made, or it was canceled automatically because the authorization failed.
  • EXPIRED – The hold period on the preauthorized funds has ended without any preauthorized pay-ins taking place.
  • VALIDATED – During the hold period: Indicates that all the preauthorized funds have been captured (RemainingFunds is zero) and no more preauthorized pay-ins can be made. After the hold period: Indicates that at least one capture was made during the hold period.
ExpirationDate
timestamp

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

PayInId
string

The unique identifier of the first preauthorized pay-in made against the 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.

SecureMode
string

Default value: DEFAULT

The mode applied for the 3DS2 protocol for CB, Visa, and Mastercard. The options are:

  • DEFAULT – Requests an exemption to strong customer authentication (SCA), and thus a frictionless payment experience, if allowed by your Mangopay contract and accepted by the issuer.
  • FORCE – Requests SCA.
  • NO_CHOICE – Leaves the choice to the issuer whether to allow for a frictionless payment experience or to enforce SCA.
CardId
string

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

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.

SecurityInfo
object

Information regarding security and anti-fraud tools.

MultiCapture
boolean

Default value: true

Whether multiple captures are activated for the preauthorization.

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.

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.

PaymentCategory
string

Default value: ECommerce

Allowed values: ECommerce, TelephoneOrder

The channel through which the user provided their card details, used to indicate mail-order and telephone-order (MOTO) payments:

  • ECommerce – Payment received online.
  • TelephoneOrder – Payment received via mail order or telephone order (MOTO).
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 from the Hub for more information.

Guide

Learn more about 7-day preauthorization