---
name: "Business::PayPal::API::RefundTransaction"
section: "3pm"
platform: "linux"
package: "libbusiness-paypal-api-perl"
version: "0.77-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Business::PayPal::API::RefundTransaction"
---

# Business::PayPal::API::RefundTransaction(3pm)

PayPal RefundTransaction API

## NAME

Business::PayPal::API::RefundTransaction - PayPal RefundTransaction API

## VERSION

version 0.77

## SYNOPSIS

```
    use Business::PayPal::API::RefundTransaction;
    ## see Business::PayPal::API documentation for parameters
    my $pp = Business::PayPal::API::RefundTransaction->new( ... );
    my %response = $pp->RefundTransaction(
        TransactionID => $transid,
        RefundType    => 'Full',
        Memo          => "Please come again!"
    );
```

## DESCRIPTION

**Business::PayPal::API::RefundTransaction** implements PayPal's **RefundTransaction** API using SOAP::Lite to make direct API calls to PayPal's SOAP API server. It also implements support for testing via PayPal's *sandbox*. Please see Business::PayPal::API for details on using the PayPal sandbox.

### RefundTransaction

Implements PayPal's **RefundTransaction** API call. Supported parameters include:

```
  TransactionID
  RefundType (defaults to 'Full' if not supplied)
  Amount
  Memo
  currencyID (defaults to 'USD' if not supplied)
```

as described in the PayPal "Web Services API Reference" document. The default **currencyID** setting is 'USD' if not otherwise specified. The default **RefundType** setting is 'Full' if not otherwise specified.

If **RefundType** is set to 'Full', **Amount** is ignored (even if set). If **RefundType** is set to 'Partial', **Amount** is required.

Returns a hash containing the results of the transaction. The **Ack** element is likely the only useful return value at the time of this revision (the Nov. 2005 errata to the Web Services API indicates that the documented fields 'TransactionID', 'GrossAmount', etc. are *not* returned with this API call).

Example:

```
  my %resp = $pp->RefundTransaction( TransactionID => $trans_id,
                                     RefundType    => 'Partial',
                                     Amount        => '15.00', );
  unless( $resp{Ack} !~ /Success/ ) {
      for my $error ( @{$response{Errors}} ) {
          warn "Error: " . $error->{LongMessage} . "\n";
      }
  }
```

### ERROR HANDLING

See the **ERROR HANDLING** section of **Business::PayPal::API** for information on handling errors.

### EXPORT

None by default.

## SEE ALSO

\<https://developer.paypal.com/en\_US/pdf/PP\_APIReference.pdf\>

## AUTHORS

- •

  Scott Wiersdorf \<scott@perlcode.org\>

- •

  Danny Hembree \<danny@dynamical.org\>

- •

  Bradley M. Kuhn \<bkuhn@ebb.org\>

## COPYRIGHT AND LICENSE

This software is copyright (c) 2006-2017 by Scott Wiersdorf, Danny Hembree, Bradley M. Kuhn.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
