> ## Documentation Index
> Fetch the complete documentation index at: https://docs.slm.m1amdocs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Account.fetchAllCreditHistory

The `fetchAllCreditHistory` method returns all Credit events that match the input *timestamp* parameters, for all Accounts.

Subscribe maintains a log of credit-related events for each account. This log keeps track of events such as credit granted, revoked, consumed, or earned from a gift card redemption. Retrieve the audit log by calling the `fetchAllCreditHistory` or `fetchCreditHistory` methods for the `Account` or `AutoBill` objects.

The following table describes data members of the `CreditEventLog` object.

| Data Members | Data Type | Description |
| - | - | - |
| `credit` | `Credit` | The `Credit` object used during a credit-related action or event. See the [Credit Subobject](Credit_Subobject). |
| `note` | `string` | A memo regarding the Credit event. |
| `timeStamp` | `dateTime` | Time when this credit related action or event took place. |
| `type` | `CreditEventType` | Type of this credit related action or event. Use this to decide whether this action or event incremented or decremented credit. See [CreditEventLog Object Data Members](#table_r45_l1h_plb). |
| Value | Description | |
| ----- | ----------- | |
| `Consumption` | Credit decremented due to use in a recurring or one time transaction. | |
| `GiftCardRedemption` | Credit added due to a redemption of a gift card. | |
| `GiftCardReversal` | Credit decremented due to a reversal of a gift card that was previously redeemed. | |
| `GiftCardStatusInquiry` | No change in credit. | |
| `Grant` | Credit added due to a credit grant you made. | |
| `Refund` | Credit added due to refund of a credit based transaction. | |
| `Revocation` | Credit decremented due to a credit revocation you made. | |

(For more information, see the [Account.fetchCreditHistory](Account_fetchCreditHisto) method below.)

## 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 a `method` 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.

*timestamp*: the starting time stamp (lower limit) for the range of credit event logs you wish to retrieve.

*endTimestamp*: the ending time stamp (upper limit) for the range of credit event logs you wish to retrieve.

*page*: the page number, starting at 0, for which to return the results. For example, if the total number of results is 85 and *pageSize* is 10:

* Specifying 0 for *page* gets the results from 1 through 10.
* Specifying 2 for *page* gets the results from 21 through 30.

*pageSize*: the number of records to display per page per call. This value must be greater than 0.

## Output

*return*: an object of type `Return` that indicates the success or failure of the call.

*creditEventLogs*: the array of Credit events (grants and deductions) with a time stamp and event type.

## Returns

In addition to those listed in [The Return Object](The_Return_Object), this call returns:

| Return Code | Return String |
| - | - |
| `400` | One of the following: - `Unable to load account.` - `No matching credit events found.` - `Invalid value or values of time stamp, and/or page, and/or page size.` |

## Example

```

// to fetch all credit history for an account

$acct = new Account();

// account id for an existing customer whose
// credit history you want to retrieve

$acct->setMerchantAccountId('jdoe101');

$page = 0; // paging begins at 0
$pageSize = 5; // five records

do {
   $ret =
      $acct->fetchAllCreditHistory($page, $pageSize);
   $count = 0;
   if ($ret['returnCode'] == 200) {
      $fetchedLogs = $ret['creditEventLogs'];
      $count = sizeof($fetchedLogs);
      foreach ($fetchedLogs as $log) {
         $credit = $log->getCredit();   
         $ts = $log->getTimeStamp();
         $eventType = $log->getType();
         // process retrieved credit event log
         // details here.   
      }
      $page++;
   }
} while ($count > 0);
```

**Parent topic:**[Account Methods](../topics/Account_Methods)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.