Build With MyBundlePay

One integration for payments, cards, bills and payouts.

MyBundlePay gives developers a clean payment gateway, virtual account funding, payout rails, card issuing tools, bill payments, webhooks and merchant-ready checkout experiences.

REST APIs JSON based
Webhooks Real time events
Sandbox Test first

API Test Console

Test the current endpoint directly from the documentation. Secret keys stay inside this browser session.

Enter your test key, review the sample body for this page, then send a request.

GET https://mybundlepay.com/ng/api/card/customer/{customer_id}

This endpoint retrieves an enrolled customer by customer_id. You must pass your secret key and call from a whitelisted IP.

HEADERS

Authorization * string

Pass your {secret_key} as a Bearer token in the request header to authorize this call.

Content-Type * application/json

IP WHITELISTING

IP must be whitelisted, otherwise you get a 403.


<?php
$curl = curl_init();
curl_setopt_array($curl, array(
  CURLOPT_URL => "https://mybundlepay.com/ng/api/card/customer/{customer_id}",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Authorization: Bearer {secret_key}"
  ),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
?>

curl --request GET \
  --url "https://mybundlepay.com/ng/api/card/customer/{customer_id}" \
  --header "Content-Type: application/json" \
  --header "Authorization: Bearer {secret_key}"
Success Response

{
  "status": "success",
  "message": "Customer retrieved successfully",
  "data": {
    "status": true,
    "message": "Successfully fetched customer",
    "data": {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "first_name": "John",
      "last_name": "Doe",
      "email": "[email protected]",
      "phone_country_code": "234",
      "phone_number": "9087654321",
      "status": "COMPLETED",
      "dob": "01-07-1985",
      "identity": {
        "type": "PASSPORT",
        "number": "A12345678",
        "country": "NG"
      },
      "address": {
        "street": "123 Example Street",
        "city": "Lagos",
        "state": "Lagos State",
        "postal_code": "100001",
        "country": "NG"
      },
      "tier": 2,
      "photo": "https://example.com/document.pdf",
      "created_at": "2025-09-28T15:34:17.54201Z"
    }
  }
}
Error Responses

Customer not found404


{
  "status": "failed",
  "message": "Customer not found"
}

Missing or invalid token401


{
  "status": "failed",
  "message": "Invalid or missing authorization token"
}

IP not whitelisted403


{
  "status": "failed",
  "code": "IP_NOT_WHITELISTED",
  "message": "Your IP is not authorized for API access."
}

MyBundlePay error400


{
  "status": "failed",
  "message": "Exception contacting MyBundlePay",
  "data": {
    "status": false,
    "message": "Validation error from upstream",
    "error": "HTTP request returned status code 400"
  }
}