Payment Provider Integration
JustOn Cash Management can integrate your Salesforce org with payment service providers (PSP) in order to exchange payment information – namely, to provide your buyers the option to pay their purchases (represented as entries) via the payment page.
For details, see Integrating Payment Provider.
Payment Workflow via Payment Provider
In broad strokes, payment requests are processed as follows:
- JustOn Cash Management prepares payment
- JustOn Cash Management encrypts the involved entries and publishes the payment page it to the buyer.
- Buyer executes payment
-
The buyer selects a payment service provider or payment method and releases the payment transaction.
JustOn Cash Management creates a Payment record with the status
Pending
and an Entry Item record with anExpected Amount
. - Payment provider captures amount
-
The payment service provider captures the payment amount in the buyer's bank and notifies JustOn Cash Management about the result.
JustOn Cash Management creates a Payment Notification record that represents the capture result.
- The Payment Notification record has an
Amount
value set. - The Payment record's
Status
is setCollected
and itsCollected Amount
is registered. - On the Entry Item record, the
Expected Amount
is deleted and anAssigned Amount
value is set – which is transferred to the related Entry record asAssigned Amount
. - With the
Open Amount
completely covered, the Entry record'sStatus
is setBalanced
.
- The Payment Notification record has an empty
Amount
. - The Payment record's
Status
remains or is resetPending
. - The Entry Item record keeps or is restored its
Expected Amount
. - The related Entry record's
Status
remains or is resetOpen
.
- The Payment Notification record has an
- Bank transfers money
- The buyer's bank transfers the captured amount to the payment service provider. Subsequently, the payment service provider passes the amount to the merchant's bank.
Info
Collecting payments via PSPs and, consequently, settling the corresponding entries does not involve bank accounts.
The money transfer between the banks does not alter the payment and entry status or the settlement result.
Payment Page
JustOn Cash Management includes a payment page. It provides your buyers the option to pay their purchases (represented as entries) via integrated payment service providers.
In order to invite your buyers to pay, you publish a link to your payment page. This payment link looks like
https://payment.juston.cloud/pay/:link-id/to/:tenant
where :link-id
encodes the relevant entries and :tenant
represents your organization.
For details, see Configuring Payment Page.
Text Customization
Depending on your requirements, you can modify or translate the texts to be displayed on the payment page. To this end, JustOn Cash Management provides the custom Salesforce object Payment Page Configuration.
Payment page configurations hold customized texts or translations for payment page texts. Once payment page configuration records are available for a given locale, JustOn Cash Management retrieves the texts when loading the payment page.
Additional Pages
Your business may require to publish payment-relevant information that does not "fit" in the text components of the payment page. To support this, you create additional custom pages that are linked with the payment page. You can use this, for example, to attach your terms and conditions.
JustOn Cash Management implements support for custom pages using the Salesforce object CMS Page. Once CMS Page records are available for a given locale and set Active
, JustOn Cash Management produces a list of links to these custom pages in the payment page footer when loading the payment page.
Clicking a link opens the page in a modal window. Closing this window returns the user to the payment page, ready to continue the payment process.
Refund via Payment Provider
For payments facilitated by a payment service provider, the provider is the leading system. Any modifications to the payment will synchronize with JustOn Cash Management, updating both payment and refund records accordingly.
Usually, PSPs place refund requests in a queue for processing, which may take some time. Once executed, JustOn Cash Management will be notified via a webhook. Subsequently, JustOn Cash Management creates a refund record, with the Open Amount
in accordance with the refunded payment (see Refund Amount Values). In addition, JustOn Cash Management will reduce the Open Amount
and the Collected Amount
of the related payment (see Payment Amount Values) in accordance with the refunded amount.
Currently, JustOn Cash Management supports refunds in response to payments made via Adyen only. For details on initializing a refund via the Adyen dashboard, see Refund a payment.
With respect to refunds via Adyen, the possible responses ("webhook events") are mapped to the refund statuses as follows:
Webhook Event | Refund Status | Adyen Description |
---|---|---|
REFUND andsuccess = true |
Refunded |
Adyen's validations were successful and we got the refund request to the card scheme. |
REFUND andsuccess = false |
Rejected |
Adyen's refund validations failed. |
REFUND_FAILED andsuccess = true |
Failed |
This can happen a few days after the refund request was submitted: the card scheme can still reject the refund. |
REFUNDED_REVERSED andsuccess = true |
Reversed |
This can happen for some payment methods, for example, if the shopper's bank account is no longer valid and the funds have been returned to Adyen |
Info
Refunds in response to payments made via Mollie require manual processing to produce the intended results in JustOn Cash Management.
For details on initializing a refund via the Mollie Dashboard, see How do I refund a payment?.
For details on processing Mollie-initiated refunds in JustOn Cash Management, see []