Monzo Receipt API Issues


Greetings fellow developers! :wave:

Myself and a number of other developers from unofficialmonzo slack and Github have identified some issues with the create receipt and delete receipt API endpoints.

Create Receipt

The current issue with this endpoint is that as per the documentation it says that:

If you’re successful, you’ll get back a 200 OK HTTP response, along with the receipt_id and the rest of the information you provided, repeated back to you. After that, the receipt will show up in your Monzo app!

The response is fine; 200 response is returned. However, the issue is that the "receipt_id and the rest of the information you provided" is not returned :frowning_face:.

This could be a documentation issue (ie: it is intended for this data to not be returned?) or it is possibly an issue with the endpoint?

NOTE: The receipt is still presented in the Monzo app as intended. :+1:

Delete Receipt

The current issue with this endpoint is that when querying the API with a valid external_id of a receipt, the API returns a 403 permissions error. This is confusing as it was a receipt which I generated myself, why do I not have permissions to delete it :sweat_smile: :grin:?

Example code in Python where the insufficient permissions error is raised by the API:

# Python 3.7
import requests
endpoint = ""
access_token = "Access Token Here."
headers = {"Authorization": f"Bearer {access_token}"}
params = {"external_id": "test-receipt-1"}
resp = requests.delete(endpoint, headers=headers, params=params)
# This code returns insufficient permissions error.

Hope these issues get resolved soon as the receipt functionality is pretty awesome! :smile: :+1:

(Marcel Ruhf) #2

@kieranmch was involved in the development of the receipts API - he’s probably best placed to comment on this.

(Kieran McHugh) #3

The first is a documentation issue, the second is probably a bug. We will get this sorted out when we get a chance!


Great! :+1:t2:


I’ve also just stumbled across the delete receipt bug