Esta operación consiste en enviar una referencia y Payvalida responde con la información del monto. Esta referencia puede estar asociada a una orden de compra o recarga con el numero documento.
Cadena de comprobación, calculada con SHA512(name + reference + FIXED_HASH)
//Consulta orden de compra
> curl https://sandbox-cashin.payvalida.com/v1/orders/73841?name=BEVALIDA_343&checksum=BBDC08FFE37B956468D21DC1083DA05F1FED7FDA494C765C2EC58EF11B5D95FA7C1E801F1CD8739F16C8006F5802A97F6E3E5036FE5F3FE9C2AD5F9DDB46383B
//Consulta recarga cliente
> curl https://sandbox-cashin.payvalida.com/v1/orders/9999999999?name=BEVALIDA_343&checksum=AA1762CAF3371DBC391B5B09FAB26F3DB88C2B2218371A7DAEBE1382DB0B00CC0D64BF221920C782287CD49CEBF32987D554E8DBA3DE0DD8731F93AB549B9A6E
Campo
Estructura
Tipo
Descripción
CODE
-
string
Código de respuesta 0000 para OK.
DESC
-
string
Descripción de la respuesta.
DATA
-
-
Datos del pago.
LASTNAME1
DATA
string
Primer apellido del usuario. **
LASTNAME2
DATA
string
Segundo apellido del usuario. **
AMOUNT
DATA
double
Monto de la orden. (Si el monto es cero en la operación POST Payvalida aceptara cualquier monto superior)
DESCRIPTION
DATA
string
Descripción del pago a realizar **
DI
DATA
string
Numero de documento asociado al cliente del pago. **
COMMERCE
DATA
string
Nombre del comercio al cual esta asociado el pago, si es una recarga de cuenta payvalida el comercio sera Payvalida.
REFERENCE
DATA
string
Numero de la referencia enviado **
TYPEDI
DATA
string
Tipo de documento en DI. **
NAME
DATA
string
Nombre del cliente asociado a la compra o recarga. **
//Para una orden de compra
{
"CODE": "0000",
"TEXT": "OK",
"DATA": {
"LASTNAME1": "",
"LASTNAME2": "",
"AMOUNT": 3002.0,
"DESCRIPTION": "Compra 29143_1 (Prueba...)",
"DI": "99999999",
"COMMERCE": "Kuanto Test",
"REFERENCE": "73841",
"TYPEDI": "",
"NAME": ""
}
}
//Para una recarga de cuenta
{
"CODE": "0000",
"TEXT": "OK",
"DATA": {
"LASTNAME1": "Test",
"LASTNAME2": "Colombia",
"AMOUNT": 0.0,
"DESCRIPTION": "",
"DI": "9999999999",
"COMMERCE": "Payvalida",
"REFERENCE": "9999999999",
"TYPEDI": "CEDULA DE CIUDADANIA",
"NAME": "Payvalida Null"
}
}
loscampos marcados con ** pueden traer su string vacio.
Cuando el monto en respuesta es CERO, en estos casos Payvalida aceptará cualquier valor mayor a cero enviado por la red para esa transacción. En los casos donde las operaciones tienen montos mayores a CERO, Payvalida solo aceptará transacciones con montos iguales al indicado en la operación.
Ejemplos:
GO
package main
import (
"crypto/sha512"
"encoding/hex"
"fmt"
"io/ioutil"
"net/http"
)
func main() {
reference := "9999999999"
red := "COMPLETAR" //Cambiar por nombre de red
fixedHash := "COMPLETAR" //Completar con el fixedHash
checksum := sha512.Sum512([]byte(red + reference + fixedHash))
url := "https://sandbox-cashin.payvalida.com/v1/orders/" + reference + "?name=" + red + "&checksum=" + hex.EncodeToString(checksum[:])
method := "GET"
client := &http.Client{}
req, err := http.NewRequest(method, url, nil)
if err != nil {
fmt.Println(err)
return
}
res, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
body, err := ioutil.ReadAll(res.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}