Fiat Deposit endpoint is not honoring 'beginTime' parameter and response always limited to last 90 days

Hi,

I have tried retrieving portions of fiat deposit history via /sapi/v1/fiat/orders endpoint and can’t get any data past last 90 days.

Example request from official Postman: {{url}}/sapi/v1/fiat/orders?transactionType=0&beginTime=1630454400000&endTime=1632960000000&timestamp={{timestamp}}&signature={{signature}}

Params generated via:

    let beginTime = new Date('2021-09-01').getTime();
    let endTime = new Date('2021-09-30').getTime();

Irrespective of supplied beginTime and endTime, returned data always stays within last 90 days - i.e. as of writing on 19.12.2021 no data before 20.09.2021 ever gets surfaced while there are at least 4 more deposits available under UI for 09.2021 (https://www.binance.com/en-AU/my/wallet/history/deposit-fiat)

At the same time, the /sapi/v1/fiat/orders output is still limited by both parameters and stays within beginTime & endTime that fall within 90 days limit.

Looking to understand if there is a bug in API or I am missing something as there is no such limit mentioned in the docs (Binance API Documentation), related topics (one, two).

Have also noticed that e.g. Koinly is able to get all deposits using same API key and also /bapi / internal API on the above UI page (https://www.binance.com/bapi/fiat/v1/private/fiatpayment/transactions/get-order-history) is able to surface this information correctly.

Would appreciate help understanding how to reliably retrieve full deposit history via API.

Cheers,
Vladimir

Following up on the same issue. Gettin the full FIAT deposit history is crucial for tax reporting. Is there any chance that the 90 days limitation will be dropped anytime soon?

2 Likes

@aisling thank you for the update. May I be so bold as to state that the existing API’s are a complete mess for tax reporting, from paging errors, hidden limits on fetching data, to deprecated endpoints and data not available to fetch via the API’s in the first place (staking)? Is there a plan to address all of these issues as a broader piece of work? It’s becoming an impossible task for customers around the world to accurately file their taxes.

2 Likes

Missing staking API has been already reported. You can see the thread here: EARN (Locked Staking).

Hello there, I’ve requested internally to add additional information about the max time interval for the 2 Fiat endpoints. Based on your testing, it seems to be 90 days.

( bapi is not a published API and therefore not suggested to be used as its structure might have changes without prior notice.)

+1 on @wmajewski’s suggestion.
Currently the endpoint seems to return only the last 90 days of data, not just a maximum interval of 90 days (example: you won’t get any data with a beginTime in January 2020 and an endTime in February 2020).

Without this endpoint, we can’t create our own tools for tax reporting, which is essential.

Edit: I’m not 100% sure, but I think back a few days ago I was actually getting data older than 90 days ago through the API.

3 Likes

Confirming that not that long time ago I also got correct data older than 90 days. Apparently something got broken recently.

2 Likes

Same problem here. Any updates ?

2 Likes

Same issue here. I tried setting the correct interval (less than 90days) during which I did my deposits and all I get is an empty response

2 Likes

What are the timestamps?

@aisling Here’s the request:

https://api3.binance.com/sapi/v1/fiat/orders?transactionType=0&beginTime=1612134000000&endTime=1617141600000

The result:

{"code":"000000","message":"success","data":[],"total":0,"success":true}%

The timestamps correspond to 01/02/2021 to 31/03/2021, during which I have 6 fiat deposits according to my exported deposit history from Binance.

There’s also the fact that this is the only request that has ‘beginTime’ rather than ‘startTime’ which is frankly very confusing at times.

The 90 days mentioned in this post is regards to not able to obtain data past last 90 days, therefore the begin time being 31 January 2021 23:00:00 follows this scenario.

Regards beginTime instead of startTime is understandable your feedback on this, however can’t be modified now as it’s already published and many users have it implemented in local code now.

@aisling I don’t have any deposits in the last 90 days, so this could be why I get an empty response. 01/02/2021 and 31/03/2021 are not in the last 90 days.

Am I using the API incorrectly or is this request supposed to give me the deposit history?

Thank you

The endpoint is intended to provide the deposit history, however it currently has a limitation to only return data up to the past 90 days.

For data further than the 90 days, you will need to use the UI.

I have also this problem, but I have a few transactions during 2021 and I see transaction from 14.05.2021 so it’s more than 90 days ago and more than 180 days ago. I also see transaction from 17.10.2021 but it is in 90 days range ago. I have transaction at 24.04.2021 and in api a don’t see it.

What’s more, I tested this api maybe one week ago, and I received all of my transaction from this year.
So how this api works? In documention, I don’t see anything about it

2 Likes

Hi @lukasz ,

I’m curious how did you manage to obtain these older transactions? What did you use as ‘beginTime’ and ‘endTime’?

Thanks

@ChrisB
I used this without endTime
/sapi/v1/fiat/orders?transactionType=0&beginTime=1609459200000

So beginTime is 01.01.2021

Hi @tantialex,

I find that hard to believe since many people report that it has worked in the past. I tried it a couple of weeks ago and I was able to see some of my old deposits but not all, and now it’s not working at all.
Please check out the previous replies from @TraderVK and @wmajewski (Fiat Deposit endpoint is not honoring 'beginTime' parameter and response always limited to last 90 days - #4 by TraderVK)

The only sentence provided in the official API documentation is this:

  • If beginTime and endTime are not sent, the recent 30-day data will be returned.

This gives one of two possibilities:

  • The API is supposed to work for date intervals older than 90 days but now it’s not working. In this case consider this topic as an official bug report.
  • The API is not intended to fetch data older than 90 days (which it was doing according to tests done by myself and others in this thread). In this case, this feature doesn’t correspond to what has been requested in older threads, and we’re officially asking for this API to support older dates. Consider a feature request.

In the meantime, since the documentation seems to be incomplete, can you please provide a full description of how this API function works, and what its limits are?

Thank you,
Chris

1 Like

I too have had records > 90 days returned in the past.

@aisling please could you feedback to the team that there has been a breaking change here. I represent thousands of Binance users who are trying to get their taxes in order - most are extremely frustrated that the API can’t return all of their transaction information. Secondly, telling people to get data out of the UI if transactions > 90 days old is not a good user experience. There are probably about 8 places in the UI that show historic transactions, some still don’t have csv exports and the statement csv files are heavily limited by a quota of 3 reports per month. It is literally impossible for some of our customers to file their tax returns in a timely manner.

2 Likes