> For the complete documentation index, see [llms.txt](https://docs.coupler.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.coupler.io/sources/category/finance-and-accounting/braintree/common-issues.md).

# Common Issues

## Connection issues

<details>

<summary>Invalid credentials error when connecting</summary>

Double-check that you're using the correct **Merchant ID**, **Public Key**, and **Private Key** from the Braintree Control Panel under **Settings > API**. These are environment-specific — Sandbox credentials won't work against Production and vice versa. Make sure the environment you selected in Coupler.io matches the credentials you've entered.

</details>

<details>

<summary>Connection succeeds but no data loads</summary>

This usually means the start date is set too far in the future, or you've selected an entity (like Plans or Discounts) that has no records yet in your account. Try setting an earlier start date or switching to the Transactions entity to confirm the connection is working.

</details>

## Missing data

<details>

<summary>Transactions from a certain period are missing</summary>

Braintree applies the start date filter to transaction created dates. If you moved the start date forward, earlier transactions are excluded. Reset the start date using the date picker to cover the period you need, then re-run the data flow.

</details>

<details>

<summary>Refunds aren't showing up</summary>

Refunds in Braintree are recorded as separate transaction records, not modifications to the original. Make sure your Transactions export covers the date range when the refund was processed — it will have its own `created_at` timestamp and a `type` of `credit`.

</details>

<details>

<summary>Plans, Discounts, or Merchant Accounts return no data</summary>

These entities are static and don't filter by date. If they're returning empty, it likely means none have been created in your Braintree account yet. Verify in the Braintree Control Panel that the relevant records exist.

</details>

## Permission errors

<details>

<summary>API key doesn't have permission to access disputes or subscriptions</summary>

Braintree API keys inherit the permissions of the user or role they belong to. If you're seeing access errors for specific entities, check in the Braintree Control Panel that the API user has the necessary role permissions — for example, dispute access may require an elevated role.

</details>

## Data discrepancies

<details>

<summary>Transaction amounts don't match my Braintree dashboard totals</summary>

The Braintree dashboard typically shows **settled** amounts only. Your Coupler.io export includes all transaction statuses (authorized, submitted for settlement, failed, voided, etc.). Filter by `status = settled` in your destination to match dashboard figures.

</details>

<details>

<summary>Subscription counts differ between Coupler.io and Braintree</summary>

Expired or canceled subscriptions are included in Coupler.io exports. If the Braintree dashboard shows only active subscriptions, apply a `status = Active` filter in your destination sheet or BI tool.

</details>

## Rate limits

<details>

<summary>Data flow times out or fails on large transaction exports</summary>

Braintree's API can be slow when paginating through large transaction histories. If you hit timeouts, try narrowing the start date to reduce the volume of records per run. Once your historical data is loaded, future incremental runs will be much faster.

</details>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.coupler.io/sources/category/finance-and-accounting/braintree/common-issues.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
