Skip to content

Bulk collect payment orders

API v2 is in public beta: endpoints and fields can change before general availability. See the changelog

POST/preorders/orders/bulk_collect_payment

Costs 2 rate-limit points · Rate limits

Collect the outstanding balance of many preorder orders now (up to 1000 order_ids, or apply_to_all with the order list filters), charging each customer's saved payment method.

Matches the dashboard bulk action Collect payment. Each order is charged its full outstanding balance; paid and cancelled orders are skipped and reported failed. Shopify settles charges asynchronously, so a succeeded order means the charge was created; its payments.last_payment_attempt shows the final state. send_notifications false suppresses the customer email sent when a charge fails. Poll status_url for per-order results.

Also searched asbulk collect paymentcollect payment for many orderscharge balances in bulkcapture payments in bulkcollect all outstanding balances

Headers

  • Idempotency-Keystring

    A fresh unique key for every write (a new UUID, say); reuse it only to retry that write. Keys are remembered for 1 hour: the same key and the same request within that hour returns the first result, with Idempotent-Replayed: true, without running again; the same key with a different method, path or body is refused (422 idempotency_key_reused); a retry while the first is still running gets 409 idempotency_key_in_progress. Keys are per store. Server errors and rate limits are not kept, so their retry runs.

Request body

  • searchstring
    Example: string
  • financial_statusstring
    Example: string
  • fulfillment_statusstring
    Example: string
  • preorder_fulfillment_statusstring
    Example: string
  • cancelled_statusstring
    Example: string
  • payment_collection_statusstring
    Example: string
  • offer_idstring
    Example: string
  • shopify_variant_idstring
    Example: 45000000001
  • shopify_product_idstring
    Example: 78000000001
  • vendorsstring
    Example: string
  • customer_idstring
    Example: string
  • fromstring
    Example: string
  • tostring
    Example: string
  • order_idsarray of strings
  • apply_to_allstring
    Example: string
  • send_notificationsstring
    Example: string

Errors

401

Missing or invalid X-Auth-Token.

409

An earlier request with the same Idempotency-Key is still running. Wait, then resend the same request with the same key.

422

The request failed validation.

429

Rate limited: cost-weighted per token (read 1, write 2; 360 points / 60s). Check Retry-After.

Every error has the same shape: see Errors.

POST/preorders/orders/bulk_collect_payment
curl -X POST "https://app.stoqapp.com/api/v2/external/preorders/orders/bulk_collect_payment" \
  -H "X-Auth-Token: $STOQ_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "search": "string",
    "financial_status": "string",
    "fulfillment_status": "string",
    "preorder_fulfillment_status": "string",
    "cancelled_status": "string",
    "payment_collection_status": "string",
    "offer_id": "string",
    "shopify_variant_id": "45000000001",
    "shopify_product_id": "78000000001",
    "vendors": "string",
    "customer_id": "string",
    "from": "string",
    "to": "string",
    "order_ids": [
      "string"
    ],
    "apply_to_all": "string",
    "send_notifications": "string"
  }'
Response
No body