Como especificar o Noshiping 1 com o checkout expresso.js v4

Tenho um check-out expresso a trabalhar com o último check-out.js, mas não precisa mostrar nenhum endereço de envio. Uma vez que é um bem digital, os médicos dizem que eu preciso de noshiping definido para 1. No entanto, não consigo perceber como é que isso vai para o javascript.

segui os passos de integração básicae depois usei a API restante para executar o pagamento para poder carregar no meu servidor.

eu tentei adicionar noshipping: 1 em todo o lugar dentro do javascript para criar o pagamento sem sorte. Aqui está o que parece ( ignorar as questões de compilação como eu estou apenas tentando mostrar como eu tentei adicionar a informação noshipping:1):

 payment: function() {
            var env    = this.props.env;
            var client = this.props.client;
            return paypal.rest.payment.create(env, client, {
                transactions: [
                    {
                        amount: { total: '4.99', currency: 'USD' }
                        DOESNT WORK-->noshipping: 1
                    }
                ],
                DOESNT WORK-->noshipping: 1
            });
        },

alguém sabe como passar adequadamente a informação de noshipping usando o último checkout.js?

Author: Keith Entzeroth, 2017-01-25

3 answers

OK, parece que eles finalmente adicionaram suporte para isso. Parece isto:

                payment: {
                transactions: [
                    {
                        amount: { total: '19.99', currency: 'USD' }
                        // Possibly there is also a 'custom' field we can specify here;
                        // https://stackoverflow.com/questions/46320753/
                    }
                ],
                application_context: {
                    shipping_preference: 'NO_SHIPPING'
                }
            }
 7
Author: Joe Strout, 2017-10-13 22:35:45
Recebi uma resposta "oficial" do paypal uma semana depois.
Obrigado por contactar a PayPal Merchant Technical Services. Infelizmente, não temos uma opção para o noshipping ao usar DESCANSO API. Essa opção só está disponível no classic express checkout que usa a API NVP/SOAP.
Aqui está. Este conceito bastante simples não é possível com o seu mais recente SDK.
 1
Author: Keith Entzeroth, 2017-02-01 15:13:29

Sim, há uma maneira de especificar o NOSHIPING como se segue no PayPal-Python-SDK, de acordo com o seu código:

 payment: function() {
        var env    = this.props.env;
        var client = this.props.client;
        return paypal.rest.payment.create(env, client, {
            transactions: [
                {
                    amount: { total: '4.99', currency: 'USD' }
                }
            ],
           application_context: {
                shipping_preferences: 'NO_SHIPPING',
            }
        });
    },
Espero que ajude.
 0
Author: Kenny Aires, 2018-03-28 09:51:53