# Nuapay TPP API Specification API

> Nuapay TPP API Specification API on Apizie: 12 endpoints (View Bank Families, View Bank Family, Retrieve Banks, List payments, …) returned as clean JSON through one API key. Send your own provider key in the x-upstream-key header. Call it over REST at https://www.apizie.tech/v1/finance:nuapay/{endpoint} or from Claude, ChatGPT and Cursor through the Apizie MCP server. Free plan: 1,000 requests a month.

- Project key: `finance:nuapay`
- Category: Finance
- Status: byok
- Source: https://nuapay.com
- Page: https://www.apizie.tech/api/finance/nuapay
- OpenAPI: https://www.apizie.tech/api/finance/nuapay/openapi.json

Swagger Spec for the Nuapay TPP OpenBanking/PSD2. Provides PISP and Banks Endpoints

## Endpoints

### View Bank Families
`GET https://www.apizie.tech/v1/finance:nuapay/bank-service-view-bank-families` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| pagenumber | integer | no | Page number |
| pagesize | integer | no | Page size |
| supportedcurrencies | array | no |  |

### View Bank Family
`GET https://www.apizie.tech/v1/finance:nuapay/bank-service-get-bank-family` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| bankfamilyId | string | yes | Bank Family id returned by Get Bank Families endpoint. |

### Retrieve Banks
`GET https://www.apizie.tech/v1/finance:nuapay/bank-service-get-supported-banks` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| country | array | no | CountryCode - ISO country code - indicates where bank is domiciled (ISO 3166 Alpha-2) |
| debtoraccountrequired | boolean | no | Allows to filter the banks that requires debtor account to be provided when initiating payment. |
| pagenumber | integer | no | Page number |
| pagesize | integer | no | Page size |
| supportedcurrencies | array | no |  |
| bankfamilyid | string | no | Allows filtering by Bank Family via the Bank Family Id. |
| excludebankfamily | boolean | no | Allows filtering by Banks without an associated Bank Family. |
| services | array | no | Filter the bank list by service provided returns both AISPs and PISPs, 'AISP' returns only AISPs and 'PISP' returns only PISPs. When not… |
| sepainstantreachability | boolean | no | Filter the bank list by payment method. When not provided or false, returns the full list of banks. When true, the only banks that… |

### List payments
`GET https://www.apizie.tech/v1/finance:nuapay/pisp-service-list-payments` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| fromdatetime | string | no | Submission from date time in the format, 'yyyy-MM-dd'T'HH:mm:ss', maximum date from/to date range is 30 days. If neither from/to date is… |
| todatetime | string | no | Submission to date time in the format, 'yyyy-MM-dd'T'HH:mm:ss', maximum date from/to date range is 30 days. If neither from/to date is… |
| fromamount | number | no | When provided only payments with amount equal or higher than provided amount will be returned |
| toamount | number | no | When provided only payments with amount equal or smaller than provided amount will be returned |
| userinterfacepaymentid | string | no | This is used in UI flows to get payment details. Applicable for payments created with REDIRECT, CHECKOUT integration type. |
| paymentstatus | array | no | A number of statuses can be queried within a single request by providing multiple occurences of the parameter. If not provided all… |
| payername | string | no | Payer name. This parameter supports searching with wildcards |
| payeremail | string | no | Payer e-mail. This parameter supports searching with wildcards |
| reference | string | no | Payment reference will attempt to match endToEndIdentification, remittanceInformation.reference and remittanceInformation.unstructured.… |
| currency | string | no | Currency |
| pagenumber | integer | no | Page number |
| pagesize | integer | no | Page size |

### Create Payment
`POST https://www.apizie.tech/v1/finance:nuapay/pisp-service-make-payment` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Idempotency-Key | string | no | Every request will be processed only once per Idempotency-Key. The Idempotency Key will be valid for 24 hours. |
| PSU-ID | string | no | Client ID of the PSU in the ASPSP client interface. |
| Customer-IP-Address | string | no | The PSU's IP address if the PSU is currently logged in with the TPP. |
| body | object | yes | JSON request body |

### Forward Payment Callback
`POST https://www.apizie.tech/v1/finance:nuapay/pisp-service-forward-payment-callback` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Idempotency-Key | string | no | Every request will be processed only once per Idempotency-Key. The Idempotency Key will be valid for 24 hours. |
| body | object | yes | JSON request body |

### Retrieve Payment
`GET https://www.apizie.tech/v1/finance:nuapay/pisp-service-get-payment` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| paymentId | string | yes | The ID of the payment for which you want to retrieve details |

### Retry Payment
`POST https://www.apizie.tech/v1/finance:nuapay/pisp-service-retry-payment-patch` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| paymentId | string | yes | The ID of the payment that you want to retry |
| Customer-IP-Address | string | no | The PSU's IP address if the PSU is currently logged in with the TPP. |
| body | object | yes | JSON request body |

### Retrieve Payment History
`GET https://www.apizie.tech/v1/finance:nuapay/pisp-service-get-payment-history` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| paymentId | string | yes | The ID of the payment for which you want to retrieve audit trail history |
| pagenumber | integer | no | Page number |
| pagesize | integer | no | Page size |

### List Payment Refunds
`GET https://www.apizie.tech/v1/finance:nuapay/pisp-service-get-payment-refunds` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| paymentId | string | yes | The ID of the payment for which you want to list refunds |
| fromcreationdatetime | string | no | Submission from date time in the format, 'yyyy-MM-dd'T'HH:mm:ss', maximum create date from/to create date range is 30 days. If neither… |
| tocreationdatetime | string | no | Submission to date time in the format, 'yyyy-MM-dd'T'HH:mm:ss', maximum create date from/to create date range is 30 days. If neither… |
| fromrefundamount | number | no | When provided only payments with amount equal or higher than provided amount will be returned |
| torefundamount | number | no | When provided only payments with amount equal or smaller than provided amount will be returned |
| refundstatus | array | no | A number of statuses can be queried within a single request by providing multiple occurences of the parameter. If not provided all… |
| pagenumber | integer | no | Page number |
| pagesize | integer | no | Page size |

### Refund Payment
`POST https://www.apizie.tech/v1/finance:nuapay/pisp-service-refund-payment` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| paymentId | string | yes | The ID of the payment which you want to refund |
| Idempotency-Key | string | no | Every request will be processed only once per x-idempotency-key. The Idempotency Key will be valid for 24 hours. |
| body | object | yes | JSON request body |

### Retrieve Refund
`GET https://www.apizie.tech/v1/finance:nuapay/pisp-service-get-refund` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| paymentId | string | yes | The ID of the payment for which you want to retrieve details |
| refundId | string | yes | The ID of the refund for which you want to retrieve details |

## Example
```
curl "https://www.apizie.tech/v1/finance:nuapay/bank-service-view-bank-families" \
  -H "x-api-key: $APIZIE_KEY" \
  -H "x-upstream-key: $PROVIDER_KEY"
```

## FAQ

### How do I call the Nuapay TPP API Specification API?
Create a free Apizie key, then send GET https://www.apizie.tech/v1/finance:nuapay/bank-service-view-bank-families with the header x-api-key. Every endpoint returns { project, data, timestamp }.

### Is the Nuapay TPP API Specification API free on Apizie?
Yes. The Free plan includes 1,000 requests a month at 100 requests a minute, no credit card. Nuapay TPP API Specification itself also needs your own key from api.nuapay.com.

### Can AI agents use the Nuapay TPP API Specification API?
Yes. Add the Apizie MCP server (https://www.apizie.tech/mcp) to Claude, ChatGPT, Cursor or VS Code, then ask in plain language. The agent calls run_scraper with project key finance:nuapay.

### What is the status of the Nuapay TPP API Specification API?
Needs your own provider key (bring your own key)
