Regional payment flows: Argentina

Latin America

The Remote Pay SDKs support regional payment flow differences with parameters specific to each region. These parameters are passed as key-value pairs in theSaleRequest, AuthRequest, and PreAuthRequest.

Regional payment parameters for Argentina

Clover devices in Argentina display two additional screens during the default payment flow: the fiscal invoice and installment screens. The following table describes the parameters specific to payment flows in Argentina. The parameter names are constants defined in the RegionalExtras class.

Parameter defined in the RegionalExtras classDescription
FISCAL_INVOICE_NUMBER_KEYNumber associated with the transaction.
Format: dddd-dddddddd; Valid invoice numbers are 4 digits, 1 dash, then 8 more digits with no spaces
INSTALLMENT_NUMBER_KEYNumber of payment installments.

- If a number is passed, the installments screen is skipped.
- If no number is passed, the installments screen appears. The customer needs to select an installment number.
INSTALLMENT_PLAN_KEYName or other identifier of the payment plan.
Value: Numbers between 1-99.
SKIP_FISCAL_INVOICE_NUMBER_SCREEN_VALUEPass this value to FISCAL_INVOICE_NUMBER_KEY to skip the invoice screen without using an invoice number.
INSTALLMENT_NUMBER_DEFAULT_VALUEDefault value for INSTALLMENT_NUMBER_KEY which can be used to skip the installment screen.
MERCHANT_ID_KEYMerchant number configured in the Clover device.
Format: nnnnnn

Sample: Skip Argentina payment flow screens

The following displays a SaleRequest that uses the SDK-provided values for FISCAL_INVOICE_NUMBER_KEY and INSTALLMENT_NUMBER_KEYto skip both the fiscal invoice and installment screens:

private saleRequest setupSaleRequest() {
  SaleRequest saleRequest = new SaleRequest();
  saleRequest.setExternalId(ExternalIdUtils.generateNewID()); //required
  Map<String, String> extras = new HashMap<>();
  extras.put(RegionalExtras.FISCAL_INVOICE_NUMBER_KEY, RegionalExtras.SKIP_FISCAL_INVOICE_NUMBER_SCREEN_VALUE);
  extras.put(RegionalExtras.INSTALLMENT_NUMBER_KEY, RegionalExtras.INSTALLMENT_NUMBER_DEFAULT_VALUE);
  saleRequest.setRegionalExtras(extras);
}

Multicurrency flows for Argentina

In the context of the bimonetary scheme with Clover in Argentina, transactions are conducted in two currencies—Argentine Pesos (ARS) and US Dollars (USD). This feature allows merchants and customers to make payments in their preferred currency, providing a more flexible experience tailored to the regional market's needs.

Merchants have the option to choose the currency for each sale. If a customer opts to pay in US Dollars (USD), the transaction is processed in that currency. The system displays the corresponding amount on the receipt and in sales reports. This helps merchants to understand the cash flow and to effectively track their sales and cash receipts in each currency.

Sample: Multicurrency payment flows

The following are examples of a SaleRequest to select the currency (ARS or USD) in the payment flow based on the SDK. The parameter names are constants defined in the RegionalExtras class.

Android (Java)

SaleRequest request = new SaleRequest();
 HashMap<String, String> extras = new HashMap<String, String>();
 extras.put("com.clover.regionalextras.EXTRA_CURRENCY", "USD");
 request.setRegionalExtras(extras);

Node.js

const saleRequest = new clover.remotepay.SaleRequest();
let extras = {};
let regionalExtras = new clover.payments.RegionalExtras();

extras[regionalExtras.getFISCALINVOICENUMBERKEY()] = "1234-12345678";
extras[regionalExtras.getINSTALLMENTNUMBERKEY()] = "1";
extras["com.clover.regionalextras.EXTRA_CURRENCY"] = "USD";

saleRequest.setRegionalExtras(extras);
cloverConnector.sale(saleRequest);

.NET

SaleRequest request = new SaleRequest();
request.RegionalExtras.put("com.clover.regionalextras.EXTRA_CURRENCY", "USD");

REST API

{
  "regionalExtras": {
    "currency": "USD",
    "argentina": {
      "invoiceNumber": "2024-11061313",
      "numInstallments": "12"
    }
  }
}