# Result

The merchant frontend always receives a result when the customer exits the Pledg funnel.

# Success

In case of success, the result is a JSON which fields depend on the payment mode (see back mode, transfer mode).

# Error

In case of error, the result is a JSON which format is the same for all payment modes.

The error is an object containing two properties: type and message, for instance:

{
    type: "invalid_request_error",
    message: "The provided property email is invalid"
}

The different values for error.type are the following:

Name Cause
Initialization errors
invalid_request_error Your settings are malformed (ex.: invalid merchantId, invalid email, invalid amountCents, ...)
maintenance The Pledg backend is under maintenance
internal_error The Pledg backend failed
network_error The network failed
Payment errors
payment_refused The PSP of Pledg failed
bad_gateway The PSP of the merchant failed (back mode only)
3DS_confirmation_timeout The 3DS payment process could not be completed on time
not_eligible The customer is not eligible to this type of payment (an authorization may appear on the customer account but no money will be debited)
aborted_purchase The purchase has been aborted by the merchant

When an error occurs, it is passed to the merchant frontend and the payment funnel is closed.

If a payment is rejected by the PSP (3DS failed, insufficient funds, etc.), an error message is displayed to the user inside the payment funnel, but no error is passed to the merchant frontend. Indeed, in such as situation, the user keeps the possibility to retry with another card.