I'm helping a non-profit set up an order page on their website that would allow users to order physical products. I have commerce integrated with their paypal account and I can successfully collect order information with a webform and process their payment with paypal.

The client, however, wants to be able to print a shipping label for that order directly from paypal. As far as I can tell, the only way the "Buy Shipping Label" option appears on paypal transactions is if the order's payment type is marked as "Goods and Services."

Is there a way to specify the payment type within the commerce module? The payments that I'm collecting now all show up in paypal with "Checkout" as the payment type.

The modules I'm using for this setup include, webform_product (3.0.4), commerce_paypal (8.x-1.4), and commerce (8.x-2.36) along with its related modules (cart, checkout, number pattern, order, payment, price, product, and store).

1 Answer 1


For anyone else who runs into this issue, I found a few lines in the commerce_paypal module code that reference the shipping module. Apparently, the presence of this module affects how a payment is sent to paypal. The code is in: commerce_paypal/src/Plugin/Commerce/PaymentGateway/ExpressCheckout.php starting on line 509.

After enabling this module, all the payments I sent to paypal were marked as goods and services and I was able to print a shipping label directly from paypal. I don't ~think~ I did any other configuration to make this happen althought I was testing with the checkout flow the module added titled "shipping" but I didn't end up using that flow. Regardless, hope this helps someone.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.