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

# Reference

> Configuration properties, operations, events, and error mapping for the OBPM Batch connectors.

The OBPM Batch integration handles high-volume batch payments with Oracle Banking Payments Manager (OBPM) through Azure Blob Storage. The batch payment connector is outbound: it generates ISO 20022 pain.001 files and writes them to Azure Blob Storage for OBPM to collect. The batch payment inbound connector polls Azure Blob Storage for pain.002 status files and publishes batch-level and payment-level events to the Sync Hub ASB producer. For setup steps, see [Get started](/connectors/payments/obpm-batch/get-started).

For single (non-batch) OBPM payments, see the [OBPM Connector reference](/connectors/payments/obpm/reference).

| Connector                                 | Property file                          | Purpose                                                        |
| :---------------------------------------- | :------------------------------------- | :------------------------------------------------------------- |
| `gc-obpm-batch-payment-connector`         | `batch-payment-v0.values.yaml`         | Outbound batch payment initiation (pain.001 file generation)   |
| `gc-obpm-batch-payment-inbound-connector` | `batch-payment-inbound-v0.values.yaml` | Inbound batch and payment status updates (pain.002 processing) |

**Versions supported:** 14.5, 14.7.

## Configuration properties

### gc-obpm-batch-payment-connector

Set these properties in `batch-payment-v0.values.yaml`. This connector initiates batch payments and writes batch metadata and payment chunks to Azure Blob Storage. It doesn't require the OBPM or Flexcube common properties.

| Property                                               | Description                                                                                                                                                                 | Default                    |
| :----------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------- |
| `azure.storage.account.name`                           | Azure Storage account name for batch files.                                                                                                                                 | N/A (environment-specific) |
| `azure.storage.container.metadata.name`                | Blob container for batch metadata and payment chunk files.                                                                                                                  | N/A (environment-specific) |
| `azure.storage.container.aggregated.name`              | Blob container for the aggregated batch file.                                                                                                                               | N/A (environment-specific) |
| `obpm.batch.payment.method`                            | Optional. Payment method code for the pain.001 `PmtMtd` field, for example `TRF` (credit transfer), `CHK` (cheque), or `TRA` (credit transfer with agreed settlement date). | `TRF`                      |
| `http.client.response.timeout`                         | HTTP response timeout in milliseconds.                                                                                                                                      | `15000`                    |
| `batch.processing.queue.size`                          | Optional. In-memory queue size for asynchronous batch status updates.                                                                                                       | `500`                      |
| `batch.processing.consumers.count`                     | Optional. Number of concurrent consumers processing batch status updates.                                                                                                   | `10`                       |
| `batch.aggregation.sedaasync.queue.size`               | Optional. In-memory queue size for asynchronous batch aggregation.                                                                                                          | `1000`                     |
| `batch.aggregation.sedaasync.concurrentConsumers`      | Optional. Number of concurrent consumers for batch aggregation.                                                                                                             | `5`                        |
| `batch.aggregation.sedaasync.delay`                    | Optional. Delay before each aggregation poll, in milliseconds.                                                                                                              | `500`                      |
| `retryFlag.blobstorage.exception`                      | Enable retries on Azure Blob Storage exceptions.                                                                                                                            | `false`                    |
| `retryStatuses.blobstorage.exception`                  | HTTP status codes that trigger a Blob Storage retry.                                                                                                                        | `429,500,502,503,504`      |
| `redelivery.blobstorage.exception.maximumRetries`      | Maximum Blob Storage redelivery attempts.                                                                                                                                   | `1`                        |
| `redelivery.blobstorage.exception.delay`               | Initial delay between Blob Storage redelivery attempts, in milliseconds.                                                                                                    | `1000`                     |
| `redelivery.blobstorage.exception.backOffMultiplier`   | Backoff multiplier for Blob Storage redelivery attempts.                                                                                                                    | `2`                        |
| `retryFlag.httpoperation.exception`                    | Enable retries on HTTP operation exceptions.                                                                                                                                | `false`                    |
| `retryStatuses.httpoperation.exception`                | HTTP status codes that trigger an HTTP operation retry.                                                                                                                     | `429,500,502,503,504`      |
| `redelivery.httpoperation.exception.maximumRetries`    | Maximum HTTP operation redelivery attempts.                                                                                                                                 | `1`                        |
| `redelivery.httpoperation.exception.delay`             | Initial delay between HTTP operation redelivery attempts, in milliseconds.                                                                                                  | `1000`                     |
| `redelivery.httpoperation.exception.backOffMultiplier` | Backoff multiplier for HTTP operation redelivery attempts.                                                                                                                  | `2`                        |

The connector authenticates to Azure Blob Storage using a managed identity, not a SOPS secret.

### gc-obpm-batch-payment-inbound-connector

Set these properties in `batch-payment-inbound-v0.values.yaml`. This connector polls an Azure Blob Storage container for batch and payment status update files, and publishes events to the Sync Hub ASB producer. It doesn't require the OBPM or Flexcube common properties.

| Property                                         | Description                                                                   | Default                    |
| :----------------------------------------------- | :---------------------------------------------------------------------------- | :------------------------- |
| `azure.storage.account.name`                     | Azure Storage account name for batch status update files.                     | N/A (environment-specific) |
| `azure.storage.container.batch.updates.name`     | Blob container polled for batch status update files.                          | N/A (environment-specific) |
| `obpm.inbound.blob.poller.period`                | Polling interval for new blobs, in milliseconds.                              | `60000`                    |
| `obpm.inbound.blob.poller.limit-enabled`         | Limit the number of blobs processed per poll.                                 | `true`                     |
| `obpm.inbound.blob.poller.max-files`             | Maximum number of blobs processed per poll when the limit is enabled.         | `50`                       |
| `obpm.inbound.blob.worker.concurrent-consumers`  | Number of concurrent workers processing blobs.                                | `5`                        |
| `obpm.inbound.blob.worker.queue.size`            | In-memory worker queue size.                                                  | `500`                      |
| `obpm.inbound.blob.worker.queue.timeout`         | Timeout waiting for worker queue space, in milliseconds.                      | `5000`                     |
| `obpm.inbound.blob.worker.queue.block-when-full` | Block the poller when the worker queue is full, instead of using the timeout. | `true`                     |
| `obpm.inbound.blob.lease.duration`               | Lease duration for processing a blob, in seconds.                             | `60`                       |
| `asb.producer.apiUri`                            | Callback URI of the Sync Hub ASB producer.                                    | N/A (environment-specific) |
| `asb.batch.status.update.event.topic`            | ASB topic for batch status update events.                                     | N/A (environment-specific) |
| `asb.batch.event.type`                           | ASB event type for batch status updates.                                      | N/A (environment-specific) |
| `asb.batch.event.source`                         | ASB source for batch status update events.                                    | N/A (environment-specific) |
| `asb.batch.event.version`                        | ASB schema version for batch status update events.                            | N/A (environment-specific) |
| `asb.batch.payment.status.update.event.topic`    | ASB topic for payment-level status update events.                             | N/A (environment-specific) |
| `asb.payment.event.type`                         | ASB event type for payment-level status updates.                              | N/A (environment-specific) |
| `asb.payment.event.source`                       | ASB source for payment-level status update events.                            | N/A (environment-specific) |
| `asb.payment.event.version`                      | ASB schema version for payment-level status update events.                    | N/A (environment-specific) |
| `retryFlag`                                      | Enable retries on Azure Blob Storage and ASB connection failures.             | `false`                    |
| `httpRetryFlag`                                  | Enable retries on HTTP operation failures.                                    | `false`                    |
| `retry.statuses`                                 | HTTP status codes that trigger a retry.                                       | `429,500,502,503,504`      |
| `redelivery.maximumRetries`                      | Maximum redelivery attempts.                                                  | `3`                        |
| `redelivery.delay`                               | Initial delay between redelivery attempts, in milliseconds.                   | `1000`                     |
| `redelivery.backOffMultiplier`                   | Backoff multiplier for redelivery attempts.                                   | `2`                        |

The connector authenticates to Azure Blob Storage using a managed identity, not a SOPS secret. It publishes one batch-level status update event and one or more payment-level status update events for each processed blob, then deletes the blob. If processing fails, the connector moves the blob to an error folder instead of deleting it.

## Supported operations

The OBPM Batch Connector exposes the Grand Central Unified API. For the operation-to-endpoint tables, see [Overview](/connectors/payments/obpm-batch/overview). For the full contract, see the [unified API specifications](/connectors/reference/unified-api-specifications).

| Method                                         | Endpoint            | Purpose                                     |
| :--------------------------------------------- | :------------------ | :------------------------------------------ |
| <span className="http-method-post">POST</span> | `{baseURL}/batches` | Submit a batch payment file for processing. |

## Events

The batch payment inbound connector publishes the following events to the Sync Hub ASB producer.

| Event                                            | Type property            | Source property            | Version property            | Topic property                                |
| :----------------------------------------------- | :----------------------- | :------------------------- | :-------------------------- | :-------------------------------------------- |
| Batch status update                              | `asb.batch.event.type`   | `asb.batch.event.source`   | `asb.batch.event.version`   | `asb.batch.status.update.event.topic`         |
| Payment status update (per payment in the batch) | `asb.payment.event.type` | `asb.payment.event.source` | `asb.payment.event.version` | `asb.batch.payment.status.update.event.topic` |

The batch payment inbound connector polls the following source.

| Source                                                     | Configuration property                       |
| :--------------------------------------------------------- | :------------------------------------------- |
| Azure Blob Storage container for batch status update files | `azure.storage.container.batch.updates.name` |

The batch payment connector doesn't publish or consume events. It writes batch payment files to Azure Blob Storage for OBPM to pick up, and OBPM separately writes the status files that the batch payment inbound connector polls.

## Error mapping

The connector maps OBPM error codes to Grand Central status codes. For the full list, see [Error codes](/connectors/reference/error-codes). No connector-specific overrides exist for these connectors.

## Dependencies

* Azure Blob Storage, for batch payment file exchange with OBPM.
* Sync Hub ASB producer, which receives the published batch status and payment status events.
* `obpm-connector-sdk` (shared HTTP and blob configuration).
