Installazioni
Configura le campagne MSI e MCI, recupera le opzioni applicabili a un ordine e invia la selezione esatta del cliente con il pagamento.
In questa pagina
Le campagne di rate trasformano le regole del commerciante in opzioni di pagamento che DEUNA può mostrare per un ordine specifico e una carta. Una campagna non addebita direttamente al cliente. Definisce i termini idonei; il processo di checkout recupera tali termini e l'acquisto invia l'opzione esatta selezionata dal cliente.
Cos'è una campagna di rate?#
Una campagna è un insieme di regole di idoneità e di prezzo definito dal commerciante. In DEUNA Admin, scegli il tipo di campagna, la valuta, il periodo di validità, i fornitori di pagamento, i termini di finanziamento e le regole delle marche di carte. Ogni regola per la marca di carta può definire un importo minimo e massimo per rata e il tasso o il costo del commerciante applicabile.
Al checkout, DEUNA combina la campagna con il contesto di pagamento attivo. Un'opzione viene restituita solo quando corrispondono le condizioni pertinenti.
| Contesto della campagna o del pagamento | Come influisce sul risultato |
|---|---|
| Commerciante, negozio, stato e date | La campagna deve appartenere al commerciante, applicarsi al negozio dell'ordine, essere attiva e rientrare nel suo periodo di validità. Una campagna senza sovrascrittura del negozio si applica a all. |
| Valuta | La valuta della campagna deve corrispondere alla valuta dell'ordine. |
| Marchio di carta | DEUNA determina il marchio in base al BIN fornito o memorizzato e applica la regola di marchio corrispondente. |
| Intervallo per l'importo per rata | L'importo calcolato per ogni rata deve soddisfare il minimo e, facoltativamente, il massimo configurati per quel termine e marchio. |
| Fornitore di pagamento | Almeno un processore configurato nella campagna deve essere abilitato per il pagamento. |
| Vincoli di routing | Il routing intelligente o dinamico può rimuovere i processori o i termini di rata che non sono validi per il percorso selezionato. |
Da campagna a pagamento#
Per DEUNA Widgets, l'esperienza di checkout supportata recupera e presenta le opzioni applicabili. Per un'integrazione API diretta, il tuo checkout recupera i valori, li visualizza e invia la selezione tramite Purchase V2.
1. Configurare una campagna#
Apri Configurazione delle rate nella DEUNA AdminUn utente deve avere i permessi per visualizzare le campagne di rate; la creazione, la modifica, l'attivazione o la disattivazione richiedono i permessi di modifica corrispondenti.
- Scegli
MSIoMCI, nominare la campagna e confermare la sua valuta. - Definisci una data di inizio e fine opzionale, oppure lascia la campagna senza un periodo di validità definito.
- Seleziona uno o più fornitori di pagamento compatibili.
- Aggiungi i termini di pagamento offerti.
- Per ogni termine, abilita i marchi di carte e configura l'intervallo e il tasso o il costo per ogni rata.
- Salva e attiva la campagna.
Il supporto del fornitore, gli accordi commerciali e la configurazione dell'account determinano quali processori sono disponibili. Conferma i requisiti non supportati o specifici del mercato con il tuo Account Manager DEUNA (TAM).
2. Recupera le opzioni applicabili#
Utilizza il token dell'ordine e un BIN di carta per recuperare le opzioni per una nuova carta. Un flusso di pagamento memorizzato può utilizzare il suo identificatore di carta supportato invece. Poiché l'idoneità dipende dall'ordine, un percorso API diretto che mostra le rate prima del pagamento richiede un token di ordine prima di questa richiesta.
curl --request GET \
--url 'https://api.sandbox.deuna.io/merchants/transactions/orders/ORDER_TOKEN/installments?bin=411111' \
--header 'X-Api-Key: YOUR_PRIVATE_API_KEY' \
--header 'X-Merchant-ID: YOUR_MERCHANT_ID'const response = await fetch("https://api.sandbox.deuna.io/merchants/transactions/orders/ORDER_TOKEN/installments?bin=411111", {
method: "GET",
headers: {
"X-Api-Key": "YOUR_PRIVATE_API_KEY",
"X-Merchant-ID": "YOUR_MERCHANT_ID"
}
});
if (!response.ok) throw new Error(`Request failed: ${response.status}`);
const data = await response.json();import requests
response = requests.request(
"GET",
"https://api.sandbox.deuna.io/merchants/transactions/orders/ORDER_TOKEN/installments?bin=411111",
headers={
"X-Api-Key": "YOUR_PRIVATE_API_KEY",
"X-Merchant-ID": "YOUR_MERCHANT_ID"
},
)
response.raise_for_status()
data = response.json()<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.sandbox.deuna.io/merchants/transactions/orders/ORDER_TOKEN/installments?bin=411111",
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
"X-Api-Key: YOUR_PRIVATE_API_KEY",
"X-Merchant-ID: YOUR_MERCHANT_ID"
]
]);
$response = curl_exec($curl);
curl_close($curl);import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class Example {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.sandbox.deuna.io/merchants/transactions/orders/ORDER_TOKEN/installments?bin=411111"))
.header("X-Api-Key", "YOUR_PRIVATE_API_KEY")
.header("X-Merchant-ID", "YOUR_MERCHANT_ID")
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient().send(
request, HttpResponse.BodyHandlers.ofString()
);
System.out.println(response.body());
}
}package main
import (
"fmt"
"io"
"net/http"
)
func main() {
request, err := http.NewRequest("GET", "https://api.sandbox.deuna.io/merchants/transactions/orders/ORDER_TOKEN/installments?bin=411111", nil)
if err != nil { panic(err) }
request.Header.Set("X-Api-Key", "YOUR_PRIVATE_API_KEY")
request.Header.Set("X-Merchant-ID", "YOUR_MERCHANT_ID")
response, err := http.DefaultClient.Do(request)
if err != nil { panic(err) }
defer response.Body.Close()
body, _ := io.ReadAll(response.Body)
fmt.Println(string(body))
}Vedi Elenca le opzioni di pagamento per il contratto completo.
Un'opzione restituita contiene i valori che il tuo checkout deve visualizzare e conservare:
{
"installments": [
{
"installments": 6,
"installments_amount": 16667,
"display_installments_amount": "MXN 166.67",
"installment_rate": 0,
"display_installment_label": "6 payments of MXN 166.67 without interest",
"plan_option_id": "a4756a5f-7f9b-414d-8712-e3a9da2be337",
"installment_total_amount": 100000,
"display_installment_total_amount": "MXN 1,000.00"
}
]
}Gli importi sono espressi nell'unità minore della valuta. Utilizza i campi di visualizzazione per la comunicazione con il cliente quando vengono restituiti, e mantieni i campi numerici per i calcoli e la riconciliazione.
3. Invia l'opzione selezionata#
Invia sia valori dallo stesso elemento di risposta:
payment_source.card_info.installments: il numero di rate selezionato.payment_source.card_info.installment.plan_option_id: l'ID esatto di quella opzione selezionata.
{
"order_token": "ORDER_TOKEN",
"payer_info": {
"email": "customer@example.com"
},
"payment_source": {
"method_type": "credit_card",
"card_info": {
"card_id": "CARD_ID",
"installments": 6,
"installment": {
"plan_option_id": "a4756a5f-7f9b-414d-8712-e3a9da2be337"
}
}
}
}Il numero e l'ID devono descrivere la stessa opzione. DEUNA utilizza l'ID dell'opzione per recuperare il piano risolto e i processori idonei, e utilizza il conteggio delle rate nella richiesta di pagamento inviata tramite la connessione selezionata.
Continua con Creare il pagamento per il contratto Purchase V2 completo.
Checklist di implementazione#
- Mostra solo le opzioni restituite per l'ordine e il contesto della carta correnti.
- Conserva
plan_option_idcon il corrispondenteinstallmentsvalue. - Per MCI, mostra l'importo finanziato e l'importo della rata prima della conferma.
- Recupera nuovamente le opzioni quando l'importo dell'ordine, la valuta, la carta o il contesto di pagamento pertinente cambiano.
- Considera una lista vuota di opzioni come "nessuna opzione di campagna idonea", e non come un errore di pagamento.
- Testa con carte e fornitori di pagamento approvati per la campagna configurata.