Loyalty API

Read Call

CustomerDocuments3

Returns receipt and document submissions linked to the given customer.

Kind Read API call
Method GET or POST
URL https://app.bubblehouse.com/api/v2023061/<shop>/CustomerDocuments3
Authentication Customer TokenShop Token
You have a choice of making this call from your server using a shop token and specifying a customer ID, or making this call from a web browser/app using a customer token you have generated on the server.

Returns all receipt/document submissions whose Bubblehouse document record is linked to the resolved customer. The method does not match on receipt form email or AI-extracted receipt email.

Rows are returned newest first in one JSON response. There is no pagination, streaming, CSV, or JSONL output. The method is intended for normal account history sizes and returns an error instead of building an unusually large one-customer response.

By default, customer-token callers receive a customer-facing field set: bhid, public_id, status, upload_time, doc_time, number, url, individual_urls, amount, pts, pub_comment, rejection_reason, and items.

Shop tokens and customer-admin customer tokens may use fields and status. Plain customer tokens cannot use those inputs.

Input

  • customer CustomerIdentity1 required if using a shop token

    A customer to operate upon, when using a shop token.

    If you're using a customer token and decide to pass this field (which we do not recommend), it must match the customer from the token.

  • fields string optional

    Shop/customer-admin only. Which nested document fields to include in each row.

    Use the same nested JSON field names as ListDocuments3, such as bhid,status,customer(email),items.

    CSV-only flat field names such as doc_bhid and customer_email are not supported here.

  • status ReceiptStatus optional

    Shop/customer-admin only. Only return documents with the specified receipt status.

Output

  • documents array of object required

    The customer's receipt/document submissions.

    The exact fields in each document depend on the caller and optional fields input. Values use the same shapes as nested JSON rows from ListDocuments3.

API-wide Errors

Status Error Reason & Examples
400 missing_customer_identity

The customer identity ('customer' input parameter) has not been specified when using a shop token. You need to either specify a non-empty value for one of the customer identity fields, or use a customer token.

403 customer_identity_does_not_match_token

API call is using a customer token, but the customer identity in API params does not match the customer from the token.

404 no_customers_match_customer_identity

The customer identity ('customer' input parameter) does not match a known customer.

404 customer_identity_partially_mismatches_matched_customer

A customer has been matched by one of the fields of the customer identity ('customer' input parameter), but some non-empty fields do not match Bubblehouse data on that customer.

404 empty_customer_identity

All fields of the customer identity ('customer' input parameter) have been empty when using a shop token. You need to either specify a non-empty value for one of the customer identity fields, or use a customer token.

Global Errors

Status Error Reason & Examples
429 rate_limit_exceeded

Your usage is over the rate limit. Ensure that you're not making duplicate calls, and contact our team for a rate limit increase.

400 invalid_global_api_version

The global API version you are trying to use has never existed.

401 invalid_token

The provided authentication token is invalid or has expired.

400 obsolete_global_api_version

The global API version you are trying to use is no longer supported.

400 inaccessible_global_api_version

The global API version you are trying to use is not enabled on your account.

Previous
CustomerDetails1