Skip to main content

Paying a fee when you submit a request

Some requests cost money. Portaliq shows the fee, sends the resident to the payment page and tells them afterwards whether the payment went through. Portaliq creates no payment itself and stores no card or bank data.

For case app authors​

Declare the fee on the case type, in portalFee:

KeyWhat it holds
amountThe fee as a decimal with a point, such as 45.00.
currencyThe three-letter code, such as EUR.
descriptionA short line the payment page shows.
payActionThe id of an endpoint action in your contribution for the client audience.

The pay action receives {reference, amount, currency, description, returnUrl}. The amount is the declared one: whatever a browser sends is ignored. Answer with {checkoutUrl, paymentIntentId}. Create the payment through integriq's payment connector, and use the returnUrl as the address the resident returns on.

Portaliq reads the state of the payment from integriq's payment_intent object (register openconnector) by the paymentIntentId you returned. It never reads a status from the address the resident comes back on.

A request with a fee needs a signed-in resident at substantial trust, and says so before the first question.

For administrators​

A payment page is only followed when its address is https and its host is in the portal's Payment hosts. The list is empty by default, so nothing redirects until you name the provider's host, such as www.mollie.com. When a provider changes its checkout host, paying stops with "U kunt nu niet betalen" until you update the list.