Express Checkout PayPal: Configure → Express Checkout

PayPal Express Checkout is automatically pre-configured for new osCommerce Online Merchant installations where payments are sent to the configured store owner e-mail address. This allows store owners to start accepting payments immediately and to complete their PayPal merchant account when their first payments have arrived.

This module can use both PayPal and Payflow to process transactions with and can be configured on the ConfigureGeneral page.


Seamless Checkout

Seamless Checkout requires the Log In with PayPal module to be enabled and allows customers who have logged in through PayPal to proceed straight to the Express Checkout flow without needing to log in again.

Instant Update

As soon as the customer has logged in at PayPal or has provided their shipping address during the Express Checkout flow, PayPal contacts your online store to retrieve a list of applicable shipping rates and taxes for the shipping destination. The customer is able to choose their preferred shipping rate which is passed back to the store to use for the order.

As of osCommerce Online Merchant v2.3.4, orders can be blocked when no shipping rate for the destination is available. If this is enabled and Instant Update detects that no shipping rates are available, it requests the customer to select or enter a new shipping address during the Express Checkout flow and prevents them to continue with the order until a valid shipping destination has been selected.


Instant Update requires the following for the shipping rates to be retrieved:

  • Your store installation must be configured for and have SSL enabled.
PayPal Account Optional

PayPal Account Optional allows customers without a local or PayPal account to proceed through the Express Checkout flow as a guest. Customers do not need to create a PayPal account during the Express Checkout flow and their shipping and billing information is passed back to the store to use for the order.

Configuration Settings

Parameter Description Default
Status Set this to Live to use this module with the Live API Credentials, or to Sandbox for the Sandbox API Credentials. Disabled disables the module as a payment method. Live
Checkout Flow Use the new pop-up In-Context checkout flow and have PayPal automatically choose the best checkout flow to use, or use standard full-page Classic checkout flow. In-Context does not yet support all of the features of the Classic checkout flow such as Instant Update. In-Context
Checkout Button Color Choose the color of the Checkout with PayPal button. Gold
Checkout Button Size Choose the size of the Checkout with PayPal button. Small
Checkout Button Shape Choose the shape of the Checkout with PayPal button. Pill
PayPal Account Optional Allow guests to continue through the Express Checkout flow without logging into their PayPal account. False
Instant Update Allow PayPal to retrieve shipping rates and taxes for the order based on the customers shipping destination during the Exprress Checkout flow. True
PayPal Express Checkout Button Use a Static or Dynamic Express Checkout image button on the shopping cart page. Static
Page Style This parameter has been deprecated.

The page style to use for the payment flow. This is defined in your PayPal account settings.
Transaction Method The transaction method to use for payments.

The Authorization method only authorizes the transaction which can be captured up to 29 days later.
The Sale method instantly transfers the funds from the customer to your PayPal account.
Order Status Set the status of orders made with this payment module to this order status level. Default Order Status
Payment Zone If set, this payment method will only be available to orders made within the defined zone.

Checkout Button Styling

The following CSS stylesheet definitions are available to help with the styling and positioning of the "Check out with PayPal" button shown on the shopping cart page:

Gateway Checkout Flow ID Description Default CSS
PayPal In-Context ppECButton The block where the checkout button is inserted via the PayPal javascript loaded for the In-Context checkout flow.
display: inline-block;
Classic ppECButtonClassicLink The href link tag containing the link to initiate the Express Checkout flow with.
ppECButtonClassic The image tag displaying the "Check out with PayPal" button image.
Payflow n/a ppECButtonPfLink The href link tag containing the link to initiate the Express Checkout flow with.
ppECButtonPf The image tag displaying the "Check out with PayPal" button image.

Stylesheet definitions can be defined in the following file:


The stylesheet definition file will only be loaded if it exists and will never be updated via the PayPal App Online Update routine.


Customer Accounts

PayPal Express Checkout allows guest purchases to be made without the customer needing to create or log into their local store account. A local customer account is however created when they return back to the store from the Express Checkout flow to keep track of the order.

If the Set Password account content module is not installed, the automatically created account is assigned a randomly generated password which is e-mailed to the customers e-mail address PayPal provides.

If the Set Password account content module is installed, the password is left empty and no e-mail is sent to the customer. The customer then has the opportunity to set their own password in the My Account page during their session or they will only able to log in again through Log In with PayPal or PayPal Express Checkout when their next order is made.

Order Processing

The Express Checkout module has been developed to have the customer return back to the store to finalize their order on the checkout confirmation page. This allows the correct order totals and taxes to be shown for confirmation and for additional checks to be added before the order is processed (eg, agree to terms checkbox).

Line Items

Each product that is ordered is passed on to PayPal as line items to show to the customer during the Express Checkout flow. This includes extra third-party Order Total modules that manipulate the order total values (eg, discounts). In rare occassions, when the line items, shipping, and tax calculations do not match the order total value, only the order total value is passed onto PayPal without the line items.