canonical: https://jentic.com/apis/psd2.api.commerzbank.com/commerzbank

# Psd2 Api Commerzbank Commerzbank PSD2 PIS API

Commerzbank PSD2 Payment Initiation Service (PIS) API implementing the BerlinGroup XS2A specification version 1.3.11. Supports single payments, periodic payments, and bulk payments. The API exposes 11 endpoints secured with oauth2 authentication.

## For AI agents

Programmatically initiate a single payment, get payment details. Covers 11 operations with oauth2 authentication.

## Scope

Does not handle communications, crm, or developer tools - use for payments only.

## Capabilities

- Initiate a single payment
- Get payment details
- Cancel a payment
- Create payment authorisation
- List payment authorisations

## Use cases

### Payments Operations

Use the Commerzbank PSD2 PIS API to perform payments operations programmatically. The API provides 11 endpoints covering core functionality including initiate a single payment, get payment details, cancel a payment.

Example prompt: Call POST `/payments/{payment-product}` to initiate a single payment

### Automated Bulk Payments Management

Automate bulk payments operations by combining multiple Commerzbank PSD2 PIS API endpoints. Agents can get payment details and then cancel a payment in a single workflow.

Example prompt: Call GET `/payments/{payment-product}/{paymentId}` to get payment details, then verify the result

### AI Agent Integration via Jentic

AI agents discover and call Commerzbank PSD2 PIS API endpoints through Jentic without managing credentials directly. An agent searches for the required operation by intent, receives the matching endpoint schema, and executes the call with Jentic-managed authentication. This eliminates the need to read API documentation or handle oauth2 tokens manually.

Example prompt: Search Jentic for 'initiate a single payment', load the operation schema, and execute with Jentic-managed credentials

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/payments/{payment-product}` | Initiate a single payment |
| GET | `/payments/{payment-product}/{paymentId}` | Get payment details |
| DELETE | `/payments/{payment-product}/{paymentId}` | Cancel a payment |
| GET | `/payments/{payment-product}/{paymentId}/status` | Get payment status |
| POST | `/payments/{payment-product}/{paymentId}/authorisations` | Create payment authorisation |
| GET | `/payments/{payment-product}/{paymentId}/authorisations` | List payment authorisations |
| GET | `/payments/{payment-product}/{paymentId}/authorisations/{authorisation-id}` | Get payment authorisation status |
| POST | `/periodic-payments/{payment-product}` | Initiate a periodic payment |

## Key resources

- **Bulk Payments** — Operations for bulk payments
- **Payments** — Operations for payments
- **Periodic Payments** — Operations for periodic payments

## Why Jentic

- **Setup:** Wiring the Commerzbank PSD2 PIS API by hand means running its OAuth2 authorization flow, managing payment authorisations, and threading the payment-product and payment id through each call yourself. Through Jentic you install once, import the Commerzbank PSD2 PIS API from the API Directory, store the credential once, and your agent calls it.
- **Permission scoping:** Commerzbank puts the payment id in the URL path (`/payments/{payment-product}/{paymentId}`), so a rule can pin your agent to reading the status of a specific payment. You choose the operations it may call, so state changes like initiating or cancelling a payment are not included unless you add them.
- **Credential handling:** Your Commerzbank PSD2 PIS API credential is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'initiate a single payment' or 'check a payment's status', and Jentic returns the matching Commerzbank operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Stripe** — Alternative payments API
- **Adyen** — Alternative payments API
- **Square** — Complementary payments API
- **Paypal** — Complementary payments API

## FAQ

### What authentication does the Commerzbank PSD2 PIS API use?

The Commerzbank PSD2 PIS API uses OAuth 2.0 for authorization. Through Jentic, these credentials are stored encrypted in your Jentic One instance and injected at execution time, so raw secrets never enter the agent context.

### Can I initiate a single payment with the Commerzbank PSD2 PIS API?

Yes. Use the POST `/payments/{payment-product}` endpoint. The API returns structured JSON responses that agents can parse and act on directly.

### What are the rate limits for the Commerzbank PSD2 PIS API?

Rate limits are not specified in the OpenAPI spec. Check the vendor documentation for current limits. Through Jentic, rate limiting is handled automatically with retry logic built into the execution layer.

### How do I initiate a single payment through Jentic?

Install the Jentic SDK with pip install jentic, authenticate through Jentic One, the self-hosted execution layer, then search for 'initiate a single payment'. Jentic returns the matching Commerzbank PSD2 PIS API operation with its input schema. Load the schema and execute the call - credentials are injected automatically.

### How many endpoints does the Commerzbank PSD2 PIS API have?

The Commerzbank PSD2 PIS API exposes 11 endpoints covering bulk payments, payments, periodic payments operations.

### Can I limit what my agent is allowed to do with the Commerzbank PSD2 PIS API?

Yes. Because you run Jentic One yourself, your own rules decide which operations and credentials the agent may use. The Commerzbank PSD2 PIS API puts the payment id in the URL path (`/payments/{payment-product}/{paymentId}`), so you can pin the agent to read-only calls such as getting a specific payment's details or status while withholding state changes like POST `/payments/{payment-product}` or DELETE that would initiate or cancel a payment. State-changing operations run only when you add them to what the agent is allowed to call.
