Get SME Registration Status - Afriex Business API

Get SME registration status

cURL

curl --request GET \
  --url https://sandbox.api.afriex.com/api/v1/sme-registration/status \
  --header 'x-api-key: <api-key>'

Python

import requests

url = "https://sandbox.api.afriex.com/api/v1/sme-registration/status"

headers = {"x-api-key": "<api-key>"}

response = requests.get(url, headers=headers)

print(response.text)

JavaScript

const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};

fetch('https://sandbox.api.afriex.com/api/v1/sme-registration/status', options)
  .then(res => res.json())
  .then(res => console.log(res))
  .catch(err => console.error(err));

PHP

$curl = curl_init();

curl_setopt_array($curl, [\
  CURLOPT_URL => "https://sandbox.api.afriex.com/api/v1/sme-registration/status",\
  CURLOPT_RETURNTRANSFER => true,\
  CURLOPT_ENCODING => "",\
  CURLOPT_MAXREDIRS => 10,\
  CURLOPT_TIMEOUT => 30,\
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\
  CURLOPT_CUSTOMREQUEST => "GET",\
  CURLOPT_HTTPHEADER => [\
    "x-api-key: <api-key>"\
  ],\
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}

Go

package main

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

func main() {

url := "https://sandbox.api.afriex.com/api/v1/sme-registration/status"

req, _ := http.NewRequest("GET", url, nil)

req.Header.Add("x-api-key", "<api-key>")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
    body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))
}

Unirest

HttpResponse<String> response = Unirest.get("https://sandbox.api.afriex.com/api/v1/sme-registration/status")
  .header("x-api-key", "<api-key>")
  .asString();

Ruby

require 'uri'
require 'net/http'

url = URI("https://sandbox.api.afriex.com/api/v1/sme-registration/status")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'

response = http.request(request)
puts response.read_body

Response Codes

Response JSON

Successful Response
{
  "data": {
    "onboardingRequestId": "<string>",
    "rejectReasons": ["<string>"]
  }
}
Error Response
{
  "code": "<string>",
  "error": "<string>",
  "details": {
    "errorMessage": "<string>",
    "friendlyMessage": "<string>",
    "data": {
      "customerId": "<string>"
    }
  }
}

Overview

Returns the most recent SME registration state for the authenticated business. Once submitted, the response also includes the latest review outcome so you can gate downstream flows (for example, showing dedicated virtual accounts) on approval.

Requires an API key with admin permission. If the business has never registered, onboardingRequestId and status come back null.

Review status codes

reviewStatus is present only after SUBMIT. Virtual accounts under your entity are issued only after Approved.

Code Meaning
1 Submitted
2 Processing
3 Approved
4 Rejected
5 Account Closed
9 Under Review

When the review is rejected, rejectReasons[] carries human-readable reasons you can surface to the operator.

Authorizations

x-api-key
string
header
required
Static business API key issued from the dashboard. A business can provision multiple API keys, each scoped to a configurable set of permissions (e.g. read transactions, create deposits, etc). Permissions are chosen per key at creation time in the dashboard and may be revoked by deleting the key. Requests made with a key that does not include the permission required by the target endpoint will be rejected with a 403 Forbidden response; an unrecognized, malformed or revoked key returns 401 Unauthorized.

Headers

x-api-version
string
API version in ISO 8601 format (e.g. 2025-12-28). Defaults to latest stable.

Response

200 application/json Current SME registration status.

Data

object
Showchild attributes
Register SME