Skip to main content
The wallet is Zinc’s default way to pay. You pre-fund a balance, and each order draws its cost plus a flat $1 API fee from that balance. Fund once, then place orders without attaching any payment details per request.

Funding Your Wallet

Add funds from the Wallet button in the top navigation. Enter the amount you want to add; that full amount is credited to your wallet, and the processing fee for your chosen method is added on top of what you’re charged. Self-serve top-ups run from $15.00 up to $100,000.00; for larger amounts, contact us to arrange a wire. Test and production wallets are kept separate.

Placing Orders

Place orders as normal, with no payment object. Each order draws order_cost + $1 from your balance, and the balance has to cover max_price + $1 at order time — otherwise the order is rejected with insufficient_funds (HTTP 402), so keep a buffer.
That’s the cost of Zinc buying the item for you. An order placed on your own retailer account is paid for by the payment method saved on that account, so it draws the $1 API fee only — and only needs the fee on hand to be accepted. You get that by passing the account’s short_id as retailer_credentials_id; saving an account doesn’t do it on its own.

Data calls

Orders are not the only thing the wallet pays for. The product data endpoints are metered at $0.01 per successful call, drawn from the same balance: This is the same data-call fee the MPP /agent/* endpoints charge per request — the only difference is where the money comes from. Everything else is free: GET /retailers, GET /wallet/me, and reading your own orders, returns, and tracking. A data call against a wallet that can’t cover the fee returns HTTP 402 with {"detail": "Insufficient wallet balance for data API call"}. Sandbox calls (a zn_test_ key, or X-Test-Mode: true) are never metered and never touch the live wallet.
A retry loop on a metered endpoint bills every attempt. Check GET /wallet/me rather than retrying into a 402.

Refunds

Zinc credits your wallet automatically when an order doesn’t go through:
  • Cancelled by the retailer: the full charge is refunded to your wallet.
  • Return credited: when a return is resolved by crediting rather than a merchant RMA, the credit lands in your wallet.

Other Ways to Pay

If you’d rather not carry a balance:
  • Your end-customer’s card — charge them directly and keep a margin with Stripe Connect.
  • No Zinc account at all — pay per request using MPP.