SalesBricks Integration
Connect Paid to SalesBricks and every closed-won usage deal provisions automatically: the customer is created or updated, the order is activated with the deal’s subscription price, and the purchased credits are granted. Paid polls your SalesBricks account about once a minute, so there is nothing to trigger after a deal closes.
The integration is read-only on the SalesBricks side. Paid never changes anything in your SalesBricks account.
Prerequisites
You will need:
- A SalesBricks API key for your seller account.
- An admin user on Paid.
- A Paid product that models your usage deal, set up as described below.
How a deal maps into Paid
Paid reads exactly two numbers from each SalesBricks order. Everything else about the deal (setup fees, the usage meter, credit conversion rates) comes from your Paid product catalog, so deal authoring in SalesBricks stays simple:
- The usage line quantity becomes the number of credits granted.
- The subscription line net rate becomes the per-period platform price.
For an order to sync, it must satisfy this contract:
- The order carries a usage brick whose
codeequals theexternalIdof a product in Paid. - The usage line’s quantity is the credits amount for the deal. Leave the usage line price at zero.
- The subscription line carries the deal’s platform price as its net rate.
- The order currency has price points on the Paid product’s attributes.
Orders without a mapped usage brick are not usage deals. They are skipped and never provision, which keeps any legacy order book out of Paid by construction.
Set up the deal product in Paid
Create one product in Paid that models the whole deal:
- Set the product’s
externalIdto the SalesBricks usage brick’scode. - Add a credits attribute with a credit benefit that grants 1 credit per unit. The deal’s usage line quantity lands on this attribute, so the engine grants credits equal to the quantity.
- Add one recurring attribute for the platform subscription. The deal’s net rate replaces this attribute’s catalog price on each order.
- Add any setup fees as one-time attributes. These bill at their catalog price.
- Add the usage meter attribute with its event name and rate, so signals rate against the order.
- Make sure every attribute has a price point in the currency your deals close in.
Connect your SalesBricks account
Go to Settings → Integrations and find the SalesBricks card. Click Connect, paste your SalesBricks API key, and confirm.
Paid validates the key against SalesBricks and stores it securely. Syncing starts from the moment you connect: orders closed before connecting are not imported.
If the SalesBricks API key is rotated, polling stops and the card shows a reconnect warning. Reconnect with the new key to resume. The sync picks up where it left off.
Monitor the sync
Click Manage on the SalesBricks card to open the integration page. It shows the connection status and the sync log: every closed-won order the polling detected and what it did in Paid. Provisioned rows link to the created Paid order.
Sync now runs a poll immediately instead of waiting for the next cycle.
Inspect the field mapping
Select any sync log row to see the field-level mapping for that order: which SalesBricks fields the sync read (usage brick code, usage line quantity, subscription net rate, currency) and where each value lands in Paid (matched product, credit grant quantity, per-period platform price).
Rejected rows show the same view plus the reject reason, so you can see exactly which field caused the problem. Fix it in SalesBricks or in Paid, then click Retry on the row: the order is re-processed with fresh data, so the fix takes effect. New orders picked up by polling use the corrected setup automatically.
What’s not supported yet
- Renewals, upgrades, and recasts. Only
STANDARDorders sync. Other order types are rejected and visible in the sync log. - Custom and all-upfront billing schedules. Monthly, quarterly, semi-annual, and annual schedules are supported.
- Tiered and volume pricing on deal lines, ramped pricing, and usage pre-commitments.
- One-time lines authored in SalesBricks. Model one-time fees on the Paid product instead.
- Multiple usage bricks on one order.
- Backfill. Orders closed before connecting are not imported. Contact Paid support if you need historical orders imported.
Troubleshooting
An order was rejected with “no Paid product with externalId …”. The usage brick’s code in SalesBricks does not match any product externalId in Paid. Set the brick code, or fix the product’s externalId, then retry the row from the sync log.
An order was rejected with “no … price point”. The deal closed in a currency the Paid product has no price points for. Add price points in that currency to every attribute on the product, then retry.
An order I expected to sync never appears. The sync only processes orders that reach the closed stage after you connect. Check the order’s stage in SalesBricks.
The order total in Paid differs from the SalesBricks total. Amounts authored in Paid’s catalog (such as one-time setup fees) bill in addition to the deal-authored subscription price. The SalesBricks total only covers what was authored in SalesBricks.
The card shows “Sync is failing”. The stored API key most likely stopped working, for example after a rotation in SalesBricks. Reconnect with a current key.