---
title: "Payment Transaction"
method: POST
path: "/public/paymentTransaction"
tags: ["Merchant Portal services API"]
---

# Payment Transaction

`POST /public/paymentTransaction`

Searches for a transaction by given parameters: <b>TransactionId + terminalId + sourceId</b><br> 
and sends a PaymentTransaction via TecsXml Interface.<br>
Send XML MessageType: 0001 and when TransactionType == 'AUTHORIZATION', then TransactionOriginId: 2, else if TransactionType == 'PRE-AUTH' then TransactionOriginId: 5<br>
Required role for operation: BO_TRANSACTIONMANAGEMENT_PAYMENT.<br>
Create MPauditlog table record with event type : PaymentTransaction.<br>
Supports authentication with the following types of tokens:<br>
* <b>Bearer</b> &lt;token&gt;, which is a Bearer token authentication. The bearer token is a cryptic string, usually generated by the server in response to a login request.

## Request body

- PaymentTransactionRequest
  - `cardNumberReference` string, required
  - `transactionType` string, required
  - `transactionId` string
  - `transactionDate` string, required
  - `terminalId` integer, required
  - `clientId` integer, required
  - `cvc` string
  - `amount` integer, required
  - `currency` string, required
  - `receiptNumber` string, required
  - `paymentReason` string
  - `terminalLocation` string
  - `password` string
  - `ecData` string
  - `ecrData` string
  - `emvData` string
  - `languageCode` string
  - `receiptLayout` integer

## Response `200`

Successful operation

- PreAuthTransactionCompletionResponse
  - `responseCode` integer
  - `responseMessage` string
  - `transactionId` string
  - `messageType` string
  - `cardNumber` string
  - `originalTransactionId` string
  - `amount` integer
  - `ecrData` string
  - `emvData` string
  - `userData` string
  - `transactionDate` string, date-time
  - `authorizationCode` string
  - `txType` string
  - `acquirerName` string
  - `acquirerId` string
  - `cardBrand` string
  - `merchantNumber` string
  - `serialNumber` string
  - `traceNumber` integer
  - `originalTraceNumber` integer
  - `svc` string
  - `balanceAmount` string
  - `exchangeRate` string
  - `merchantName` string
  - `merchantAddress` string
  - `receiptHeader` string
  - `receiptFooter` string
  - `actualBonusPoints` string
  - `exchangeFee` integer

## Other responses

- `400` — * Transaction not found * Mandator not found
- `401` — Unauthorized - Authentication failed, e.g. MandatorId does not march
- `403` — Forbidden - Missing role: BO_TRANSACTIONMANAGEMENT_PAYMENT
- `500` — Internal server error

---

[API](https://skmtc.dev/bluefin-com/apis/merchant-services.md) · [All operations](https://skmtc.dev/bluefin-com/apis/merchant-services/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/bluefin-com/merchant-services/revisions/84e973bef72c/schema)
