Creare un pagamento
Introduzione
Per attivare una dilazione o un pagamento è necessario prima inviare una richiesta di dilazione, quindi reindirizzare l'utente al gateway di pagamento con l'identificativo della dilazione ricevuto, passando un URL di ritorno. Il gateway reindirizzerà all'URL inviato per gestire il ritorno del pagamento.
Inviare una richiesta di pagamento in unica soluzione
L'endpoint chiede l'avviamento del pagamento e ritorna l'identificativo per il reindirizzamento.
Richiesta Http
POST https://api.jatapay.it/scrivi_pagamento
Parametri
Parametro | Richiesto | Tipo | Descrizione |
---|---|---|---|
importo | Sì | int | L'importo del pagamento espresso in centesimi di Euro |
callback_url | Sì | string | Un URL Valido per il ritorno del pagamento |
note | No | string | Delle note descrittive per il pagamento |
descrizione_prodotto | Sì | string | La descrizione del prodotto |
cliente | Sì | string | Utilizzare il valore 'open' |
La richiesta deve avere l'header Content-Type: application/json e includere il parametro nel corpo del JSON e l'header Authorization: Bearer token
- shell
- PHP
- Python
curl "https://api.jatapay.it/scrivi_pagamento" \
-H "Authorization: Bearer IL_TOKEN_DI_ACCESSO" \
-d = '{}'
$dati_pagamento = array(
'importo' => 2000, //Importo in centesimi di euro
'callback_url' => 'https://e-commerce.example.com/callback_url',
'note' => 'Pagamento per prodotto esempio'
);
$url = curl_init("https://api.jatapay.it/scrivi_pagamento");
$authorization = "Authorization: Bearer ".$token;
curl_setopt($url, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($url, CURLOPT_POSTFIELDS, json_encode($dati_pagamento));
curl_setopt($url, CURLOPT_RETURNTRANSFER, true);
curl_setopt($url, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Content-Length: ' . strlen(json_encode($dati_pagamento)),
$authorization
));
$result = curl_exec($url);
$api_response = json_decode($result);
curl_close($url);
import requests
import json
token = "IL_TUO_TOKEN"
dati_pagamento = {
"importo": 2000,
"callback_url": "https://e-commerce.example.com/callback_url",
"note": "Pagamento per prodotto esempio"
}
url = "https://api.jatapay.it/scrivi_pagamento"
headers = {
"Content-Type": "application/json",
"Content-Length": str(len(dati_pagamento)),
"Authorization": "Bearer " + token
}
response = requests.post(url, headers=headers, data=json.dumps(dati_pagamento))
if response.status_code == 200:
response = response.json()
else:
print('Error, ' + str(response.status_code))
Il comando ritornerà un JSON con questa struttura:
{
"id_pagamento": "ID_DEL_PAGAMENTO"
}
Reindirizzare l'utente al gateway di pagamento
Una volta ottenuto l'id del pagamento è necessario reindirizzare l'utente al gateway di pagamento all'url:
https://dashboard.jatapay.com/gateway/ID_DEL_PAGAMENTO
Sostituire ID_DEL_PAGAMENTO con l'id ottenuto in precedenza
L'utente completerà il processo di pagamento e sarà reindirizzato all'url passato in precedenza.
Gestire il ritorno del pagamento
In qualunque momento sarà possibile recuperare le informazioni sul pagamentoper il controllo dello stato.
GET https://api.jatapay.it/entity/pagamenti/ID_DEL_PAGAMENTO
Sostituire ID_DEL_PAGAMENTO con l'id ottenuto in precedenza
- shell
- PHP
- Python
curl "https://api.jatapay.it/entity/pagamenti/ID_DEL_PAGAMENTO" \
-H "Authorization: Bearer IL_TOKEN_DI_ACCESSO" \
$urlstring = "https://api.jatapay.it/entity/pagamenti/".$_GET['id_pagamento'];
$url = curl_init($urlstring);
$authorization = "Authorization: Bearer ".$token;
curl_setopt($url, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt($url, CURLOPT_RETURNTRANSFER, true);
curl_setopt($url, CURLOPT_HTTPHEADER, array(
$authorization
));
$result = curl_exec($url);
curl_close($url);
$api_response = json_decode($result);
import requests
import cgi
form = cgi.FieldStorage()
id_pagamento = form.getValue('id_pagamento')
token = 'IL_TUO_TOKEN'
headers = {"Authorization": "Bearer " + token}
url = 'https://api.jatapay.it/entity/pagamenti/' + id_pagamento
response = requests.get(url,headers=headers)
if response.status_code == 200:
response = response.json()
else:
print('Error, ' + str(response.status_code))
Il comando ritornerà un JSON con questa struttura:
{
"_id": "65b2885f6d2f219d702a7f6d",
"callback_url": "https://e-commerce.example.com/callback_url",
"client": "JataPay",
"cliente": "open",
"credit_management": {},
"data_controllo": "Thu, 25 Jan 2024 16:12:15 GMT",
"data_fallimento": "",
"data_inserimento": "Thu, 25 Jan 2024 16:12:15 GMT",
"data_pagamento": "Thu, 25 Jan 2024 16:12:15 GMT",
"esercente": "60c5d53a052bf51a1ca1e1b5",
"importo": 2000, "note": "Pagamento per prodotto esempio",
"stato": "unpaid",
"tentativo_pagamento": 1,
"tipo": "pagamento",
"user": "60c5d53a052bf51a1ca1e1b5"
}