HomeGuidesAPI ReferenceChangelogPOS PaymentsOnline Payments
Home
Guides

Riverty

Riverty is a Buy Now Pay Later (BNPL) provider who offers invoice payments that are directly payed to the merchant.

Rivery offers so called Buy Now Pay Later products with which the consumer can pay by invoice after a certain amount of time. Riverty takes over the responsibility of the consumer by paying the merchant directly.

CM currently offers Riverty 14 & 30 day invoice in the Netherlands and Belgium only. We support full and partial captures, full and partial cancellations and full and partial refunds.

A Riverty payment consists out of multiple steps which are explained below.

Initiate a payment

First you need to create a payment. This call transfers all consumer and order information to Riverty's system. Currently we only support the type Invoice. You must send in consumer information together with the items. In the items object you can send in images and URL's of your products which will be rendered in the Riverty checkout. In the response you will receive the status PENDING and the action.redirect.url which you need to redirect the consumer to. You will also receive the id field which you must store in your system to use for captures, cancellations or refunds.

The consumer needs to finish the authorization in the Riverty checkout. If the consumer decides to continue with the payment, the status will change to SUCCESS which can be either fetched by invoking the GET transaction endpoint or you will be notified through a webhook call.

Capture a payment

ℹ️

The capture endpoint isn't available for customers who enabled auto capture in their Riverty account.

When a payment has the status SUCCESS it can be captured through our capture endpoint. By capturing an authorization you will complete the payment and eventually you will be payed by Riverty. Typically a capture is triggered when the order is shipped. We support both full and partial captures. The capture amount of multiple partials can't be greater then the total authorized amount and you are responsible for keeping track of the outstanding amounts. When you initiate a full capture, you only need to send in the total amounts together with the transaction ID. When you partially capture an authorization you must send in the items and amounts which are captured.

Each capture has its own id which is returned in the response. You must store this field in your system to be able to trigger refunds in the future as described in the refund part.

Note: Currently we don't support the usage of both partial and full captures on a single transaction. So once you started capturing parts of the order, all up following captures should be partials as well!

Refund

Refunds in Riverty are tight to captures. You can either fully refund a capture or partially refund a capture. When partially refunding a capture, you must send in the items again which you want to refund. To initiate a refund you must send in the transaction ID in the URL. If the transaction has multiple captures, you must send the capture ID in the body (refund endpoint), otherwise it's optional. In the response you will receive the refund ID. We advice you to store the refund ID for referencing purposes.

Note: Currently we don't support the usage of both partial and full refunds on a single capture. So once you started refunding parts of the capture, all up following refunds should be partials as well!

Cancel a payment

As long as a payment isn't fully captured you can cancel the authorization completely or the outstanding part by invoking the cancel endpoint. This is used when for example something goes wrong during processing the order. You can also cancel a payment through the Riverty merchant portal.

Partial captures and partial cancellations can be used together as long as you cancel the parts that aren't captured yet. So when you have 3 items authorized and captured the items 1 and 2, then you can only cancel the 3rd item.

Note: Currently we don't support the usage of both partial and full cancellation on a single transaction. So once you started cancelling parts of the order, all up following cancellations should be partials as well!