Preauthorized payments
Create a PayPal Deposit Preauthorization
POST
This endpoint creates a Deposit Preauthorization with
PaymentType of PAYPAL and returns the PayPal RedirectURL on which the user can preauthorize the debited funds.
Once authorized (Status becomes SUCCEEDED), you can capture the funds using the POST Create a Deposit Preauthorized PayIn endpoint.
Best practice - Capture funds within 3 daysPayPal recommends that you capture preauthorized funds within 3 days (using POST Create a Preauthorized PayPal PayIn). This is because the success of the capture is subject to risk and the availability of funds on the card (or other funding instrument) that the user has linked to their PayPal account.
Body parameters
string
required
The unique identifier of the user at the source of the transaction.
object
required
Information about the preauthorized funds.
string
required
Max. length: 255 charactersThe URL to which the user is returned after the payment, whether the transaction is successful or not.
string
The URL to which the user is returned after canceling the payment. If not provided, the Cancel button returns the user to the
RedirectURL.string
The unique identifier of the Data Collection object containing the data sent for this pay-in via the POST Submit data for a PayPal PayIn endpoint.Each PayPal pay-in or preauth requires a new
DataCollectionId. The property is not returned on the pay-in endpoints.string
Allowed values:
SET_PROVIDED_ADDRESS, GET_FROM_FILE, NO_SHIPPINGInformation about the shipping address behavior on the PayPal payment page:SET_PROVIDED_ADDRESS- TheShippingparameter becomes required and its values are displayed to the end user, who is not able to modify them.GET_FROM_FILE– TheShippingparameter is ignored and the end user can choose from registered addresses.NO_SHIPPING– No shipping address section is displayed.
object
Required if
ShippingPreference is SET_PROVIDED_ADDRESS.Information about the end user’s shipping address, managed by ShippingPreference.string
Max. length: 127 characters (truncated after)The platform’s order reference for the transaction.
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
Max. length: 10 characters; only alphanumeric and spacesCustom 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.
string
Allowed values: One of the supported languages in the ISO 639-1 format: AT, BR, CA, CH, CN, DE, DK, ES, FR, GB, ID, IL, IT, JK, JP, NL, NO, PL, PT, RU, SE, TH, TR, TW, US.The language in which the PayPal 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:
SET_PROVIDED_ADDRESS, GET_FROM_FILE, NO_SHIPPINGInformation about the shipping address behavior on the PayPal payment page:SET_PROVIDED_ADDRESS- TheShippingparameter becomes required and its values are displayed to the end user, who is not able to modify them.GET_FROM_FILE– TheShippingparameter is ignored and the end user can choose from registered addresses.NO_SHIPPING– No shipping address section is displayed.
string
The email address registered on the PayPal account used to make the payment.
string
Max. length: 127 characters (truncated after)The platform’s order reference for the transaction.
string
The URL to which the user is returned after canceling the payment. If not provided, the Cancel button returns the user to the RedirectURL.
string
PayPal’s unique identifier for the order.
string
The first name of the buyer.
string
The mobile phone number of the buyer.
string
The country of the buyer.
string
The last name of the buyer.
string
The PayPal identifier of the buyer.
array (object)
Shipping information of the
LineItems added to the pay-in object.string
Max. length: 255 charactersThe unique identifier of the PayPal preauthorization.
Unix timestamp
The date and time at which the object was created.
Unix 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
At the expiration date, the deposit preauthorization’s
PaymentStatus changes to EXPIRED if no captures were made.string
The unique identifier of the user at the source of the transaction.
object
Information about the preauthorized funds.
string
Returned values:
CREATED, SUCCEEDED, FAILEDThe status of the authorization.string
Returned values:
WAITING, CANCELED, CANCEL_REQUESTED, EXPIRED, VALIDATED, FAILEDThe payment status of the deposit preauthorization object:WAITING– The deposit preauthorization can be used: the preauthorized funds can be captured (ifStatusisSUCCEEDED) or the preauthorization can be canceled manually.CANCELED– Value to pass to manually cancel the deposit preauthorization before use; 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.VALIDATED– Indicates that the preauthorized funds were captured.FAILED– The pay-in against the preauthorization has failed, but a retry may be possible.
object
Information about the deposit preauthorized pay-ins made against the deposit preauthorization.
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
Returned values:
PAYPALThe type of pay-in.string
Returned values:
WEB, DIRECT, EXTERNAL_INSTRUCTIONThe type of execution for the pay-in.string
Max. length: 10 characters; only alphanumeric and spacesCustom 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.
string
Returned values: One of the supported languages in the ISO 639-1 format: AT, BR, CA, CH, CN, DE, DK, ES, FR, GB, ID, IL, IT, JK, JP, NL, NO, PL, PT, RU, SE, TH, TR, TW, US.The language in which the PayPal payment page is to be displayed.
object
Returned
null because the billing address is not applicable to PayPal preauth.object
Information about the end user’s shipping address, managed by
ShippingPreference.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.