### Would you like to contact support?

No momento, esta página não está disponível em inglês

# Partially refund a balance

## POS Object

Name Description
POS POS object representing the cash register application.

You can partially refund a tender where the PSP reference has been generated, and where it is unknown. You will need to implement both types of partial refund.

## Where the PSP reference is known:

### Method

Name

Description

RefundPspReference

Call used to initiate a partial refund where the PSP reference is known.

### Request

Name

Description

RefundTransactionRequest

Sent with the partial refund call where the PSP reference is known.

### RefundPspReference Parameters

Name

Type

Required

Description

merchantAccount

String

The merchant account that is cancelling the transaction and refunding the money (if applicable).

PSPReferenceString

PSP reference of the current transaction.

originalPspReferenceStringPSP reference of the original transaction.
modificationAmountValueAmountA container for the amount that needs to be refunded.
modificationAmountCurrencyLong

The three-character ISO currency code. The currency must match the currency used in the original payment request.

valueString

The value must be less than or equal to the authorised amount.

## Where the PSP reference is not known:

### Method

Name

Description

RefundTenderReference

Call used to initiate a partial refund where the PSP reference is unknown.

This can happen when the original Sale transaction was performed offline, in which case there will be no PSPReference, since this is generated only in an online situation.

### Request

Name

Description

RefundTransactionRequest

Sent with the partial refund call where the PSP reference is unknown. Use the tender reference instead of the PSP reference.

### RefundTenderReference Parameters

Name

Type

Required

Description

merchantAccount

String

The merchant account that is cancelling the transaction and refunding the money (if applicable).

uniqueTerminalIdLong

Unique terminal ID to reference the PED that is processing the request.

tenderReferenceStringReference for the transaction, used as the PSP reference is not available.
referenceStringReference for the merchant, used in reporting.
modificationAmountValueAmountA container for the amount that needs to be refunded.
modificationAmountCurrencyLong

The three-character ISO currency code. The currency must match the currency used in the original payment request.

### Callback

NameDescription

RefundCB

Refund Callback returns the result of a partial refund, as well as any errors.

The response contains a pspResultObj. This object contains a getResponse method which should return a result of "refund-received". The response also includes the following parameters:

Name

Type

Description

pedResult

int

Result denoting whether an error occurred on the PED. A value of 0 means no error occurred.

pspResult

int

Result denoting whether an error occurred on the PSP. A value of 0 means no error occurred.
libResultintResult denoting whether an error occurred in the Library. A value of 0 means no error occurred.
errorMessageStringReference for the transaction, used as the PSP reference is not available.