perform method enables you to issue one or more refunds for Transactions that were processed through Subscribe. Not all Subscribe Transactions are refundable. If Subscribe cannot process some of the refunds in your input, you are informed through the return code in this call’s Return object.
Subscribe can refund a transaction only if it meets all of the following criteria:
- The transaction status is one of the following:
Captured.Refunded(if a partial refund has occurred).Authorized. The Transaction is scheduled for capture but is not yet captured with your payment processor. Refunding such a Transaction essentially cancels it.AuthorizedPendingorDepositRetryPendingfor ECP or Direct Debit-based transactions. Refunding such a Transaction essentially cancels it.
- The Transaction has an associated authorization response code.
- The Transaction was not paid through the Boleto Bancário payment method.
- The Transaction is not an outbound Transaction, conducted to pay a customer through the ECP-based payment method.
- The sum of all the Transaction’s past refunds is less than the original Transaction amount.
- The Transaction used a
Tokenpayment method that resulted in the granting of tokens to a customer’s Account. - Your payment processor is GlobalCollect and the authorization code is
800, which means that the Transaction has been captured but not yet settled.
perform(), payment processors rarely reject refunds accepted by Subscribe. To monitor refund status, log into the Subscribe Portal and use the Transaction Details page, which displays the most up-to-date status of your refund-.
Input
srd: sparse response description, a SOAP string (which must be a JSON object), in which you specify the elements you want returned.This parameter enables the calling system to constrain amethod call to return only components you specify. This gives you greater control over returned content, and improves response time within the Vindicia platform by reducing the processing needed for the call.
Some fields are required, either practically or in the WSDL, and will be returned regardless of the srd. A null srd returns the complete response.
refunds: an array of one or more Refund objects, each corresponding to a refund that you would like to process through Subscribe. Because this call creates a Refund object in Subscribe, leave the VID field blank. If Subscribe accepts the refund for processing, it populates the VID field in the corresponding Refund object in the array of returned refunds.
Output
return: an object of typeReturn that indicates the success or failure of the call.
If the return code is 200, all the Refund objects in this array have Vindicia-assigned VIDs, indicating that Subscribe has accepted these objects for processing. A return code of 206 indicates that only some of the Refund objects have been accepted by Subscribe and have VIDs. The Refund objects without VIDs have been rejected by Subscribe because they do not meet the criteria described above. Reasons for rejection are included in the note attribute of the Refund objects.
refunds: an array of one or more Refund objects, which corresponds to your input array.

