Views:

How to Use PayPal with Authorize.net?

Once enabled, you will need to integrate to the API for PayPal with Authorize.net. For more information on enablement, see:

What is and how to enable PayPal with Authorize.net? - Classic Experience (1.0)

What is PayPal and how to enable? - New Experience (2.0)

Integrated to the Authorize.net API for PayPal

Use the createTransactionRequest calls with PayPal-specific fields. For more information about our implementation of PayPal Checkout Express, see the PayPal developer guides

Developer Center - API Guide - PayPal Express Checkout

Developer Center - API Reference Guide - PayPal Express Checkout

PayPal Express Transactions Flow

Here is the flow for successful and canceled PayPal transactions:

Successful Auth_Capture Transaction

  1. You submit an Auth_Capture, specifying PayPal as the method along with a SuccessURL for successful transaction responses and a CancelURL for rejected transactions.
  2. A transaction is created.
  3. Authorize.Net submits a request to PayPal.
  4. PayPal responds with PayerID and SecureAcceptanceURL, and echoes the transaction ID that Authorize.Net created in the refTransID field.
  5. You display the SecureAcceptanceURL to the customer.
  6. The customer logs into their PayPal account and approves or rejects the transaction.
  7. On success, the response is returned to the SuccessURL with the PayerID.
  8. You submit an Auth_Capture_Continue to Authorize.Net.
  9. The transaction is authorized and funded at PayPal.
  10. The transaction is marked as Captured/Pending Settlement.
  11. The transaction settles after your cut-off time.

Successful Auth_Only Transaction

  1. You submit an Auth_Only, specifying PayPal as the method along with a SuccessURL for successful transaction responses and a CancelURL for rejected transactions.
  2. A transaction is created.
  3. Authorize.Net submits a request to PayPal.
  4. PayPal responds with PayerID and SecureAcceptanceURL, and echoes the transaction ID that Authorize.Net created in the refTransID field.
  5. You display the SecureAcceptanceURL to the customer.
  6. The customer logs into their PayPal account and approves or rejects the transaction.
  7. On success, the response is returned to the SuccessURL with the PayerID.
  8. You submit an Auth_Only_Continue to Authorize.Net, which initiates authorization at PayPal.
  9. The transaction is authorized at PayPal.
  10. You submit a Prior_Auth_Capture to Authorize.Net.
  11. The transaction is funded at PayPal.
  12. The transaction is marked as Captured/Pending Settlement.
  13. The transaction settles after your cut-off time.

Cancel

On cancel, the response is sent to the CancelURL. The transaction remains in unsettled transaction in "Need Payer Consent" status for 48 hours. The transaction is marked as expired afterwards and settles at your cut-off time.

Voiding

Submitting a void request prior to capture submits an auth reversal to PayPal. A void can only be done on Auth_Only transactions. The transaction is marked as voided in the gateway account.

Get Transaction Details

The PayerID can be retrieved using the Get Details API.

Identifying PayPal Transactions in the Merchant Interface

PayPal transactions can be identified in the Merchant Interface by their unique transaction IDs and the method specified as PayPal.

Developer and Integration Resources

For more detailed instructions and resources, see: