Troubleshooting integrations
Causes and fixes for the integration problems creators report most: a refused Przelewy24 connection, inactive Stripe payment methods, missing installments, invoices that stopped being issued, Discord access and webhook price IDs.
This page covers the problems creators report most often with payment gateways, invoicing systems, Discord and webhooks, each with its cause and the steps that fix it.
Przelewy24 refuses the connection or asks for my shop's IP address
Przelewy24 can limit an API key to one IP address. Zanfia's servers have no fixed IP address, so a key limited this way is rejected and the connect window shows "Przelewy24 rejected the credentials. Check Merchant ID, POS ID, API Key and CRC Key. …". There is no single address to give to Przelewy24.
- Log in to the Przelewy24 panel (
panel.przelewy24.pl) and open My data → API data and configuration. - In the "IP address" field next to the API key enter
%, click the plus and save. The percent sign means "any address". - Go back to Integrations → Payments (
/integrations/payments), click Connect on the Przelewy24 card, fill in Merchant ID, API Key and CRC Key again and click Save.
If the message stays, copy all values again: the ID fields take digits only, and POS ID can stay empty when you have a single shop. Full walkthrough: Connect Przelewy24.
Klarna, BLIK or Przelewy24 is inactive although Stripe is connected
These three methods are switched on by Stripe for each account separately. Zanfia only reads their state, so a method Stripe has not activated cannot be turned on from the checkout editor, which says "Not active on your Stripe account - enable it in payment gateway settings."
- Open Integrations → Payments (
/integrations/payments) and click Manage on the Stripe card. - Look at Payment method statuses. A green dot means the method is active; a red dot means it is not, and hovering the chip shows Inactive, Pending or Rejected.
- Click Manage payment methods in your Stripe panel and finish the activation on the Stripe side. Stripe may ask you to accept extra terms, and an activation can stay Pending for a while.
- Reopen the checkout editor. Once the dot is green, the method can be shown on the checkout.
Whether Stripe offers a given method to your account is Stripe's decision. Which other gateways provide BLIK, online transfers or installments is listed in Payment methods by gateway.
The installments tile from PayU or Tpay does not show on my checkout
Bank installments are a separate tile, Installments, provided by PayU or Tpay on top of the normal gateway tile. It shows only when all of these are true:
- Installments are available on your own PayU or Tpay account. That is arranged with the gateway, not in Zanfia.
- The price is a one-time or recurring-payment price in PLN, with PayU or Tpay enabled on it.
- The amount is within the range the gateway reports for installments. A price below or above that range shows no tile.
- The tile is switched on for the checkout. On checkouts created before installments were introduced it stays hidden until you open Form & UX, Payment methods, and move Installments out of Hidden on this checkout.
This is different from the Installments via Stripe price type, which splits the price into automatic card charges and needs Stripe. See Payment methods by gateway.
Invoices stopped being issued although the invoicing system is connected
When every new order shows Issue error in the Invoice column of Transactions (/orders) and you receive "⚠️ Error when issuing invoice [product]" for each of them, the API key or token saved in Zanfia is no longer accepted by the invoicing system. Providers expire or revoke keys from time to time. Payments and access are not affected, and the provider card keeps its Connected badge, so the orders are where you notice it.
- Log in to your invoicing system and generate a new API key or token. Where each provider keeps it is listed in Connect an invoicing system.
- In Zanfia open Integrations → Invoices (
/integrations/invoices) and click Manage on the provider card. - Click the pencil icon next to the account. The Edit window notes: "For security we don't show your saved secret. Paste it again to update this connection." Paste the new key and click Save.
- You see "You have successfully edited your account". If the provider refuses the key, the message is "API key sent is not valid!": copy the key again and check that it belongs to the same account.
- Issue the invoices that failed in the meantime. They are not reissued on their own: in Transactions click the gear icon next to each order and choose Edit and retry invoice issue, or use Retry in the attention panel at the top.
Editing keeps the same account, so it stays the default and stays selected on your checkouts. Do not remove the account and connect it from scratch: a removed default leaves checkouts without an account to invoice from. Single failed invoices have other causes: Troubleshooting subscriptions and invoices.
I have two companies in one Fakturownia account. How do I choose which one issues invoices?
Fakturownia picks the seller by department. The connection in Zanfia has a field for it; when the field is empty, Fakturownia chooses the seller on its own side.
- Open Integrations → Invoices (
/integrations/invoices), click Manage on the Fakturownia card and click the pencil icon next to the account. - Fill in ID Department with the numeric ID of the department: "The numeric department ID from Fakturownia (not a name). Find it in Fakturownia → Settings → Company data when editing the department."
- Click Save.
To invoice from both companies, click Add account in the same Manage window and connect Fakturownia a second time with the other department ID and its own Account name. Then mark one account as default with Set as default invoicing system and choose the other one as the Invoicing account in the Invoicing section of the checkouts that should use it.
Discord verification fails when I connect my server
The last step of the connect window checks whether the Zanfia bot can see the server with the ID you entered. "The specified server id is not correctly integrated with the Zanfia bot" means it cannot.
- Check the ID. In Discord turn on Developer Mode (User Settings → Advanced), right-click the server's icon in the left bar, not a channel, and choose "Copy Server ID".
- Check the bot. It has to be added with Add a bot from the connect window and be visible on the server's member list.
- Click Start all over again and go through the three steps once more with the corrected ID.
If the Manage window later warns Our bot role position is too low, open the server settings in Discord, move the bot's role above the roles it should hand out and use the refresh icon next to the server. Setup: Connect Discord, Circle or GitHub.
A buyer paid but was not added to my Discord server
A connected server adds nobody by itself. A workflow with a Discord action does it, and only for clients who linked their own Discord account.
- Check the workflow. In Workflows (
/workflows) there has to be a published workflow with the New purchase trigger for this product that contains a Discord action. - Check whether the client linked Discord. After the purchase the client gets the email "🔗 Add Discord integrations to get access. [product]" and has to open the link in it. Until then the workflow step shows Waiting for Discord connection.
- Send the link again. Open the client in Customers (
/customers) and go to the Profile tab. The Discord row shows the state, for example Not connected or Connect link sent - not finished by the customer. Click the gear icon next to it and use Resend the invitation, Send e-mail. - Add them again after a rejected attempt. In the same Discord window use Re-add to Discord server. The result appears on the client's Activity tab.
A role that is never assigned, although the client is on the server, usually means the bot's role sits below that role; see the previous question.
Which ID is priceId in a webhook, and where do I find it?
data.priceId in a webhook message is the ID of the price in Zanfia, the one on the checkout's Prices tab. It is not the ID of a price object at the payment gateway.
- Open the checkout in Offers → Checkouts (
/checkouts) and go to the Prices tab. - Open the three-dot menu of the price and choose Copy price ID. A message confirms Price ID copied to clipboard.
- Compare that value with
data.priceIdin your endpoint.
The same menu has Copy direct link, which copies the checkout address with that price selected. The message format and the list of events are in Webhooks.
If your problem is not listed here, see Get help and contact support.
Was this article helpful?

