Payment

Magento Order Management proposes 3 different ways to handle the payments:

Pre-built integration with Braintree and Paypal

Magento Order Management proposes an out-of-the-box integration with Braintree and Paypal.

This means that captures (settlements) and refunds as well as any payment notifications will be performed by the OMS. The payments must be authorized on the front-end at the time of checkout with any payment reference being passed to the OMS in the order message.

No sensitive payment information (like credit card number) will be sent to the OMS. The OMS will only use tokens.

Note: OMS also has to be configured with the same credentials as front end in order to be able to communicate with Payment Provider (e.g. BrainTree/PayPal).

Braintree

The out-of-the-box Braintree integration supports the following features:

  • capture of the amount:
    • after the last shipment: it will capture the amount of the shipped items (including the shipping costs), which may be less than the authorized amount in case of cancelled items.
    • after n days or after the last shipment (the first event occurring):
      • after n days: the objective is to capture before the authorization expires (some cards like Carte Bleue In France expire after 6 days) even though the order is not yet shipped. A refund will be triggered if any lines are subsequently cancelled.
      • after the last shipment: it will capture the amount of the shipped items (including the shipping costs), which may be less than the authorized amount in case of cancelled items.
    • before the first shipment request is sent (a refund will be triggered if any lines are subsequently cancelled).
  • refunds due to cancellations, appeasements or returns,
  • manual retries for failed refunds in the OMS backoffice,
  • notifications of capture confirmations (usually from 3-15 days on average) which can be monitored in case they are not received timeously.

Note: This pre-built integration doesn’t currently support multi-capture (i.e. at every shipment).

Paypal

The Paypal integration is used for payments initiated in webstore with PayPal - up to authorization stage (SetExpress, GetExpress, DoExpress & DoAuth). The out-of-the-box integration supports the following features:

  • capture of the amount:
    • before the first shipment request is sent (a refund will be triggered if any lines are subsequently cancelled) — Recommended by Paypal because some captures do fail after authorization (around 2-3%).
    • after the last shipment: it will capture the amount of the shipped items (including the shipping costs), which may be less than the authorized amount in case of cancelled items.
    • after n days or after the last shipment (the first event occurring):
      • after n days: the objective is to capture before the authorization expires (some cards like Carte Bleue In France expire after 6 days) even though the order is not yet shipped. A refund will be triggered if any lines are subsequently cancelled.
      • after the last shipment: it will capture the amount of the shipped items (including the shipping costs), which may be less than the authorized amount in case of cancelled items.
  • refunds due to cancellations, appeasements or returns,
  • manual retries for failed refunds in the OMS backoffice,
  • notifications of capture confirmations (usually within 15 minutes) which can be monitored in case they are not received timeously.

Note: This pre-built integration doesn’t currently support multi-capture (i.e. at every shipment).

Custom Payment Integration

Custom Payment Integration allows to integrate with any payment service provider by adapting standard OMS messages to the format expected by the payment service provider. More details about the integration are available here: Custom Payment Integration.

As for the pre-built integration, no sensitive payment information (like credit card number) must be sent to the OMS. The OMS will only use tokens.

This out-of-the-box integration supports the following features:

  • capture of the amount:
    • after the last shipment: it will capture the amount of the shipped items (including the shipping costs), which may be less than the authorized amount in case of cancelled items.
    • after n days or after the last shipment (the first event occurring):
      • after n days: the objective is to capture before the authorization expires (some cards like Carte Bleue In France expire after 6 days) even though the order is not yet shipped. A refund will be triggered if any lines are subsequently cancelled.
      • after the last shipment: it will capture the amount of the shipped items (including the shipping costs), which may be less than the authorized amount in case of cancelled items.
    • before the first shipment request is sent (a refund will be triggered if any lines are subsequently cancelled).
    • after each shipment (multi-captures): it captures the amount of the shipped items once a day, for partially shipped orders; it captures the remaining amount right after the last shipment.
  • refunds due to cancellations, appeasements or returns,
  • manual retries for failed refunds in the OMS backoffice,
  • notifications of capture confirmations (may be multiple days depending on the payment method) which can be monitored in case they are not received timeously.

Offline

Payment methods can be processed “Offline”, meaning that Magento Order Management is not responsible of the payment process. The payment is managed outside of Magento Order Management.

The main point here is that the webstore does both the authorization and the capture before passing to OMS. Orders are then considered to have had their payments already processed “Offline”, meaning that Magento Order Management is not responsible for any captures or refunds. OMS creates dummy records to ensure that reporting structure is unaffected.

Note: If the payment is managed by Magento Commerce, the connector should be customized to process payments based on events occurring on the order.

  • The webstore may do both the authorization and the capture before passing to OMS. In this case, refunds may have to be triggered in Magento Commerce in case of cancellations, appeasements or returns.
  • It is possible to do only the authorization in the webstore. In this case, the OMS messages should be caught by the connector and trigger actions, such as creating an invoice and capturing it online in Magento Commerce; this action will send the capture to the payment gateway unless the payment method was set up to “authorize & capture” at the time of purchase (“payment action” setting) — in which case submitting an invoice will not result in a capture since it’ll already be complete.

General Note on Testing

In all cases, we recommend extensive testing in staging and production prior to opening to the public and sufficient time should be allocated for this important activity. With payments, production is always different to staging even in subtle ways because of the nature of real credit cards and real banks being behind.