> ## Documentation Index
> Fetch the complete documentation index at: https://docs.payluk.ng/llms.txt
> Use this file to discover all available pages before exploring further.

# Set up testnet cNGN (BSC)

> Add the testnet cNGN token to MetaMask on the BSC Testnet, claim faucet tokens, and whitelist your address so you can test crypto deposits on Payluk.

This guide gets you a funded testnet wallet so you can exercise Payluk's **crypto
deposit** flow end-to-end without spending real money. You'll add the cNGN token to
MetaMask on the **BNB Smart Chain (BSC) Testnet**, claim test cNGN from the faucet,
and whitelist your address.

<Note>
  This setup is for **testnet only**: testnet tokens have no monetary value. When you
  test deposits against the API, use the staging base URL `https://staging.api.payluk.ng`.
</Note>

<Warning>
  Payluk settles crypto only in **cNGN as a BEP-20 token on the Binance Smart Chain (BSC)**.
  Sending any other token, or using any other chain, results in **lost funds**.
</Warning>

## Prerequisites

* A desktop browser (Chrome, Firefox, or Brave recommended)
* A [Payluk account](https://app.payluk.ng)
* A few minutes

## Add cNGN to MetaMask

<Steps>
  <Step title="Install MetaMask">
    Add the MetaMask extension to your browser, then follow the prompts to create or
    import a wallet and securely store your seed phrase.

    * **Chrome**: [MetaMask on the Chrome Web Store](https://chrome.google.com/webstore/detail/metamask)
    * **Firefox**: [MetaMask on Firefox Add-ons](https://addons.mozilla.org/en-US/firefox/addon/ether-metamask/)
    * **Brave**: available via the Chrome Web Store link above

    <Frame caption="Install the MetaMask browser extension">
      ![Install MetaMask](https://files.readme.io/54c8f2c6bcbd66f2a88b2c1f6e942a719f7d15ab03021f8c7edf2efbb75e8cf1-image.png)
    </Frame>
  </Step>

  <Step title="Add the BSC Testnet network">
    1. Go to [testnet.bscscan.com](https://testnet.bscscan.com/).
    2. Scroll to the **bottom left** of the page.
    3. Click **Add BSC Testnet Network**.

    <Frame caption="Add the BSC Testnet network from BscScan">
      ![Add BSC Testnet network](https://files.readme.io/8f04352f9e694fbb7ba9c59192faceab5f7f72c8536ad120d00eeebc6181e629-Screenshot_2026-03-21_101630.png)
    </Frame>
  </Step>

  <Step title="Confirm the network in MetaMask">
    1. Open the MetaMask extension.
    2. Click the network dropdown at the top.
    3. Confirm **BNB Smart Chain Testnet** is now listed.

    <Frame caption="BNB Smart Chain Testnet listed in MetaMask">
      ![Confirm BSC Testnet in MetaMask](https://files.readme.io/b21fa0b171d8102548e9d023fc654674dccaaf560fd2b06bbb39c141a9af0a9e-Screenshot_2026-03-21_101928.png)
    </Frame>
  </Step>

  <Step title="Import the cNGN token">
    1. With **BNB Smart Chain Testnet** selected, find the Tokens section.
    2. Click the three-dot icon (**⋮**) on the right of the network entry.
    3. Select **Import Token**.
    4. Paste the cNGN **BSC Testnet contract address**, then click **Import**.

    <Tip>
      Find the current BSC Testnet contract address in the official cNGN repository:
      [github.com/wrappedcbdc/stablecoin-cngn](https://github.com/wrappedcbdc/stablecoin-cngn).
      Always copy it from the source rather than reusing one pasted elsewhere.
    </Tip>

    <Frame caption="Import the cNGN token by contract address">
      ![Import cNGN token](https://files.readme.io/ff59be6de1908f5c21b1cbabff51f8a06de9b6ef8427747f0f7bf51e73c9dcbf-image.png)
    </Frame>
  </Step>

  <Step title="Verify cNGN appears in your wallet">
    You should now see **cNGN** listed below BNB in your MetaMask token list.

    <Frame caption="cNGN visible in the MetaMask token list">
      ![cNGN in MetaMask](https://files.readme.io/6a066ad65baa58378eccee1717b5caedc11988524ea5046c21414288944004c5-Screenshot_2026-03-21_102300.png)
    </Frame>
  </Step>
</Steps>

## Claim test cNGN from the faucet

<Steps>
  <Step title="Whitelist your address with cNGN">
    1. In MetaMask, click **Receive** and copy your **EVM wallet address**.
    2. Log in to your [cNGN account](https://cngn.co).
    3. Open the **Whitelist** section and add the address you copied.

    <Frame caption="Whitelist your EVM address in your cNGN account">
      ![Whitelist address on cNGN](https://files.readme.io/34487362c72427248eaa254bf62ad3ec064eefb91566393788e5c871512908c0-Screenshot_2026-03-21_102414.png)
    </Frame>
  </Step>

  <Step title="Request tokens from the faucet">
    1. Go to [cngn.co/faucet](https://cngn.co/faucet).
    2. Paste your whitelisted EVM wallet address.
    3. Select **BSC** as the network.
    4. Submit: **1,000 cNGN** will be sent to your wallet. 🎉
  </Step>
</Steps>

<Info>
  This is the **cNGN issuer's** whitelist; it gates who can claim from the faucet. It is
  **separate** from Payluk's deposit whitelist (covered next).
</Info>

## Use your testnet cNGN with Payluk

You now have a funded BSC Testnet wallet. To deposit that cNGN into a customer's Payluk
wallet, the **sending address must be whitelisted with Payluk**: Payluk only credits
deposits from whitelisted addresses, and deposits from unknown addresses are reverted.

<Steps>
  <Step title="Whitelist your sending address with Payluk">
    Add the same address via [Add whitelisted address](/api-reference/crypto-whitelist/add-whitelisted-address)
    with the buyer's **`customer-id`** header (or from the dashboard). Use `network: "BSC"`.

    ```bash theme={null}
    curl -X POST https://staging.api.payluk.ng/v1/whitelist-address \
      -H "Authorization: Bearer sk_test_…" \
      -H "customer-id: <customerId>" \
      -H "Content-Type: application/json" \
      -d '{
        "walletAddress": "0x0915ea16f52b11444695d283e6c0f5936d1e0d56",
        "network": "BSC",
        "label": "My testnet wallet"
      }'
    ```
  </Step>

  <Step title="Get the deposit address">
    Call [Get master wallet address](/api-reference/payments/get-master-wallet-address)
    to retrieve the Payluk deposit address the customer should send cNGN to. The response
    also includes a `qrCode` and an `explorerUrl`.
  </Step>

  <Step title="Send cNGN on BSC">
    From MetaMask, send your test cNGN (BEP-20, BSC) to that deposit address. Once the
    transfer confirms on-chain, the funds are credited to the customer's Payluk wallet.
  </Step>
</Steps>

<Warning>
  A deposit from a **non-whitelisted** address is not credited; it is reverted to the
  sender. Whitelist the address with Payluk **before** sending funds.
</Warning>

## Summary

| Step | Action                                                                          |
| ---- | ------------------------------------------------------------------------------- |
| 1    | Install the MetaMask browser extension                                          |
| 2    | Add BSC Testnet via testnet.bscscan.com                                         |
| 3    | Confirm BNB Smart Chain Testnet in MetaMask                                     |
| 4    | Import the cNGN token using its BSC Testnet contract address                    |
| 5    | Verify cNGN appears in your wallet                                              |
| 6    | Whitelist your address on cNGN and claim 1,000 cNGN from the faucet             |
| 7    | Whitelist the address with Payluk and deposit cNGN to the master wallet address |

## Next steps

<CardGroup cols={2}>
  <Card title="Crypto whitelist" icon="shield-check" href="/api-reference/crypto-whitelist/overview">
    Manage the addresses a customer is allowed to deposit from.
  </Card>

  <Card title="Get master wallet address" icon="wallet" href="/api-reference/payments/get-master-wallet-address">
    The destination address customers send cNGN to.
  </Card>

  <Card title="How it works (end-to-end)" icon="route" href="/concepts/how-it-works">
    See where wallet funding fits in the full merchant journey.
  </Card>

  <Card title="Create a payment intent" icon="money-bill-transfer" href="/api-reference/payments/create-payment-intent">
    Move funds via withdrawal, deposit, wallet transfer, or crypto.
  </Card>
</CardGroup>
