Crear preferencia para mĂșltiples Ă­tems - Configuraciones adicionales - Mercado Pago Developers

Crear preferencia para mĂșltiples Ă­tems

En caso de que necesites crear una preferencia con varios ítems, agrégalos como una lista e informa los atributos de cada uno.

AdemĂĄs de los SDKs, tambiĂ©n es posible crear una preferencia para mĂșltiples Ă­tems directamente a travĂ©s de la API de Preferencias. Para eso, envĂ­a una solicitud POST al endpoint /checkout/preferencesAPI, incluyendo todos los Ă­tems deseados en el array items.

Utiliza uno de los SDKs disponibles para realizar esta operaciĂłn:

          
<?php
  # Crear un objeto preferencia
  $preference = new MercadoPago\Preference();
  # Crea Ă­tems en la preferencia
  $item1 = new MercadoPago\Item();
  $item1->title = "Item de Prueba 1";
  $item1->quantity = 2;
  $item1->unit_price = 11.96;

  $item2= new MercadoPago\Item
  $item2->title = "Item de Prueba 2";
  $item2->quantity = 1;
  $item2->unit_price = 11.96;

  $preference->items = array($item1,$item2);
  # Guardar y postear la preferencia
  $preference->save();
?>

        
          
// Configura tu preferencia
const preference = new Preference(client);
	preference.create({
		body: {
			// ...
			items: [
        {
          title: 'Mi producto 1',
          quantity: 1,
          unit_price: 100
        },
        {
          title: 'Mi producto 2',
          quantity: 1,
          unit_price: 150
        }
      ],
		}
	})
// ...

        
          
// Crea un objeto preferencia
PreferenceClient client = new PreferenceClient();
// Crea Ă­tems en la preferencia
List<PreferenceItemRequest> items = new ArrayList<>();

PreferenceItemRequest item1 =
   PreferenceItemRequest.builder()
       .id("1234")
       .title("Produto 1")
       .quantity(2)
       .currencyId("BRL")
       .unitPrice(new BigDecimal("100"))
       .build();   
PreferenceItemRequest item2 =
   PreferenceItemRequest.builder()
       .id("12")
       .title("Produto 2")
       .quantity(1)
       .currencyId("BRL")
       .unitPrice(new BigDecimal("100"))
       .build();

items.add(item1);
items.add(item2);

PreferenceRequest request = PreferenceRequest.builder().items(items).build();
// Guardar y postear la preferencia
client.create(request);

        
          
sdk = Mercadopago::SDK.new('ENV_ACCESS_TOKEN')
# Create preference data with items
preference_data = {
  items: [
    {
      title: 'Mi producto 1',
      quantity: 1,
      unit_price: 75.56
    },
    {
      title: 'Mi producto 2',
      quantity: 2,
      unit_price: 96.56
    }
  ]
}

preference_response = sdk.preference.create(preference_data)
preference = preference_response[:response]

        
          
// Crea el request con mĂșltiples Ă­tems
var request = new PreferenceRequest
{
    Items = new List<PreferenceItemRequest>
    {
        new PreferenceItemRequest
        {
            Title = "Mi producto 1",
            Quantity = 1,
            CurrencyId = "BRL",
            UnitPrice = 75.56m,
        },
        new PreferenceItemRequest
        {
            Title = "Mi producto 2",
            Quantity = 2,
            CurrencyId = "BRL",
            UnitPrice = 96.56m,
        },
        // ...
    },
};

// Crea un objeto client
var client = new PreferenceClient();

// Crea la preferencia
Preference preference = await client.CreateAsync(request);

        
          
# Crea Ă­tems en la preferencia
preference_data = {
    "items": [
        {
            "title": "Mi producto",
            "quantity": 1,
            "unit_price": 75.56
        },
        {
            "title": "Mi producto2",
            "quantity": 2,
            "unit_price": 96.56
        }
    ]
}

# Crea la preferencia
preference_response = sdk.preference().create(preference_data)
preference = preference_response["response"]

        

El valor total de la preferencia serĂĄ la suma del valor del precio de cada artĂ­culo listado.