Regional payment flows: Argentina
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 in regionalExtras
regionalExtrasClover 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 theregionalExtras class.
NOTE
These regional payment parameters apply only to REST integrations using the Remote Pay API.
| Parameters | Type | Format | Description |
|---|---|---|---|
currency | string | 3-character | Indicates the payment currency. Example: ARS or USD |
| argentina | object | Indicates fields specific to the country, as follows: | |
invoiceNumber | string | nnnn-nnnnnnnn | Indicates the invoice number of the purchase. |
skipInvoiceDisplay | boolean | true/false | If set to true, the invoice number entry screen does not display, and no invoice number is associated with the transaction. If invoiceNumber is configured, this field is ignored.Note: To display the invoice number entry screen, the Show Invoice Number screen option must be enabled in the Merchant Dashboard. |
numInstallments | integer | 1-99 | Indicates the number of installments. Minimum value: 1, maximum value: 99 If this field is set, the installment entry screen is not displayed. Otherwise, this screen is displayed so the user can enter the number manually. |
merchantId | string | 13-alphanumeric | Universally unique identifier (UUID) for a merchant that Clover assigns. The merchantId is required to complete the payment flow and must be preprogrammed on the device; otherwise, an error message appears indicating that the merchant number provided is invalid. |
cardSymbol | string | 2-character | Used to process the payment only if a card of the indicated brand is used. If a card from a different brand is used during payment processing, an error occurs, and the user can try another card to complete the payment. |
cashbackAmount | integer | Last two digits are reserved for the cents of the amount | Indicates the amount of extra cash the customer wants to receive, which is added to the total payment amount. To use this functionality, the merchant must enable the cashback option from the Merchant Dashboard, and the transaction must use a payment method that supports cashback. |
businessID | string | 8-digit | Required for Non-Bank Networks payments. Indicates the number assigned to the collection agent that is part of the Visa program. |
dynamicMerchantName | string | Recommended format: [extrabankName]*[subMerchantName] | Required for Non-Bank Networks payments. Indicates the name or description of the collection agent. |
| subMerchant | object | Required for PFAC payments (Payment Facilitators). Defined with the following properties: | |
merchantID | string | Unique identifier of the client merchant capturing the transaction. | |
mcc | string | 4-digit | Merchant Category Code. - 6051 for Mastercard transactions. - 4829 for Visa transactions. |
legalName | string | Legal name or business name of the client merchant. | |
| address | object | Indicates the legal address of the client merchant, with the following properties: | |
address 1 | string | Main street address. | |
zip | string | ZIP or postal code. | |
city | string | City. | |
country | string | 3-charater | Country. |
| document | object | Indicates the CUIT (tax ID) details of the client merchant, with the following properties: | |
type | string | Indicates the document type. Use SINGLE_TAX_IDENTIFICATION for CUIT. Note: CUIT (Clave Única de Identificación Tributaria) is the unique tax identification code in Argentina, used to identify individuals, businesses, and entities for all tax-related matters. | |
number | string | 11-digit | Indicates the CUIT number. |
Learn more
To learn about the payment parameters for integrations with the Android SDK, see RegionalExtras on GitHub.
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"
}
}
}
Updated 15 days ago
