# Payment gateway providers

Source: https://dev.arcxp.com/subscriptions/sales/configure/payment-gateway-providers/

Arc XP Subscriptions supports a wide selection of payment gateway partners and tax providers for easy setup and seamless checkout functionality. Using hosted pay pages lets Arc XP Subscriptions offer bank-level security with a consistent user experience. The following table lists the payment providers that Arc XP Subscriptions supports.

Before you get started building your checkout workflow you need to determine your payment method. We provide multiple options and cover many methods of digital payments.

| Gateway                                                                                           | Covered countries                                                                         | Identifier |
| ------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ---------- |
| [IFX](https://dev.arcxp.com/subscriptions/sales/build/payment-provider-ifx-integration)           | Use the payment gateways of your choice with our extensible payment gateways capabilities | 19         |
| [Stripe Intents](https://dev.arcxp.com/subscriptions/sales/build/payment-provider-stripe-intents) | <https://stripe.com/en-mx/global>                                                         | 18         |
| [Braintree](https://dev.arcxp.com/subscriptions/sales/build/payment-provider-braintree)           | <https://www.braintreepayments.com/country-selection>                                     | 15         |
| [PayPal (Stripe)](https://dev.arcxp.com/subscriptions/sales/build/payment-provider-paypal-stripe) | <https://docs.stripe.com/payments/paypal>                                                 | 22         |

> **Note:**
> 
> Arc XP does not store full card information. We only store basic details, such as the last four digits, card type, and expiration date (when it applies). Payment information is saved in the form of tokens.
> 
> The identifier corresponds to a unique ID for each payment gateway type in Arc XP Subscriptions. You need to keep this ID in mind when implementing your checkout flow.

For subscription types other than paid, our system also uses identifiers. These identifiers are provided in the table below, as some reports and/or APIs return these values.

| Provider                           | Identifier |
| ---------------------------------- | ---------- |
| Shared                             | 3          |
| Free (also known as Complimentary) | 4          |
| Linked                             | 5          |
| EmailGroupSubPaymentProvider       | 12         |
| Gift                               | 13         |
| Enterprise                         | 21         |

## Setting up a payment provider

Payment providers can be configured in the Subscriptions Admin. In the `Settings` admin, select Payment Provider under the `Sales` section, then click `Add Payment Provider`. Next, choose the payment provider of your choice.

![gateway-setup](https://dev.arcxp.com/images/subscriptions/sales/configure/payment-gateway-providers/payment-provider.png)

When setting up any of these payment parameters, there are a few that apply to all payment providers:

| Parameters                                     | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| ---------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Nickname                                       | This is used to help describe the payment provider elsewhere in Arc.                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| Minimun refund value                           | Our system allows end users to upgrade or downgrade products and prices. During this upgrade or downgrade, refunds and new charges can be applied. Internally, our system computes these amounts. A refund will be applied if the value to be refunded is equal to or higher than the minimum refund value. See [Subscription Management: Reader experience](https://dev.arcxp.com/subscriptions/sales/learn/subscription-management-reader-experience) (Upgrade/downgrade products and prices section) for more details.    |
| Minimun charge value                           | Our system allows end users to upgrade or downgrade products and prices. During this upgrade or downgrade, refunds and new charges can be applied. Internally, our system computes these amounts. A new charge will be applied if the value to be charged is equal to or higher than the minimum charge value. See [Subscription Management: Reader experience](https://dev.arcxp.com/subscriptions/sales/learn/subscription-management-reader-experience) (Upgrade/downgrade products and prices section) for more details. |
| Allow product change if refund minimum not met | It is related to Minimun refund value. If you enable this, a refund will not be applied, but the upgrate/downgrade of the product and price will be completed.                                                                                                                                                                                                                                                                                                                                                               |
| Allow product change if charge minimum not met | It is related to Minimun charge value. If you enable this, a charge will not be applied, but the upgrate/downgrade of the product and price will be completed.                                                                                                                                                                                                                                                                                                                                                               |

Depending on the payment provider, you will need to configure additional parameters. These parameters can be grabbed from the developer console on the payment gateway side.

### IFX

Arc XP Subscriptions does not support all payment gateways worldwide. To enable our clients to use most payment gateways of their choice, we built a system that does not require a direct integration from us. This is achieved by the client implementing an Arc XP IFX integration.

> **Note:**
> 
> If you want to enable a payment method via via IFX integration, please submit a support ticket to [#arc-org-revenue-engine](https://washpost.enterprise.slack.com/archives/C081BNY4W0L) requesting a new IFX payment gateway. In Subscriptions, no parameters are required for the IFX payment gateway. Check with the IFX team to confirm what information they need to enable the integration on their end. Before reaching out to the IFX team, we strongly recommend reviewing the guide on [How to add IFX integration as a payment provider](https://dev.arcxp.com/subscriptions/sales/build/payment-provider-ifx-integration).

### Stripe Intents

| Parameters                     | Description                                                                                                                                                                                                                                                                                                                      |
| ------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Publishable API key            | It is used to interact with the Stripe API, particularly when handling payment intents. This key is meant to be used in client-side applications, such as web browsers or mobile apps. It allows you to create payment intents, tokenizing card details, and performing other actions that do not require sensitive information. |
| Private API key                | It is used to interact with the Stripe API, particularly when handling payment intents. This key is intended for server-side use. It is used to authenticate requests to the Stripe API that require sensitive operations, such as creating charges, managing subscriptions, or retrieving customer data.                        |
| Delete unneeded payment tokens | Arc XP will tell the payment gateways to delete any tokenized credit cards that are no longer needed. That can save our clients money that they don’t have to pay to Stripe and Braintree.                                                                                                                                       |

### Braintree

See [Important Gateway Credentials](https://developer.paypal.com/braintree/articles/control-panel/important-gateway-credentials#environment) for more details.

| Parameters                     | Description                                                                                                                                                                                                                |
| ------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Publishable API key            | This is your user-specific public identifier.                                                                                                                                                                              |
| Private API key                | This is your user-specific private identifier.                                                                                                                                                                             |
| Merchant ID                    | Your merchant ID is the unique identifier for your entire gateway account, including the multiple merchant accounts that may be in your gateway.                                                                           |
| Mode                           | sandbox or production. The BE is calling different set of API keys for each environment.                                                                                                                                   |
| Merchand Account ID            | A single Braintree gateway can have multiple merchant accounts to process transactions for different businesses or currencies. Each merchant account within a gateway can be identified by its unique merchant account ID. |
| Delete unneeded payment tokens | Arc XP will tell the payment gateway to delete any tokenized credit cards that are no longer needed. That can save our clients money that they don’t have to pay to Stripe and Braintree.                                  |

### PayPal (Stripe)

| Parameters          | Description                                                                                                                                                                                                                                                                                                                                  |
| ------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Publishable API key | Stripe SDK methods use it to interact with the Stripe API, particularly when handling payment intents. Use this key in the applications you develop, such as web browsers or mobile applications. The key enables you to create payment intents, tokenize card details, and perform other actions that do not require sensitive information. |
| Private API key     | Stripe SDK methods use it to interact with the Stripe API, particularly when handling payment intents. This key is intended for server-side use. Specifically to authenticate requests to the Stripe API that require sensitive operations. For example, for creating charges, managing subscriptions, or retrieving customer data.          |
| Return URL          | Customer redirected here from PayPal after approving billing agreement.                                                                                                                                                                                                                                                                      |
