# Transfer Services

{% hint style="info" %}
The Third party generic api requires api key.
{% endhint %}

[Request API Key](https://developer.providusbank.com/quick-start)

**Base Url:**\
<http://154.113.16.142:8882/postingrest>

***

The interface is implemented as a RESTful web service, exposing the following methods:

* GetBVNDetails
* GetNIPAccount
* NIPFundTransfer
* GetNipBank
* ProvidusTransactionsStatus
* ProvidusFundsTransfer
* NIPFundTransferMultipleDebitAccounts

***

API Endpoints

### Get NIP Account

Reserved accounts are static accounts assigned to a specific user. They do not expire, but should be used judiciously, as there is a limit to the number of virtual accounts that can be created.

{% content-ref url="transfer-services/getnipaccount" %}
[getnipaccount](https://developer.providusbank.com/transfer-services/getnipaccount)
{% endcontent-ref %}

***

### Create Dynamic Account

*Dynamic accounts are designed for one-time payments and can be assigned to different users. By default, they expire 10 minutes after creation (this can be extended up to a maximum of 48 hours) before being reassigned to another user. They must be used for a single payment before expiration.*

{% content-ref url="digital-collection-services/create-dynamic-account-number" %}
[create-dynamic-account-number](https://developer.providusbank.com/digital-collection-services/create-dynamic-account-number)
{% endcontent-ref %}

***

### Update Account Name

*The /PiPUpdateAccountName endpoint is used exclusively for reserved accounts. It allows you to update the account name. In most cases, if a reserved account has been assigned to a user who does not utilize it for transactions, you can reassign the account to another user by updating the account name—helping you manage your limited pool of virtual accounts efficiently.*

{% content-ref url="broken-reference" %}
[Broken link](https://developer.providusbank.com/broken-reference)
{% endcontent-ref %}

***

### Blacklist / Whitelist Account

*The /PiPBlacklistAccount endpoint is used when you suspect that a user is using an account for fraudulent transactions. To prevent funds transferred to such an account from eventually entering your settlement account, you can call this endpoint to blacklist the account.*

*Please note that virtual accounts cannot be deleted—they can only be blacklisted using the /PiPBlacklistAccount endpoint. Also, blacklisted accounts can still receive funds; however, payment notifications will not be processed successfully until the blacklist flag is removed.*

*To remove a blacklist (i.e., to whitelist an account), use the /PiPBlacklistAccount endpoint with the appropriate flag.*

{% content-ref url="digital-collection-services/blacklist-whitelist-account" %}
[blacklist-whitelist-account](https://developer.providusbank.com/digital-collection-services/blacklist-whitelist-account)
{% endcontent-ref %}

***

### Verify Transaction by Session ID

*The verification endpoints are used to confirm that transactions sent to your webhook originate from Providus Bank and to retrieve detailed information about those transactions.*

*Typically, when our system sends a webhook notification, the fintech first calls the appropriate verification endpoint to validate the transaction before responding to the webhook.*

*You can verify a transaction using either the Session ID or Settlement ID provided in the webhook request or previously shared with the fintech, to confirm the transaction exists on our system.*

This endpoint is to verify a transaction by supplying the session id and credentials.

{% content-ref url="broken-reference" %}
[Broken link](https://developer.providusbank.com/broken-reference)
{% endcontent-ref %}

***

### Verify Transaction by Settlement ID

This endpoint is to verify a transaction by supplying the session id and credentials.

{% content-ref url="broken-reference" %}
[Broken link](https://developer.providusbank.com/broken-reference)
{% endcontent-ref %}

***

### Fintech Webhook

Fintech Webhook Endpoint (Your system should expose this endpoint to receive notifications)

{% content-ref url="digital-collection-services/webhook-specification" %}
[webhook-specification](https://developer.providusbank.com/digital-collection-services/webhook-specification)
{% endcontent-ref %}

Notes

·      Dynamic accounts expire after 10 minutes (configurable up to 48 hours).

·      Reserved accounts do not expire but have a creation limit.

·      Funds are swept to your settlement account only upon successful webhook acknowledgment.

·      Duplicate settlement IDs must not be reprocessed.

·      Blacklisted accounts can still receive funds, but no notifications will be sent until whitelisted.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://developer.providusbank.com/transfer-services.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
