WebSite X5Help Center

 
Domenico C.
Domenico C.
User

Integrazione payu latam  it

Autore: Domenico C.
Visite 719, Followers 4, Condiviso 0  

Ciao a tutti

ho bisogno di integrare questo form come metodo di pago (PAYU LATAM) nel nostro software.

<form method="post" action="https://sandbox.checkout.payulatam.com/ppp-web-gateway-payu/">   <input name="merchantId" type="hidden" value="508029" >   <input name="accountId" type="hidden" value="512321" >   <input name="description" type="hidden" value="Test PAYU" >   <input name="referenceCode" type="hidden" value="TestPayU" >   <input name="amount" type="hidden" value="20000" >   <input name="tax" type="hidden" value="3193" >   <input name="taxReturnBase" type="hidden" value="16806" >   <input name="currency" type="hidden" value="COP" >   <input name="signature" type="hidden" value="7ee7cf808ce6a39b17481c54f2c57acc" >   <input name="test" type="hidden" value="1" >   <input name="buyerEmail" type="hidden" value="***" >   <input name="responseUrl" type="hidden" value="http://www.test.com/response" >   <input name="confirmationUrl" type="hidden" value="http://www.test.com/confirmation" >   <input name="Submit" type="submit" value="Enviar" > </form>

come faccio o come posso  prendere i valori che mi chiede il form di payu per poi realizzare il pagamento.

PayU e' il sistema di pagamento piu utilizzato in latino america specialmente in colombia dove vivo, e considerato che la colombia non e' un paese dollarizzato, quindi tutti gli acquisti sui siti locali li fanno in peso colombiano (COP).

Ho veramente bisgono di un aiuto grazie

Postato il
11 RISPOSTE
Incomedia
Stefano G.
Incomedia

Buongiorno Domenico

Il software permette di integrare codici esterni per gestire il pagamento, ma lo Staff non può purtroppo fornire supporto per questi codici esterni

Se hai necessità di supporto nell'integrazione di codici esterni, posso solo suggerire di consultare direttamente un professionista esterno del settore perchè possa assisterti con l'inserimento corretto all'interno del software

Mi spiace non poter essere di ulteriore aiuto a riguardo ma resto a disposizione in caso di ulteriori dubbi

Grazie per la comprensione

Stefano

Leggi di più
Postato il da Stefano G.
Domenico C.
Domenico C.
User
Autore

Grazie Stefano per la sua gentile risposta.

Pero la mia domanda era la seguente "come faccio o come posso  prendere i valori che mi chiede il form di payu per poi realizzare il pagamento"?

Il form che ho postato e' di un plugin di PAYU la parte HTML che invia dei valori con il metodo post ad un file che si incarica di portare a termine il pagamento.

Nella vostra guida nella sezione per i pagamenti personalizzati ce scritto che il software ha bisogno di due valori importanti per elaborare il pagamento; 

[ORDER_NO]

[PRICE] 

Questi due valori sono all'interno di un file PHP o JS mi immagino e sono due variabili dichiarate.

La mia domanda e' ; qual'é il file che li contiene per andare avanti con l'ntegrazione del plugin ?

Grazie per la comprensione

Domenico

Leggi di più
Postato il da Domenico C.
Incomedia
Stefano G.
Incomedia

Buongiorno Domenico

Grazie per il chiarimento. Questi due campi li puoi usare come mostro nello screenshot:

Scrivendo quelle stringhe di testo in questo punto, il software andrà a sostituirle nel sito finale con il numero di ordine e totale effettivo di questo

Inserendo queste stringhe all'interno del resto del codice, dovresti riuscire ad ottenere i valori di cui hai bisogno

Fai una prova e fammi sapere se ci riesci

Grazie

Stefano

Leggi di più
Postato il da Stefano G.
Domenico C.
Domenico C.
User
Autore

Ciao Stefano

Gentilissimo e grazie per la tua collaborazione.

se non ho capito male allora il codice dovrebbe essere il seguente

[ORDER_NO]
[PRICE]
<form method="post" action="https://sandbox.checkout.payulatam.com/ppp-web-gateway-payu/">
<input name="merchantId" type="hidden" value="508029" >
<input name="accountId" type="hidden" value="512321" >
<input name="description" type="hidden" value="Test PAYU" >
<input name="referenceCode" type="hidden" value="0">
<input name="amount" type="hidden" value="0">
<input name="tax" type="hidden" value="19" >
<input name="taxReturnBase" type="hidden" value="0" >
<input name="currency" type="hidden" value="USD" >
<input name="signature" type="hidden" value="" >
<input name="test" type="hidden" value="1" >
<input name="buyerEmail" type="hidden" value="" >
<input name="responseUrl" type="hidden" value="" >
<input name="confirmationUrl" type="hidden" value="http://laboratoriosanroque.com/confirmation" >
<input name="Submit" type="submit" value="Enviar" >
</form>

Quindi <input name="referenceCode" type="hidden" value="0"> prende il valore da [ORDER_NO]
<input name="amount" type="hidden" value="0"> prende il valore da [PRICE]

peró quando si elabora la richiesta per l'invio dei dati ricevo un messaggio di errore come questo:

"UNIQUE_REFERENCE TX_VALUE: Cannot be null or empty and must be greater than [0]"

Come puoi vedere il metodo(PayU) e' molto semplice

<input name="signature" type="hidden" value="" > e' la firma che si genera (valore univoco) per la transazione in corso. 

<input name="test" type="hidden" value="1" > indica la versione di prova o test 

<input name="responseUrl" type="hidden" value="" > se voglio fare riferimento ad un file/link diverso da quello di PayU

Ci sono altri parametri che bisogna aggiungere al codice a parte di quei 2 che si passano?

Grazie per la collaborazione

Domenico

Leggi di più
Postato il da Domenico C.
Incomedia
Stefano G.
Incomedia

Buongiorno Domenico

Dovrebbe essere qualcosa come:

<form method="post" action="https://sandbox.checkout.payulatam.com/ppp-web-gateway-payu/">
<input name="merchantId" type="hidden" value="508029" >
<input name="accountId" type="hidden" value="512321" >
<input name="description" type="hidden" value="[ORDER_NO]" >
<input name="referenceCode" type="hidden" value="0">
<input name="amount" type="hidden" value="[PRICE]">
<input name="tax" type="hidden" value="19" >
<input name="taxReturnBase" type="hidden" value="0" >
<input name="currency" type="hidden" value="USD" >
<input name="signature" type="hidden" value="" >
<input name="test" type="hidden" value="1" >
<input name="buyerEmail" type="hidden" value="" >
<input name="responseUrl" type="hidden" value="" >
<input name="confirmationUrl" type="hidden" value="http://laboratoriosanroque.com/confirmation" >
<input name="Submit" type="submit" value="Enviar" >
</form>

Tuttavia non è detto che questi dati siano sufficiente

Fai una prova e fammi sapere

Grazie

Stefano

Leggi di più
Postato il da Stefano G.
Domenico C.
Domenico C.
User
Autore

Ciao Stefano 

Grazie ancora per la tua gentile collaborazione.

Allora ti aggiorno: 

1 Il parametro [ORDER_NO] viene accettato e ritorna una stringa che e' il codice dell'ordine in corso.

Quindi tutto bene fino a qui.

Invece il parametro [PRICE] ritorna un errore ed e' il seguente:

UNIQUE_REFERENCE TX_VALUE: The additional value exceeds the maximum number of decimal digits (2).

In questo caso anche togliendo il punto decimale, (quindi solo interi) ricevo sempre lo stesso errore.

Un dato curioso; se al posto di [PRICE] metto un valore numerico intero (es. 1000), quindi <input name="amount" type="hidden" value="1000"> tutta la procedura va a buon termine, ma con il valore di default("1000") invece di prendere il valore dell'ordine.

Non so, cosa ne pensi tu?

Domenico

Leggi di più
Postato il da Domenico C.
Incomedia
Stefano G.
Incomedia

Buongiorno Domenico

Mi scuso ma non ho capito bene. L'errore che indichi ti appare una volta che arrivi sul sito del sistema di pagamento o già proprio all'interno del sito quando arrivi alla pagina di pagamento?

Fammi sapere qui

Grazie

Stefano

Leggi di più
Postato il da Stefano G.
Domenico C.
Domenico C.
User
Autore

Buongiorno Stefano

Mi scuso se non sono stato chiaro, allora mi spiego meglio.

Il tag <input name="amount" type="hidden" value="[PRICE]"> si incarica di prendere il valore del carrello dalla variabile [PRICE] e poi trasmetterla alla pagina del sito del sistema di pagamento.

Pero quando entriamo alla pagina del sistema di pagamento, ricevo un errore come il seguente:

UNIQUE_REFERENCE TX_VALUE: The additional value exceeds the maximum number of decimal digits (2).

Adesso se al posto di [PRICE] metto un valore intero ad esempio 1000, quindi <input name="amount" type="hidden" value="1000"> tutta la procedura va a buon fine, con una eccezione;

Il valore del carrello e' 1000 invece di essere il valore totale dei prodotti acquistati.

Posso suggerire (sempre se possibile) di fare tu una prova con il codice html che ho postato in precedenza?

Grazie

Domenico

Leggi di più
Postato il da Domenico C.
Incomedia
Stefano G.
Incomedia

Buongiorno Domenico

Dall'errore che leggo, immagino significhi che il software può restituire un valore di costo che ha più di due numeri dopo la virgola ed è possibile che il sistema di pagamento indicato non li accetti

Potresti verificare se attraverso qualche altro codice extra riesci a formattare il costo in maniera adeguata per il sistema di pagamento per esempio, oppure verificare se questa condizione può essere modificata dal provider del metodo di pagamento

Credo che risolvendo ciò, l'errore sparisca

Spero di essere stato utile

Stefano

Leggi di più
Postato il da Stefano G.
Domenico C.
Domenico C.
User
Autore

Ciao Stefano

Mi sono preso un po di tempo per fare delle prove anche con un altro software, per verificare se si presenta lo stesso errore.

Ovviamente prima ho parlato con quelli della PayU Latino America e mi hanno detto che il loro codice non ha mai presentato problemi fino a questo momento. Ovviamente devo prendere per buono quello che mi dicono.

In effetti pero la cosa curiosa e' che con il software della Lauyan il TOWEB versione 9 lo stesso codice non ha problemi ed il tutto funziona correttamente.

I 2 parametri necessari in questo caso sono i seguenti: 

{OrderID}

{ORDERTOTAL}

Ti posto integralmente la loro avvertenza:

<!-- PAYMENT SCRIPT EXAMPLE (must be replaced by your own payment script)
This script is a demo example to illustrate how you may use and
adapt our own payment script with your bank or payment system provider
if not supported by default by TOWeb. The two main important fields you
need to use in your script and communicate to your online payment system
are the followings :
{OrderID} = the unique identifier of the order (questo sarebbe il tuo [ORDER_NO] )
{ORDERTOTAL} = the total amount of the order (questo sarebbe il tuo [PRICE] )

Important: these field names have to be placed between { } and are case
sensitive. So be careful to type them with all the exact uppercase and
lowercase characters.

Cosa ne pensi? Io credo che ce' un bug nel software, poi ovviamente i tuoi sviluppatori ne sapranno molto di piu.

Fammi sapere cosa ne pensi.

Grazie 

Domenico

Leggi di più
Postato il da Domenico C.
Incomedia
Stefano G.
Incomedia

Buongiorno Domenico

Chiedo scusa se mi sono spiegato male, ma quello che intendevo dire è che non c'è nessun bug né nel codice fornito da PayU né in WebSite X5

Il problema è dato dal fatto che PayU probabilmente richiede obbligatoriamente che il costo che gli viene fornito abbiamo massimo 2 cifre di decimale mentre WebSite X5 ne genera di più

Nessuno dei due è un bug, però va gestito esternamente da codice una conversione del costo fornito da WebSite X5 così che vada bene per il servizio. Qui mi ricollego a ciò che indicavo prima

Dotresti verificare se attraverso qualche altro codice extra riesci a formattare il costo in maniera adeguata per il sistema di pagamento, altrimenti è possibile che il pagamento non possa proprio andare avanti

Spero di essere stato più chiaro

Stefano

Leggi di più
Postato il da Stefano G.