# Surcharging

<figure><img src="/files/OPkpKWNGisTRODxR9jdP" alt=""><figcaption></figcaption></figure>

**ArgoFire** provides support for transaction surcharging, enabling merchants to transparently pass processing fees to payers in compliance with applicable laws and card network rules. This section outlines how surcharges are applied, calculated, and processed through **ArgoFire**.

***

#### Overview

Surcharging allows merchants to offset processing fees by adding a fee to the total transaction amount when a credit card is used. This feature must be enabled at the account level by FrontStream and is subject to compliance requirements.

**Important:** Enabling surcharging requires additional review and approval of your organization by FrontStream to ensure compliance. To simplify surcharging payment processing, we strongly encourage merchants to make full use of surcharge support via our **Embedded Payment Form**, which lessens the compliance review process.

Once our **Compliance** team approves your surcharge implementation, surcharge is configured at the account level and applied automatically according to your specified parameters.

Please see our **FrontStream Embedded Payment Form** for our surcharge payment method support and implementation steps:

{% embed url="<https://developers.frontstream.com/introducing-our-embedded-form/payment-methods-process>" %}

***

#### Supported Payment Methods for Surcharging

| Payment Method | Surcharging Supported |
| -------------- | --------------------- |
| Credit Card    | ✅                     |
| Debit Card     | ❌ (not permitted)     |
| ACH / eCheck   | ❌                     |

> ⚠️ Surcharges **must not** be applied to debit card or ACH transactions per network and regulatory guidelines.

***

#### How It Works

**When surcharging is enabled for a merchant account:**

1. Using our **Embedded Payment Form** implementation the original amount, surcharge amount, and payment methods are handled for you.
2. If eligible for surcharging (e.g., credit card),  our Embedded Payment Form automatically calculates, displays, and applies the surcharge.
3. The total charged amount (including surcharge) is reflected in the API response.
4. The surcharge is visible in the transaction metadata and on the customer receipt.

***

#### API Behavior

* **Surcharges are not submitted by the merchant via API.**\
  The calculation and application are handled entirely by our Embedded Payment Form and ArgoFire at the time of processing.
* Please contact our FrontStream implementation team for direct API surcharge support as it requires a more strenuous compliance review if implementing versus using our **Embedded Payment Form.**
* **The surcharge amount appears in the `TransactionResult.SurchargeAmount` field** in the response, along with the final `TotalAmount`.

***

#### Example Response Snippet

```xml
xmlCopyEdit<TransactionResult>
  <Result>0</Result>
  <ResultMessage>Approved</ResultMessage>
  <TotalAmount>103.50</TotalAmount>
  <SurchargeAmount>3.50</SurchargeAmount>
  <PaymentMethod>CreditCard</PaymentMethod>
</TransactionResult>
```

***

#### Notes and Limitations

* **Must be enabled by FrontStream Support**—there is no self-service surcharge toggle.
* **Merchant is responsible** for compliance with state laws and card brand rules regarding surcharge disclosures.
* **A Merchant Compliance review** is **required** by our **FrontStream Compliance** team before surcharge can be enabled.
* Surcharges cannot be configured via API parameters or adjusted per transaction.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://developers.frontstream.com/argofire/surcharging.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
