For the complete documentation index, see llms.txt. This page is also available as Markdown.

Verify Transaction

Verify the status of a transaction by reference.

Verifies the current status of a transaction using your unique reference. This is the recommended way to confirm transaction completion from your backend.

Endpoint

GET /v1/transactions/:reference/verify

Authentication

No authentication required (public endpoint).

This route is intentionally unauthenticated so that the hosted checkout (which runs in the customer's browser without an API key or JWT) can poll for transaction status using only the reference. Treat the reference as a moderately sensitive identifier — anyone holding it can read the transaction's status.

Path parameters

Parameter
Type
Description

reference

string

Your unique transaction reference

Example request

curl -X GET https://ramp-api.ivorypay.io/api/v1/transactions/550e8400-e29b-41d4-a716-446655440000/verify
const reference = "550e8400-e29b-41d4-a716-446655440000";

const response = await fetch(`https://ramp-api.ivorypay.io/api/v1/transactions/${reference}/verify`, {
  method: "GET",
});

const data = await response.json();
console.log(data);
import requests

reference = "550e8400-e29b-41d4-a716-446655440000"

response = requests.get(
    f"https://ramp-api.ivorypay.io/api/v1/transactions/{reference}/verify",
)

print(response.json())
package main

import (
	"fmt"
	"io"
	"net/http"
)

func main() {
	reference := "550e8400-e29b-41d4-a716-446655440000"

	req, _ := http.NewRequest("GET", "https://ramp-api.ivorypay.io/api/v1/transactions/"+reference+"/verify", nil)

	resp, err := http.DefaultClient.Do(req)
	if err != nil {
		panic(err)
	}
	defer resp.Body.Close()

	body, _ := io.ReadAll(resp.Body)
	fmt.Println(string(body))
}

Example response

{
  "success": true,
  "message": "Verification successful",
  "data": {
    "reference": "550e8400-e29b-41d4-a716-446655440000",
    "status": "SUCCESS",
    "feature": "ON_RAMP",
    "token": "USDT",
    "fiatCurrency": "NGN",
    "fiatAmount": 50000,
    "cryptoAmount": 31.25,
    "transactionHash": "0xabc123..."
  }
}

Best practice: After receiving a webhook, verify the transaction via this endpoint before fulfilling orders or crediting user accounts. This provides an additional layer of security against webhook spoofing.

Last updated