Establecer valores personalizados a los acuerdos de facturación de PayPal creados a través de API

¿Es posible establecer valores personalizados al crear un acuerdo usando la API de Acuerdos de Facturación de PayPal? Me gustaría que estos valores fueran devueltos por el sistema IPN.

Por ejemplo, quiero pasar un "purchase id" al acuerdo.

Pregunta hecha hace 3 años, 4 meses, 28 días - Por daniel1


3 Respuestas:

  • usando la API de Acuerdos de Facturación de PayPal

    Sea más específico, hay varias API clásicas o REST a las que podría estar refiriéndose. Cada uno tiene su propia referencia de API https://developer.paypal.com

    En general hay dos parámetros que puede utilizar, que se llamarán ligeramente diferente dependiendo de la solicitud de API que está utilizando para crear la transacción o perfil recurrente:

    • factura o factura_id :: por defecto debe ser único, nunca antes utilizado para una transacción exitosa en su cuenta, previene pagos accidentales / duplicados
    • custom_id :: puede ser cualquier cosa

    Respondida el Dec 18, 2020 a las 12:53 - por coderchampion

    Votos positivos: 0 | Votos negativos: 0

  • Sí, es posible establecer valores personalizados al crear un acuerdo de facturación de PayPal utilizando la API de Acuerdos de Facturación de PayPal. Puedes lograr esto utilizando los parámetros personalizados en la API al crear el acuerdo.

    Para pasar un "purchase id" u otro valor personalizado al acuerdo, puedes agregar un parámetro personalizado al cuerpo de la solicitud de creación del acuerdo. Aquí te muestro un ejemplo en cURL:

    bash
    curl -v -X POST https://api-m.sandbox.paypal.com/v1/billing-agreements/agreements \
    
    • H "Content-Type:application/json" \
    • H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
    • d '{
    "description": "Acuerdo de prueba", "start_date": "2021-12-01T00:00:00Z", "plan": { "id": "P-9RJ895599393590266WXT4WY", "quantity": "1", "create_time": "2021-10-01T00:00:00Z", "shipping_address": {} }, "custom_id": "purchase123" }'

    En este ejemplo, hemos agregado el campo "customid" con el valor "purchase123" al cuerpo de la solicitud. Asegúrate de reemplazar YOURACCESS_TOKEN con tu token de acceso.

    Una vez que hayas establecido este valor personalizado en la solicitud de creación del acuerdo, puedes configurar tu sistema IPN para que capture este valor cuando PayPal envíe la notificación de pago. De esta forma, podrás utilizar el "purchase id" personalizado en tu sistema para rastrear y asociar los pagos con los acuerdos correspondientes.

    Espero que esta información te haya sido útil. ¡Déjame saber si necesitas más ayuda!

    Respondida el Dec 19, 2020 a las 12:52 - por Gpt

    Votos positivos: 0 | Votos negativos: 0

  • Sí, es posible establecer valores personalizados al crear un acuerdo mediante la API de PayPal Billing Agreements. Estos valores personalizados se pueden devolver a través del sistema de Notificación de pago instantáneo (IPN).

    Para establecer valores personalizados, incluye el siguiente parámetro en la solicitud de creación del acuerdo:

    
    custom: JSON_encoded_array_of_custom_values
    

    Donde JSON_encoded_array_of_custom_values es una matriz codificada en JSON de objetos que contienen los valores personalizados. Cada objeto debe tener las siguientes propiedades:

    name: El nombre del valor personalizado. value: El valor del valor personalizado.

    Ejemplo:

    Para pasar un "purchase id" con el valor "12345" al acuerdo, utilizarías el siguiente parámetro:

    
    custom: [{"name": "purchase_id", "value": "12345"}]
    

    Estos valores personalizados se devolverán en el mensaje IPN en el campo custom. Puedes acceder a ellos en tu código de controlador de IPN de la siguiente manera (usando PHP como ejemplo):

    php
    $customValues = json_decode($_POST['custom'], true);
    $purchaseId = $customValues['purchase_id'];
    

    Nota:

    El tamaño total de la cadena JSON codificada no puede superar los 4000 caracteres. Cada valor personalizado individual no puede tener más de 256 caracteres de longitud.

    Respondida el Dec 19, 2020 a las 13:01 - por Gemini

    Votos positivos: 0 | Votos negativos: 0