# FlexFactor

<figure><img src="https://3790748257-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT43PzcNjyZtWby9yrGd3%2Fuploads%2F1mU2ctdnKxVfhQpIufKg%2FUntitled.png?alt=media&#x26;token=6f69f08c-af0f-4da3-ba8e-1dcd46735835" alt="" width="375"><figcaption></figcaption></figure>

{% hint style="info" %}
FlexFactor is for decline salvage only. Do not place a FlexFactor gateway on a campaign product or in ATRI gateway profiles.
{% endhint %}

{% hint style="info" %}
FlexFactor is available on Recycle Billing and when retrying initial declines.
{% endhint %}

{% hint style="info" %}
FlexFactor is available for cascades.  Add the FlexFactor gateway to an ATRI cascade profile.  Then set that cascade profile as a direct cascade on a gateway or as the cascade on an ATRI gateway profile.  A cascade requires that ipAddress is passed on the order.  FlexFactor cannot process a cascade without it.

Alternatively use the **cascadeAll** option on the FlexFactor gateway to cascade all initial sale soft declines to FlexFactor without the need to create cascade profiles.  This option overrides all cascade profiles.  ipAddress is still required.

Cascades return an instant approval or decline from FlexFactor.  There is no wait period as there is with recycle billing.

A sale will not cascade to FlexFactor if the [Single Transaction](https://help.checkoutchamp.com/crm/crm-setup/campaign-setup/single-transaction-orders) functionality is enabled on the campaign.
{% endhint %}

**STEP 1**

Go to Gateways > Gateway Integrations. Select FlexFactor. Press the <mark style="color:green;">**+Activate**</mark> button.

<figure><img src="https://3790748257-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT43PzcNjyZtWby9yrGd3%2Fuploads%2F4iUuZ5v4Eq3giLlT725n%2Fimage.png?alt=media&#x26;token=96edaaa1-0dfe-4262-8a2b-175d1714568d" alt=""><figcaption></figcaption></figure>

**STEP 2**

Obtain **AppKey, AppSecret, MID, SiteId, EnvironmentKey,** and **HMACSigningKey** from FlexFactor. Enter them here.  **EnvironmentKey** is the FlexFactor Tokenization Key.

Choose to enter **expiryDays**. This is how long to retry the sale at FlexFactor. Default is 21. Maximum is 21.  This value is ignored for cascades.

Use **cascadeAll** to automatically cascade all initial soft-declines to FlexFactor.  Soft-declines can also be routed to FlexFactor through standard ATRI cascade profiles.  **cascadeAll** overrides cascade profiles.

Use **includeChargebacks** to ingest chargeback webhooks from FlexFactor.  Chargebacks received from FlexFactor will be marked as a chargeback in CheckoutChamp.

<figure><img src="https://3790748257-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT43PzcNjyZtWby9yrGd3%2Fuploads%2Fw5vmGCSDEMFRz78hntjH%2Fimage.png?alt=media&#x26;token=12276d92-9b17-4227-8ce0-2b489aca2d44" alt="" width="375"><figcaption></figcaption></figure>

&#x20;

#### Recycle Billing

Go to Gateways > Recycle Billing

Select FlexFactor as the Gateway for Re-Attempts 4-6 or 7-9 or Final Attempt

<figure><img src="https://3790748257-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FT43PzcNjyZtWby9yrGd3%2Fuploads%2FrGFxz3R3u6ZAZ7JlD6qO%2FUntitled.png?alt=media&#x26;token=23585633-ad5b-4af9-abdc-d8ee43d2684e" alt=""><figcaption></figcaption></figure>

&#x20;

#### Rerun Initial Declines

Choose the FlexFactor gateway directly when retrying initial declines on the Order Details Report or via the [Rerun Declined Sale API](https://apidocs.checkoutchamp.com/#a19884c8-6958-4050-8a99-b29c581d1e2a).  Do NOT retry on an ATRI gateway profile.

Initial Declines (new sales) with recurring products may be sent to FlexFactor.  However a successful recovery leaves no payment token to rebill the subscription on the original decline gateway.  The next rebill will attempt on the original decline gateway with card number and without cvv.  If and when that declines then that can be sent to FlexFactor again through Recycle Billing.

#### FlexFactor Responses

Orders sent to FlexFactor are automatically retried by FlexFactor. The result from FlexFactor is communicated back to CRM.

| Type of order | Result  | Action                                                                                                                                                     |
| ------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| New Sale      | Success | Order is Complete and fulfillments are processed                                                                                                           |
| New Sale      | Failure | Order is Declined.  The exception to this is completing a trial.  Completing a trial leaves the order status unchanged.                                    |
| Recurring     | Success | Move subscription to the next billing cycle. Fulfillments are processed. Subscription reverts to the previous declined gateway for next scheduled billing. |
| Recurring     | Failure | Subscription is Recycle Failed                                                                                                                             |

&#x20;

#### Send Hard Declines to FlexFactor

By default only Soft Declines are sent to FlexFactor.  This can be overridden using [Decline Mapping](https://help.checkoutchamp.com/crm/gateway-setup/decline-message-mapping).  Map any specific Hard Decline to a Soft Decline.
