Payouts

A payout is the transfer of funds from the merchant to the customer's credit card account that is not related to any prior transaction.

Unlike a refund or a cancellation, which both rely on an original transaction having taken place, a payout is a way of paying a customer without the customer making an original purchase.

Payouts may be needed when the merchant accepts transactions outside of the Hyp ecosystem. Examples include:

  1. The merchant uses a cash register that is not Hyp-enabled. They want to refund a customer to their credit card, but their cash register does not support refunds.

  2. The merchant wants to reimburse a customer for some inconvenience, regardless of any existing transactions.

Payouts should not be used as a standard means of operation. They should be reserved for rare cases where no other options are applicable. In normal circumstances, a refund or a cancellation of the original transaction should be preferred.

If necessary, you can cancel a payout with a normal CancelDeal transaction, or create an invoice for a payout in the same way you would for a debit transaction.

Prerequisites

Most credit card providers make payouts available by default, meaning that no special configuration is needed.

Performing a payout

There are two ways to perform a payout, depending on whether the customer's credit card has been used in your Hyp payment environment before.

Performing a payout with an unknown credit card

If the customer's credit card has not been used in the past, send a payment page request but set transactionType to Credit instead of Debit:

<ashrait>
      <request>
          <version>2000</version>
          <language>ENG</language>
          <command>doDeal</command>
          <doDeal>
              <terminalNumber>{terminalNumber}</terminalNumber>
              <cardNo>CGMPI</cardNo>
              <total>{payoutAmount}</total>
              <transactionType>Credit</transactionType>
              <creditType>RegularCredit</creditType>
              <currency>ILS</currency>
              <transactionCode>Internet</transactionCode>
              <validation>TxnSetup</validation>
              <mid>{mpi_mid}</mid>
              <uniqueid>{uniqueId}</uniqueid>
              <mpiValidation>AutoComm</mpiValidation>
              <successUrl>{successUrl}</successUrl>
              <errorUrl>{errorUrl}</errorUrl>
          </doDeal>
      </request>
  </ashrait>

The customer then needs to enter their credit card details on the payment page as they would for a debit transaction, but upon clicking Pay, they will receive a payout instead.

Performing a payout with a known credit card

If you, as a merchant, have performed transactions with the payout recipient's credit card before, and you have saved the cardToken and cardExp values from the payment completion redirect, then you can perform a payout without requesting a payment page. Instead, send a doDeal command where:

  • transactionType is set to Credit.

  • cardId is set to the cardToken value saved from the payment completion redirect.

  • cardExpiration is set to the cardExp value saved from the payment completion redirect.

Here's an example of a ₪400 payout request to a known credit card:

If the result element in the response is 000, the payout was successful.

Last updated

Was this helpful?