Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Este tutorial irá auxiliar na realização no desenvolvimento da integração com um serviço promocional externo através da nossa WebAPI de Fidelidade, o mesmo prevê aAplicação de benefícios para Pedidos, Itens, Meios de Entrega e Entrega Meios de Pagamento Pagamento através da WebAPI no respectivo carrinho (pedido).

Abaixo será possível verificar os exemplo deAplicação (por Item, por Pedidos, por Pedidos com Cupom e por Meio de Entrega) que o lojista deverá realizar ao parceiro que está se integrando entre o front de loja ao back (via Store Front (- WebAPI) para obter os benefícios promocionais para um determinado um Pedido, Item do Pedido, Meios de Entrega ou Meios de Pagamento de um determinado pedido:. No entanto, vale reforçar que não há uma consulta específica para Meios de Pagamento, pois os descontos de Pagamentos são aplicados diretamente as consultas de Pedidos (order). 


1. AddIBenefitItemsDiscount, responsável pela aplicação de descontos a itens:

AddIBenefitItemsDiscount

var endpoint = 'http://localhost:42555/carrinho/AddBenefitItemsDiscount';
var promotionData =
{"PromotionID": "6129",
"ItemsDiscount": 
         {
                        "Items": [
                            {
                                "BasketItemID": 71543,
                                "ProductName": "Camera Fotográfica Canon - teste 1",
                                "ProductID": 984994,
                                "SkuID": 984995,
                                "IntegrationID": "TESTE-REPLICAÇÃOO",
                                "Quantity": 1,
                                "Price": 500.00,
                                "SpecialType": "N",
                                "Brand": "5 Estrelas",
                                "Categories": "Esporte e Lazer/Fitness"
                            }
                        ],
                    "ActivationQty": 0,
                    "CalculationBasisType": "O",
                    "DiscountPercent": 0,
                    "DiscountType": "V",
                    "DiscountValue": 10,
                    "ExpiresIn": "2023-08-30T09:18:16.6963515-03:00",
                    "ExternalCouponCode": "",
                    "ExternalDescriptionRules": "Regras da promoção",
                    "ExternalPromotionID": "promo1-item-discount",
                    "ExternalPromotionName": "Desconto de 10 reais em todos os itens",
                    "ExternalPromotionTargetID": 0,
                    "ExternalPromotionType": 1
                    }
    
};

$.ajax({
    type: 'POST',
    url: endpoint,
    data: JSON.stringify(promotionData),
    contentType: 'application/json',
    success: function(response) {
        console.log('Requisição bem-sucedida:', response);
    },
    error: function(error) {
        console.error('Erro na requisição:', error);
    }
});


2. AddBenefitOrderDiscount, responsável pela aplicação de descontos em pedidos:

AddBenefitOrderDiscount

var endpoint = 'http://localhost:42555/carrinho/AddBenefitOrderDiscount';
var promotionData =
{"PromotionID": "6129",

    
"OrderDiscount": 
               {
                    "ActivationQty": 0,
                    "CalculationBasisType": "O",
                    "DiscountPercent": 0,
                    "DiscountType": "V",
                    "DiscountValue": 10,
                    "ExpiresIn": "2023-09-13T09:07:18.9601815-03:00",
                    "ExternalCouponCode": "",
                    "ExternalDescriptionRules": "Regras da promoção",
                    "ExternalPromotionID": "promo1-order-discount",
                    "ExternalPromotionName": "Desconto de 10 reais em todos os itens",
                    "ExternalPromotionTargetID": 1,
                    "ExternalPromotionType": 1,
                    "ShowExternalPromotionNameInStore": false,
                    "UrlImage": "https://example.com/promo1.jpg"
                }
}
$.ajax({
    type: 'POST',
    url: endpoint,
    data: JSON.stringify(promotionData),
    contentType: 'application/json',
    success: function(response) {
        //ko.postbox.publish('checkout/reload');
        console.log('Requisição bem-sucedida:', response);
    },
    error: function(error) {
        console.error('Erro na requisição:', error);
    }
});


3. AddOrderDiscountWithCoupon, responsável pela aplicação de descontos em pedidos com cupons:

AddOrderDiscountWithCoupon

var endpoint = 'http://localhost:42555/carrinho/AddBenefitOrderDiscount';
var promotionData =
{"PromotionID": "6129",

    
"OrderDiscount": 
                {
                    "ActivationQty": 0,
                    "CalculationBasisType": "O",
                    "DiscountPercent": 5,
                    "DiscountType": "P",
                    "DiscountValue": 0,
                    "ExpiresIn": "2023-09-13T09:07:18.9601815-03:00",
                    "ExternalCouponCode": "CUPOM123",
                    "ExternalDescriptionRules": "Regras da promoção",
                    "ExternalPromotionID": "promo1-order-coupon",
                    "ExternalPromotionName": "Desconto de 10% em todos os itens - V",
                    "ExternalPromotionTargetID": 1,
                    "ExternalPromotionType": 0,
                    "ShowExternalPromotionNameInStore": false,
                    "UrlImage": "https://example.com/promo1.jpg"
                }
}
$.ajax({
    type: 'POST',
    url: endpoint,
    data: JSON.stringify(promotionData),
    contentType: 'application/json',
    success: function(response) {
        //ko.postbox.publish('checkout/reload');
        console.log('Requisição bem-sucedida:', response);
    },
    error: function(error) {
        console.error('Erro na requisição:', error);
    }
});


4. AddBenefitDeliveryMethodsDiscount, responsável pela aplicação de descontos em meios de entrega:

AddBenefitDeliveryMethodsDiscount

var endpoint = 'http://localhost:42555/carrinho/AddBenefitDeliveryMethodsDiscount';
var promotionData =
{"PromotionID": "6129",
"DeliveryDiscount": 
                {
                    "ActivationQty": 0,
                    "CalculationBasisType": "O",
                    "DeliveryMethods": [
                        {
                            "Alias": "fe_offline",
                            "DeliveryAmount": 62.43,
                            "DeliveryMethodID": "25",
                            "DeliveryName": "Entrega própria"
                        }
                    ],
                    "DiscountPercent": 5,
                    "DiscountType": "P",
                    "DiscountValue": 0,
                    "ExpiresIn": "2023-09-13T09:07:18.9601815-03:00",
                    "ExternalCouponCode": "CUPOM123",
                    "ExternalDescriptionRules": "Regras da promoção",
                    "ExternalPromotionID": "promo1-delivery-coupon",
                    "ExternalPromotionName": "Desconto de 10% em todos os itens - V",
                    "ExternalPromotionTargetID": 2,
                    "ExternalPromotionType": 0,
                    "ShowExternalPromotionNameInStore": false,
                    "UrlImage": "https://example.com/promo1.jpg"
                }
};

$.ajax({
    type: 'POST',
    url: endpoint,
    data: JSON.stringify(promotionData),
    contentType: 'application/json',
    success: function(response) {
        console.log('Requisição bem-sucedida:', response);
    },
    error: function(error) {
        console.error('Erro na requisição:', error);
    }
});


Estes quatro métodos, assim como outros estão disponíveis em nossa Collection do Postman (em Webapi > Add), conforme imagem abaixo:

Image Added


Nossa Collection no Postman com todas as chamadas necessárias para lhe auxiliar nesta jornada estão disponíveis pelo arquivo abaixo:

View file
nameBenefits.postman_collection_v2 (6).json
height250


Para eventuais dúvidas, nosso time de relacionamento ao cliente estará 100% a disposição para lhe auxiliar tanto no processo de configuração quanto as dúvidas que surgirem durante a utilização da nova funcionalidade.