Markus Michalski FAQ

Riverty Payments for Sylius

Riverty Buy Now Pay Later for Sylius - invoice, direct debit, instalments and Pay in X via Hosted Checkout, nine countries, capture, void and refund in the admin, Storefront and Shop API

Deutsche Version

All Sylius Plugins

Sylius
PHP
License

Note on Riverty: This plugin is an independent integration and has no business or contractual relationship with Riverty. It was not commissioned, authorized or reviewed by Riverty. If you have questions or problems, contact the plugin support (support@markus-michalski.net) only. Riverty itself accepts no responsibility and provides no support for it. "Riverty" is a trademark of its respective owner.

This documentation always describes the latest published version.

Live demo: Try this and other plugins live, with no installation and no risk: demo.markus-michalski.net

Riverty Payments for Sylius

Riverty Buy Now Pay Later for Sylius 2: invoice, direct debit, instalments (fixed instalments) and Pay in X through Riverty Hosted Checkout. Customers enter their payment details on the Riverty page after the redirect, not in your shop. The plugin works in the Twig storefront and headless through the Sylius Shop API. It is built for Sylius shop owners with a Riverty merchant contract who sell in DE, AT, CH, NL, BE, NO, SE, DK or FI.

Connecting Riverty takes more than a redirect: API keys per country, availability checks, capture, void and refund, reconciliation of open payments and expiring reservations. This plugin handles all of it. You configure and manage orders in the Sylius admin, without writing any code.

graph LR
    A["Storefront (Twig)"] --> C["Sylius Payment Request"]
    B["Shop API"] --> C
    C --> D["Riverty plugin"]
    D --> E["Riverty API"]
    E --> F["Hosted Checkout"]
    F --> G["Customer returns or is reconciled"]
    G --> H["Payment authorized"]
    H --> I["Capture, void, refund in the admin"]

Documentation

Page Contents
Installation Composer installation, routes, setup command, update, uninstall
Configuration API keys per country, creating payment methods, checking the contract, options, API log
Order management Capture, void and refund, partial quantities, capture on shipment
Reconciliation and expiry Reconciling open payments, the 30-day reservation, digest mail, cron job
Storefront Payment methods at checkout, instalment example, identification number, thank-you page
Shop API Headless use through Sylius payment requests, limits
Extensibility Service tags, replaceable interfaces, events
Troubleshooting Common problems, known limitations, FAQ
Technical details Flow diagram, plugin structure, tables

Features

Feature Description
Hosted Checkout Payment runs on Riverty through a redirect, no payment details are collected in your shop
Four payment methods Invoice, direct debit, instalments (fixed instalments) and Pay in X (Netherlands only)
Nine countries One API key pair (test and live) per country: DE, AT, CH, NL, BE, NO, SE, DK, FI
Payment methods in one click One button creates the Riverty payment methods for a channel, a second one asks what your contract offers
Availability from Riverty The checkout offers only the payment methods Riverty reports for the cart
Capture, void, refund Right on the order page in the admin, including partial quantities and per capture
Capture on shipment Optional: whatever is still open is captured as soon as the last shipment is shipped
Reconciling open payments Riverty has no webhook, a console command picks up customers who never came back
Expiry monitoring Warning before the 30-day reservation ends, on the order page and in a daily digest mail
API log Every call to Riverty is logged, personal data is masked
Order history Optional: whether and how much of the earlier order history of the customer goes to Riverty, nothing by default
Identification number A field in the payment step for Norway, Sweden, Denmark and Finland, stored encrypted
Instalment example Optional representative example under section 6a PAngV at checkout
Dual mode Storefront and Shop API use the same payment path

Requirements

Requirement Version Notes
Sylius ^2.2 Tested with 2.2 and 2.3
PHP ^8.3 Extensions mbstring and openssl
Symfony ^7.4
Database MySQL or MariaDB The migrations are MySQL DDL, PostgreSQL is not supported
Riverty Merchant account One API key per country you sell in
APP_SECRET Not empty, never changed The key for stored API keys is derived from it
Payment request transport sync:// Sylius default, see Installation
State machine adapter symfony_workflow Sylius default, required for capture on shipment and for blocking the Sylius buttons

License

Commercial license.

Support

Email: support@markus-michalski.net