TallyIntegrationsShopify

Tally for Shopify

Shopify orders, payouts, and inventory — synced to your books.

Tally reads orders, transactions, refunds, payouts, inventory, and products from Shopify. No writes — every fulfillment, cancel, refund, or inventory-adjustment endpoint is blocked.

Strictly read-onlyBuyer addresses strippedShopify Payments aware

What Tally does with Shopify

Tally connects to Shopify to automate the data flow into your accounting stack — with explicit safety rules at every step.

Order revenue & sales tax

Reads orders with revenue, tax, shipping, and discounts for accurate revenue recognition and sales-tax reporting per jurisdiction.

Payout reconciliation (Shopify Payments)

For stores using Shopify Payments, Tally reads payouts and balance — tying each Shopify deposit back to its line of orders, fees, and refunds in QuickBooks.

External payment provider support

Stores using PayPal, Stripe, Authorize.net, etc. don't have payouts in Shopify — Tally handles this gracefully and pulls payment data from each provider separately.

Refund & dispute tracking

Reads refunds (sub-resource of orders) and disputes / chargebacks (Shopify Payments only) for accurate contra-revenue posting.

Inventory & COGS

Reads inventory levels by location and inventory items (cost data) for COGS posting and balance-sheet inventory reporting.

Customer & product mapping

Reads customer and product data so AR records match QuickBooks customers and product line items map to the correct items.

How it works

Setup is straightforward and auditable. No copy-pasted CSVs, no shared logins.

1

Authorize Tally in Shopify

A Ballast accountant initiates the connection. Authorization happens through Shopify's standard OAuth or API-key flow with the minimum required scopes.

2

Credentials encrypted at rest

Tokens are immediately encrypted with AES-256-GCM and stored in Tally's PostgreSQL database. Plaintext credentials never touch logs or error reports.

3

Tally pulls and normalizes data

Tally fetches data from Shopify on a schedule, normalizes it, and ties it back to the corresponding records in QuickBooks Online.

4

Your accountant takes it from there

A Ballast accountant reviews exceptions, posts entries, and closes the books. You get monthly financials without lifting a finger.

Availability

This integration is provided to Ballast Consulting Group's accounting clients at no additional charge as part of their engagement. There is no per-seat fee, per-API-call fee, or per-integration fee billed to the client. The cost is included in your accounting fee.

Tally isn't sold separately. Access requires an active engagement with Ballast Consulting Group as your finance and accounting department. If you're interested in becoming a Ballast client, please reach out.

Security & compliance

Every Tally integration follows the same safety pattern. Here is how the Shopify integration specifically is locked down.

Strictly read-only

assertAllowedMethod() in the Shopify fetcher rejects all non-GET requests. Tally cannot create, fulfill, cancel, refund, or adjust anything in Shopify.

Endpoint allowlist

Only 8 endpoint prefixes are reachable: orders, products, customers, shop, inventory_levels, inventory_items, locations, shopify_payments. Everything else is rejected.

Action endpoints blocked

/fulfill, /cancel, /close, /open, /refund, /capture, /void, /activate, /set, /adjust, /connect are blocked even within allowed prefixes.

PII sanitization

Buyer addresses (address1, address2), phone numbers, browser IPs, geolocation, user agents, and all credit-card details are stripped at the integration layer. Email, name, city, province, country, and zip are preserved for tax-jurisdiction matching.

Custom-app token validation

Tally validates token prefixes — only shpat_* (Custom App) tokens are accepted. shpss_* (Storefront), shpca_* (Carrier), and shppa_* (Partner) tokens are rejected with a clear error.

Leaky-bucket rate limiting

Synced with Shopify's X-Shopify-Shop-Api-Call-Limit header (40 burst, 2/s refill). Per shop domain — different clients don't share a budget.

For a full description of how Tally collects, stores, and protects data, see our Privacy Policy and End User License Agreement.

Frequently asked questions

Does Tally work with non-Shopify-Payments stores?

Yes — but the payouts, balance, and disputes endpoints only return data for stores using Shopify Payments. If you use PayPal, Stripe, Authorize.net, etc., those endpoints return 404s (handled gracefully) and Tally pulls payment data directly from your Stripe / PayPal / etc. integration instead.

What kind of token does Tally use?

A Custom App access token (shpat_*) generated from your Shopify Admin. Tally also supports the public-app OAuth flow if you prefer. Tokens never expire (custom apps) or rotate every 1 hour with refresh-token rotation (public app).

Are amounts in dollars or cents?

Dollars. Unlike Stripe / Ramp, Shopify's API returns money values as dollar strings (e.g. '29.99'). No conversion needed.

Can Tally adjust inventory levels?

No. /set and /adjust endpoints are blocked. Inventory-level reads (quantities by SKU and location) are supported, but Tally cannot modify inventory.

How do I find inventory data for a product?

Look up the product, find the variant's inventory_item_id, then call list_inventory_levels with that ID and a location ID to get quantity-on-hand. Or call get_inventory_item to get cost-of-goods data for the variant.

Talk to Ballast about your books

Tally's Shopify integration comes at no additional charge when Ballast runs finance and accounting for you. If you need a team that actually understands the systems your business runs on, get in touch.

Ballast Consulting Group, LLC
Your finance and accounting department for small businesses. U.S.-based.
© 2026 Ballast Consulting Group, LLC. All rights reserved. Tally is the internal accounting platform Ballast uses to service its accounting clients. All third-party trademarks referenced (QuickBooks, Amazon, Shopify, Stripe, HubSpot, Ramp, Bill.com, Gusto, Microsoft, Google) are the property of their respective owners. Tally is not affiliated with or endorsed by any of these companies.