Skip to content

Payments

The Payments API gives you programmatic access to the payment records in your SMBcrm account: orders, transactions, subscriptions, products & prices, coupons, and invoices & estimates. Use it to read order and payment history, manage your catalog, and create and send invoices and estimates.

  • Orders & Transactions: list the orders placed in your account, fulfill them, record manual payments, and look up the transactions behind them.
  • Subscriptions: read the recurring billing set up for your contacts.
  • Products & Prices: manage your product catalog, your product collections, and the one-time or recurring prices attached to each product.
  • Coupons: create, update, delete, and look up discount codes.
  • Invoices & Estimates: create, send, and track invoices and estimates, and set up templates and recurring invoice schedules.

Each resource has its own reference page with the exact request and response shapes. See In this section below.

Every payments endpoint uses the same request shape as the rest of the API: a Location token or PIT in the Authorization header, plus the Version header. See Base URL & Headers if you haven’t made a request yet.

Request only the scopes your integration needs:

Scope Grants
payments/orders.readonly Read orders and their fulfillments
payments/orders.write Fulfill orders: add tracking details and notify the customer
payments/orders.collectPayment Record a manual payment against an order
payments/transactions.readonly Read transactions
payments/subscriptions.readonly Read subscriptions
payments/coupons.readonly Read coupons
payments/coupons.write Create, update, and delete coupons
products.readonly Read products
products.write Create, update, and delete products
products/prices.readonly Read prices and inventory
products/prices.write Create, update, and delete prices, and update inventory
products/collection.readonly Read product collections
products/collection.write Create, update, and delete product collections
invoices.readonly Read invoices
invoices.write Create, send, update, void, and delete invoices, and record payments against them
invoices/estimate.readonly Read estimates and estimate templates
invoices/estimate.write Create, update, send, and delete estimates and estimate templates, and convert estimates to invoices
invoices/template.readonly Read invoice templates
invoices/template.write Create, update, and delete invoice templates
invoices/schedule.readonly Read recurring invoice schedules
invoices/schedule.write Create, update, schedule, cancel, and delete recurring invoice schedules

See Scopes for how scopes are requested and enforced.

Invoices and some other payments endpoints identify your account with a pair of query parameters instead of, or in addition to, locationId:

  • altId: your <location_id>
  • altType: always location
Terminal window
curl "https://services.smbcrm.com/invoices/?altId=<location_id>&altType=location&limit=20&offset=0" \
-H "Authorization: Bearer <token>" \
-H "Version: v3"
  • Scopes: request the narrowest set of payments scopes your integration needs.
  • Contacts: orders, subscriptions, and invoices are all tied to a contact.
  • Webhooks: subscribe to payment events instead of polling for changes.