added

January & February 2025 Recap

This changelog update details Ping's new Requisitions feature, which enables flexible, filter-based payout scheduling with real-time updates, alongside Swish Recurring, a streamlined solution for automatic subscription payments secured by a one-time customer consent process.

This changelog update details Ping's new Requisitions feature, which enables flexible, filter-based payout scheduling with real-time updates, alongside Swish Recurring, a streamlined solution for automatic subscription payments secured by a one-time customer consent process.

Introducing Requisitions

We’re excited to announce the launch of Requisitions, a new feature that gives you (our tenants) the flexibility to decide when and what should be disbursed. This addition aligns with our ongoing mission to provide greater control and transparency over payout processes.

What is a Requisition?

A Requisition is a structured request for payouts, where you define the scope of the funds to be disbursed. Instead of automatically receiving payouts on a fixed schedule, you can now create filters—known as Selections—that specify which payments and merchants should be included. You can then review and finalize (submit) these payouts according to your business needs.

Key Highlights

Flexible Payout Control

Create one or more Selections to filter the payments you want to include. Filters can be based on:

  • Payment IDs
  • Merchant IDs
  • Settlement Date Range (settled_at_from / settled_at_to)

Tailored Disbursement

Each Selection can be as broad or as narrow as you like—disburse all funds for a specific merchant, a single payment for multiple merchants, or a single payment to one particular recipient.

Incremental Payouts

If your Requisition results in multiple payouts (e.g., multiple recipients), they can be disbursed at different times. You’ll receive real-time callbacks to stay informed about which payouts have been successfully disbursed.

Clear Usage Guidelines

Requisitions are best suited for periodic payouts to your merchants. Creating a Requisition for a single payment is generally discouraged unless you have a specific justification, such as paying a particular invoice.

Important Considerations

If you provide a reference when creating a Requisition, that reference will be used for all created payouts.
Funds tied to a merchant that lacks a valid payout account will not result in a payout, even if they are included in the Selection.

Dig into the details

Read more about Requisition in our guidelines:

https://docs.pingpayments.com/reference/requisitions

Introducing Swish Recurring

Swish Recurring User Experience

Swish Recurring User Experience

We’re excited to announce the launch of Swish Recurring, a new feature that simplifies subscription-based and other automatic payments for your customers. This addition aligns with our ongoing mission to expand the variety of flexible and user-friendly payment methods available through Ping.

What is Swish Recurring?

Swish Recurring allows your customers to authorize recurring payments for subscriptions or other ongoing services—everything from music streaming to donations. After a single approval in the Swish app, payments can be automatically initiated according to your business logic. The customer retains full visibility and control, receiving notifications in their Swish app whenever a payment occurs.

Key Highlights

Automated Subscription Payments

With Swish Recurring, your customers can set up automatic payments for services like streaming subscriptions, donations, membership fees, and more.

Single-Time Authorization

Your customers only need to approve the recurring payment once in the Swish app. After that, you can trigger charges without requiring them to open the app again, giving them a hassle-free experience while still maintaining transparency.

Real-Time Settlement

Swish transactions are settled in real time—no waiting periods or reserved amounts. Funds move instantly from the customer’s account, providing immediate confirmation.

Full Visibility & Control

All recurring payments and consents are clearly displayed in the Swish app, enabling customers to easily manage or revoke any existing consents at any time.

How It Works

1. Consent Creation:

You initiate the process by creating a Payment Consent via the POST /payments/api/v1/payment_consents endpoint.

2. Customer Approval:

The customer approves the recurring payment in the Swish app (only once).

3. Automatic Charges:

You can now initiate payments as agreed upon, using the newly created Consent ID.

4. Notifications:

The customer receives a notification each time a recurring payment has been processed.

Difference between m_commerce and e_commerce consent flows

m_commerce Flow

  • Either displaying a QR code or deep-linking to the Swish app via a swish:// .
  • Ideal for in-person or mobile-centric scenarios where the user can scan a QR code with their phone.
  • The customer manually opens Swish (e.g., by scanning the code) and approves the consent or payment.

e_commerce Flow

  • The user’s phone number is “seeded” into the request, so when they click “Sign Up,” Swish automatically opens (or prompts them to do so) with the Consent ready to be signed.
  • Best suited for web-based or desktop flows, where the customer simply needs to confirm the payment consent in the Swish app without manually entering any information.
  • The user experience is streamlined: the phone number is already known, so only a quick confirmation in the app is required.

Technical Overview

To start using Swish Recurring, you need to create a Payment Consent. Below is an example POST request:

curl --request POST \
     --url https://sandbox.pingpayments.com/payments/api/v1/payment_consents \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --header 'tenant_id: 103106e6-efe6-44e1-9267-2b89945e37b0' \
     --data '
{
  "flow": "e_commerce",
  "metadata": {
    "my-info": "1337"
  },
  "method": "recurring",
  "provider": "swish",
  "provider_method_parameters": {
    "qr_border": 1,
    "qr_format": "transparent_svg",
    "qr_size": 300,
    "use_qr_code": false,
    "provider_method": "SwishRecurringConsentParameters",
    "tin": "198201159963",
    "phone_number": "46701234668"
  },
  "signee": {
    "address": {
      "city": "Örebro",
      "country": "SE",
      "county": "Örebro",
      "postal_code": "70244",
      "street": "Signalgatan 9"
    },
    "identity": {
      "country": "SE",
      "identifier": "198201159963",
      "type": "person"
    },
    "email": "[email protected]",
    "ip_address": "255.82.4.68",
    "name": "Kalle Karlsson",
    "phone_number": "46701234668",
    "source_of_funds": [
      "salary_or_employment_income"
    ]
  },
  "status_callback_url": "https://my-website.com/callbacks"
}
'

Consent Statuses

A Payment Consent can have the following statuses:

  • INITIATED
  • PENDING
  • DECLINED
  • CRASHED
  • EXPIRED
  • ABORTED
  • ACTIVE
  • REVOKED

Once the customer has approved the consent, it transitions to ACTIVE, and you can start initiating payments against it.

Initiating a Recurring Payment

When you’re ready to charge the customer, use the regular Initiate Payment method in our API, specifying "provider": "swish" and "method": "recurring" along with the consent_id you received earlier:

{
  "provider": "swish",
  "method": "recurring",
  "provider_method_parameters": {
    "consent_id": "103106e6-efe6-44e1-9267-2b89945e37b0",
    "message": "Monthly Cost for Netflix"
  },
  "amount": 9900,
  "currency": "SEK",
  ...
}

Fetching a Payment Consent

To retrieve the status and details of an existing Payment Consent, send a GET request:

curl --request GET \
     --url https://sandbox.pingpayments.com/payments/api/v1/payment_consents/62177bfb-d8a1-40c4-83d7-dae7510b04ea \
     --header 'accept: application/json' \
     --header 'tenant_id: 103106e6-efe6-44e1-9267-2b89945e37b0'

You’ll receive a response containing fields such as created_at, id, and the current status.

Future Developments

We’re also exploring support for additional recurring payment methods—such as Vipps MobilePay, Bankgirot’s Autogiro, and recurring card payments—to cater to an even broader set of use cases.