# Peach Payments Reconciliation API

> Peach Payments Reconciliation API on Apizie: 22 endpoints (Initiate redirect-based Checkout, Initiate Checkout, Validate Checkout request, Query Checkout status, …) 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://apizie.tech/v1/payments:peach-payments/{endpoint} or from Claude, ChatGPT and Cursor through the Apizie MCP server. Free plan: 1,000 requests a month.

- Project key: `payments:peach-payments`
- Category: Payments
- Status: byok
- Source: https://www.peachpayments.com
- Page: https://apizie.tech/api/payments/peach-payments
- OpenAPI: https://apizie.tech/api/payments/peach-payments/openapi.json

Documentation for the Reconciliation API endpoints

## Endpoints

### Initiate redirect-based Checkout
`POST https://apizie.tech/v1/payments:peach-payments/checkout-generation-initiate-redirect-checkout` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Referer | string | yes | An allowlisted domain for the merchant. |
| body | object | yes | JSON request body |

### Initiate Checkout
`POST https://apizie.tech/v1/payments:peach-payments/checkout-generation-initiate-payment` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Referer | string | yes | An allowlisted domain for the merchant. |
| body | object | yes | Form fields as a JSON object |

### Validate Checkout request
`POST https://apizie.tech/v1/payments:peach-payments/checkout-generation-validate-request` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Referer | string | yes | An allowlisted domain for the merchant. |
| body | object | yes | JSON request body |

### Query Checkout status
`GET https://apizie.tech/v1/payments:peach-payments/status-checkout-status-get` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| authentication.entityId | string | yes | Merchant's entity ID. |
| checkoutId | string | no | Checkout ID. |
| merchantTransactionId | string | no | Merchant transaction ID. |
| signature | string | yes | Signature of data signed with secret key of merchant. |

### Retrieve a list of payment methods for a currency
`POST https://apizie.tech/v1/payments:peach-payments/helpers-get-payment-methods` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Initiate Checkout
`POST https://apizie.tech/v1/payments:peach-payments/checkout-v2-generation-initiate-checkout-instance` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| Referer | string | yes | An allowlisted domain for the merchant. |
| body | object | yes | JSON request body |

### Generate link
`POST https://apizie.tech/v1/payments:peach-payments/payment-generate-link` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| entityId | string | yes | The entity for the request. |
| body | object | yes | JSON request body |

### Retrieve or export all payment links
`GET https://apizie.tech/v1/payments:peach-payments/payment-get-all-payment-links` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| merchant | string | no | The unique merchant ID to scope the list to. Required if you're exporting payment links to CSV. |
| offset | integer | no | The offset from which to read data. |
| perPage | integer | no | The amount of items to retrieve. |
| filters[startDate] | string | no | Retrieve all payment links from the start date onwards. |
| filters[endDate] | string | no | Retrieve all payment links until the end date. |
| filters[status] | string | no | The payment link status to filter on. |
| filters[amountValue] | number | no | The amount to filter by. |
| filters[amountOperator] | string | no | How to use the amountValue for filtering. |
| filters[sendingOptions] | string | no | The sending option to filter on. |

### Query payment status
`GET https://apizie.tech/v1/payments:peach-payments/status-query-payment-status` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| paymentId | string | yes | Payment ID. Returned when creating a new payment. |

### Cancel link
`POST https://apizie.tech/v1/payments:peach-payments/payment-cancel-link` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| paymentId | string | yes | The ID of the payment. Returned when creating a new payment. |

### Download a file
`GET https://apizie.tech/v1/payments:peach-payments/files-download-file` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| paymentId | string | yes | Payment ID. |
| fileId | string | yes | File ID. |

### Upload a file
`POST https://apizie.tech/v1/payments:peach-payments/files-upload-file` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | no | Form fields as a JSON object |

### Get all batch statuses
`GET https://apizie.tech/v1/payments:peach-payments/batch-get-batch-statuses` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| entityId | string | yes | The entity for the request. |
| offset | number | no | The offset from which to read data. |
| perPage | number | no | The amount of items to retrieve. |
| filters[startDate] | string | no | Retrieve all batches from the start date onwards. |
| filters[endDate] | string | no | Retrieve all batches until the end date. |
| filters[status] | string | no | The payment link status to filter on. |

### Generate batch link
`POST https://apizie.tech/v1/payments:peach-payments/batch-generate-link` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| entityId | string | yes | The entity for the request. |
| body | object | yes | JSON request body |

### Batch link status
`GET https://apizie.tech/v1/payments:peach-payments/batch-link-status-get` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| batchId | string | yes | The batch ID for the request. |

### Get batch error files
`GET https://apizie.tech/v1/payments:peach-payments/batch-get-error-files` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| batchId | string | yes | The batch for the request. |

### Merchant webhook
`POST https://apizie.tech/v1/payments:peach-payments/merchant-webhook` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| X-Initialization-Vector | string | no | Initialization vector used to decrypt webhook payload. |
| X-Authentication-Tag | string | no | Authentication tag. |
| body | object | no | JSON request body |

### Query a transaction by merchantTransactionId
`GET https://apizie.tech/v1/payments:peach-payments/transaction-status` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| authentication.userId | string | yes | Authentication userId. |
| authentication.password | string | yes | Authentication password. |
| authentication.entityId | string | yes | Authentication entityId |
| merchantTransactionId | string | yes | Merchant-provided reference number, often used for reconciliation. |

### Payment
`POST https://apizie.tech/v1/payments:peach-payments/payments-api-inbound-initiate-debit-transaction` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | no | JSON request body |

### Query a transaction by transaction ID
`GET https://apizie.tech/v1/payments:peach-payments/payments-api-inbound-query-transaction-by-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| uniqueId | string | yes | The Peach Payments unique ID for the transaction. |
| authentication.entityId | string | yes | Authentication entityId. |
| authentication.userId | string | yes | Authentication userId. |
| authentication.password | string | yes | Authentication password. |

### Refund
`POST https://apizie.tech/v1/payments:peach-payments/payments-api-inbound-refund-transaction` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| uniqueId | string | yes | The Peach Payments unique ID of the original debit transaction. |
| body | object | no | JSON request body |

### List transactions-recon
`GET https://apizie.tech/v1/payments:peach-payments/transactions-recon-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| merchantId | string | yes | The merchant's identifier. |
| startDate | string | yes | Beginning of the query range (inclusive). Since this is in the query string, URL-encode the date when specifying a timezone. For example,… |
| endDate | string | yes | End of the query range (exclusive). Since this is in the query string, URL-encode the date when specifying a timezone. For example,… |
| isSuccessful | boolean | no | Whether the transaction was successful or not. If not provided, all transactions are returned. |
| paymentMethod | string | no | The payment method used to facilitate the transaction, for example: - `bnpl` - `card` - `eft` |

## Example
```
curl "https://apizie.tech/v1/payments:peach-payments/checkout-generation-initiate-redirect-checkout" \
  -H "x-api-key: $APIZIE_KEY" \
  -H "x-upstream-key: $PROVIDER_KEY"
```

## FAQ

### How do I call the Peach Payments Reconciliation API?
Create a free Apizie key, then send POST https://apizie.tech/v1/payments:peach-payments/checkout-generation-initiate-redirect-checkout with the header x-api-key. Every endpoint returns { project, data, timestamp }.

### Is the Peach Payments Reconciliation API free on Apizie?
Yes. The Free plan includes 1,000 requests a month at 100 requests a minute, no credit card. Peach Payments Reconciliation itself also needs your own key from reconciliation.peachpayments.com.

### Can AI agents use the Peach Payments Reconciliation API?
Yes. Add the Apizie MCP server (https://apizie.tech/mcp) to Claude, ChatGPT, Cursor or VS Code, then ask in plain language. The agent calls run_scraper with project key payments:peach-payments.

### What is the status of the Peach Payments Reconciliation API?
Needs your own provider key (bring your own key)
