Confirmar o cancelar un Advanced Payment - Advanced Payment - Mercado Pago Developers
¿Qué documentación quieres buscar?

¿No sabes cómo empezar la integración? 

Accede a los primeros pasos
Confirmar o cancelar un advanced payment

PUT

/v1/advanced_payments/{advanced_payment_id}
Este endpoint le permite realizar dos acciones. Capturar o cancelar un advanced payment. Para confirmar, es necesario enviar los datos de pago de la billetera y el campo de captura en true. Para cancelar, envíe los detalles de pago de su billetera y el campo de status "cancelled".
Parámetros para la solicitud
advanced_payment_id

REQUERIDO

number
Localización: pathAdvanced payment identifier
capture
boolean
Localización: bodyEste node solo debe enviarse cuando necesite confirmar un Advanced Payment. Es un campo booleano que se encuentra en pagos de dos pasos (como tarjeta de débito). En este tipo de pago, que se realiza de forma asíncrona, primero se reserva el valor de la compra (capture = false). Esta cantidad se captura y no se debita de la cuenta al instante. Cuando el dinero se transfiere realmente al cobrador (que recibe el pago), se captura la cantidad (capture = true).
status
string
Localización: bodyEste node solo debe enviarse cuando sea necesario cancelar un Advanced Payment. El valor a introducir es 'cancelado'.
wallet_payment

REQUERIDO

object
Localización: bodyIndica que es un advanced payment de un vendedor con una vinculación previa de Wallet Connect.
Parámetros de respuesta
id
number
Localización: bodyID único que identifica el advanced payment.
payments
array
Localización: bodyList of payments.
wallet_payment

REQUERIDO

object
Localización: bodyIndica que es un advanced payment de un vendedor con una vinculación previa de Wallet Connect.
disbursements
array
Localización: body
Solicitud
curl
curl -X PUT \
      'https://api.mercadopago.com/v1/advanced_payments/{advanced_payment_id}' \
       -H 'Authorization: Bearer YOUR_ACCESS_TOKEN \
       -H 'Content-Type: application/json' \ 
      -d '{
  "capture": true,
  "wallet_payment": {
    "transaction_amount": 125.98,
    "description": "Payment for the purchase of furniture",
    "external_reference": "Payment_seller_123"
  },
  "status": "cancelled"
}'
Respuesta
json
{
  "id": 10234567,
  "payments": [
    {
      "id": 3870106238,
      "status_detail": "approved_id",
      "payment_method_id": "credit_card_id",
      "transaction_amount": 700.5,
      "installments": 1,
      "description": "Payment for the purchase of furniture",
      "capture": true,
      "external_reference": "payment_123"
    }
  ],
  "wallet_payment": {
    "transaction_amount": 125.98,
    "description": "Payment for the purchase of furniture",
    "external_reference": "Payment_seller_123"
  },
  "disbursements": [
    {
      "collector_id": "collectorId"
    }
  ],
  "payer": {
    "id": 8879
  },
  "site_id": "MLA",
  "binary_mode": true,
  "date_created": "2018-10-20T09:34:20.518-04:00",
  "date_last_updated": "2018-10-20T09:34:20.518-04:00"
}
Errores
400bad_request
400Invalid transaction amount in wallet payments.
400Field transaction_amount is required.
400Some of the payment methods don't support deferred capture
400Field payment_type_id is required.
400Maximum disbursements allowed is 100
400Field id must not be blank
400external_reference is required.
500bad_request
500Internal server error
500Internal Error in Discarded List.