Integrations & API
Integrations: overview
Which integrations exist, who may connect them, how keys are stored, what Disconnect does and which integrations are planned.
Here you connect BunStack to payment, shipping, the ERP and your own systems.
Where: Stack in the sidebar.
| Integration | Used for | Page |
|---|---|---|
| Kustom | The checkout: payment, capture, refunds | Kustom |
| Sendify | Live shipping rates, service points, booking, labels, tracking | Sendify |
| PostNord | Service points, booking and labels on your own PostNord contract | PostNord |
| ProSmart | Stock per SKU and orders to the ERP | ProSmart |
| Webhooks and API keys | Your own connections to your systems | Webhooks and API keys |
| Product feeds | Google Merchant Center and Meta Catalog | Product feeds |
Rules for every integration
| Rule | What applies |
|---|---|
| Owner | An integration belongs to the workspace. Every storefront in the workspace shares it. |
| Roles | Connecting, changing and disconnecting need admin or owner. Test connection, stock sync and order push need editor. |
| Keys | BunStack stores API keys, passwords and client secrets encrypted in a vault in Stockholm. The admin never shows them again. |
| Later changes | Leave the secret fields empty when you change other settings. The stored value stays. |
| Log | Activity log lists every change. |
Status
Stack shows BunStack in the middle and a branch for each kind of system: Payments, Shipping, Stock and ERP, Marketing and API and webhooks. Under the branch name it says how many of its integrations are connected, for example 1 of 2 connected. The line to the middle shows how the branch stands:
| Line | Means |
|---|---|
| Green, with a moving dot | At least one integration on the branch is connected. |
| Grey | The branch has integrations you can connect, and none is connected. |
| Grey and dashed | Everything on the branch is planned. |
| Red and dashed | An integration on the branch has ERROR. The row above the map names it and links to its page. |
Click a branch to open it. The panel lists the branch's integrations, each with a stamp and Configure or Connect:
| Status | Means |
|---|---|
| ON | The integration is connected. |
| ERROR | The last check against the provider failed. The reason is on the integration's page. |
| OFF | The integration is not connected. |
| — | Stack could not read the status. |
The Payments panel also shows the countries your storefronts sell to that cannot pay, per storefront, with a link to Kustom › Markets. That does not turn the line red; the line shows only integration errors.
When Stack cannot read the status, the top shows Could not load integration status. and the branches show —. Press Try again.
Test mode
The button Live · Test mode off (or Test mode on) at the top right of Stack opens Test mode. It shows whether Kustom, Sendify and ProSmart are in test or live, and switches all of them at once.
| Integration | Test | Live |
|---|---|---|
| Kustom | Test (playground) | Live |
| Sendify | Sandbox | Live |
| ProSmart | Test (practice company) | Production |
Each integration stores its test and production keys separately. A switch deletes no keys, and you never have to paste them again.
- Press Turn test mode on, or Turn test mode off to go live.
- Read what will switch and press Turn test mode on or Go live.
The card then shows how each integration went.
- An integration without keys for the environment is not switched. The card says where to add them.
- Kustom goes live only when Kustom accepts the live keys and the go-live checks are green. See Kustom.
- Orders already paid are refunded and captured in the environment they were paid in. Booked shipments are tracked in the environment they were booked in.
- PostNord has no test environment and is not affected.
- When some are in test and some live, the card shows MIXED and the buttons Put everything in test mode and Put everything live.
Disconnect
Disconnect deletes the stored keys and turns the integration off. What stops and what stays is on each integration's page.
Note: You cannot disconnect Kustom while a live storefront uses Kustom as its checkout. See Disconnect.
Where errors show
| The error is about | Where you see it |
|---|---|
| The key check | The integration's page |
| The checkout | The customer sees a message in the checkout |
| Booking and order push | The order and the fulfilment dialog |
| Stock sync | The inventory page and the integration's page |
Planned integrations
Planned integrations are dashed on their branch. In the branch's panel, the Planned card lists them: Bring, Budbee, Instabox, DHL and DB Schenker under Shipping, Klaviyo and Google / Meta Ads under Marketing. Each row has a Details link, and the page there describes what the connection would do. You cannot enter keys, and BunStack sends no data. You can read orders and customers through the API.
- You can choose Bring, Budbee, Instabox, DHL and DB Schenker as the carrier of a shipping method under Settings › Shipping. BunStack books nothing with them. You mark the delivery as shipped by hand.
- The API and webhooks branch opens the API keys, the webhooks and the API reference.
Klarna, Swish, Stripe, Fortnox, Visma and BankID are not in the admin. Kustom is the only checkout.