Registrar Plan
Permite registrar un plan de cobro con la periodicidad de la suscripción y recordatorio de pago oportuno hacia el usuario
curl --location --request POST 'https://api-test.payvalida.com/v4/subscriptions/plans' \
--header 'Content-Type: application/json' \
--data-raw '{
"merchant": "kuanto",
"interval": "month",
"timestamp": 1686943428,
"interval_count": "1",
"amount": "12000",
"description": "",
"checksum": "3f3c826799c2cef777b19cafe7bfa38ec7d334111a4d38f54848ba29ec2050a9ca10e945159098cea1f467b9a297643505fc9a8e2b907889376c45ab121ca3a8"
}'Ejemplos
package main
import (
"bytes"
"crypto/sha512"
"encoding/hex"
"fmt"
"io/ioutil"
"net/http"
"time"
)
func main() {
url := "https://api-test.payvalida.com/v4/subscriptions/plans"
merchant := "kuanto"
interval := "month"
intervalCount := "1"
amount := "12000"
fixedHash := "FIXED_HASH"
checksum := createChecksum(merchant, amount, interval, intervalCount, fixedHash)
payload := []byte(fmt.Sprintf(`{
"merchant": "%s",
"interval": "%s",
"interval_count": "%s",
"amount": "%s",
"description": "",
"checksum": "%s"
}`, merchant, interval, intervalCount, amount, checksum))
req, err := http.NewRequest("POST", url, bytes.NewBuffer(payload))
if err != nil {
fmt.Println("Error creating request:", err)
return
}
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
fmt.Println("Error sending request:", err)
return
}
defer resp.Body.Close()
// Read response body
responseData, err := ioutil.ReadAll(resp.Body)
if err != nil {
fmt.Println("Error reading response body:", err)
return
}
// Print response data
fmt.Println("Response:", string(responseData))
}
func createChecksum(merchant string, amount, interval, intervalCount, fixedHash string) string {
checksumData := merchant + amount + interval + intervalCount + fixedHash
hash := sha512.Sum512([]byte(checksumData))
checksum := hex.EncodeToString(hash[:])
return checksum
}
Last updated