Paddle Billing
Ask AI

See consent requirements for South Korean subscription renewals

Subscriptions now return consent_requirements, giving you visibility into renewal consent for South Korean subscribers.

What's new?

We've added a consent_requirements field to the subscription entity. It's returned by all subscription endpoints and included in subscription webhook event payloads.

consent_requirementsarray

List of active consent requirements for the subscription's current billing period. Returns an empty array if no consent requirement exists.

idstring

Unique Paddle ID for this subscription consent requirement entity, prefixed with subconreq_.

requirementstring

Type of consent required for successful renewal.

statusstring

Status of this consent requirement.

created_atstring<date-time>

RFC 3339 datetime string of when this entity was created. Set automatically by Paddle.

consent_periodobject or null

Period during which consent for this subscription can be granted. null if there is no next_billed_at or the consent requirement does not apply to the current billing period.

granted_atstring<date-time> or null

RFC 3339 datetime string of when the customer granted their consent. null if not yet granted.

voided_atstring<date-time> or null

RFC 3339 datetime string of when consent was voided or no longer required. null if not voided.

How it works

To comply with renewal notification requirements from the Korea Fair Trade Commission (KFTC), customers in South Korea must explicitly consent to continued subscription charges when free trials or introductory discounts end. This consent system has been part of the Paddle platform since July 2025.

Previously, consent requirement data wasn't accessible through the API. With this release, the consent requirements for the subscription's current billing period are listed in the consent_requirements field on the subscription entity for all subscription API responses and webhook payloads.

Customers in countries other than South Korea don't need to provide consent to continue subscription charges. For most subscriptions, the consent_requirements field returns an empty array [].

You can check the status of the consent requirement to see whether consent is pending, has been granted, or has been voided. You can also check the granted_at and voided_at timestamps to see when consent was granted or voided.

New webhook notification triggers

subscription.updated now occurs in two additional consent-related scenarios:

  • When a consent requirement is created

    A South Korean subscription enters a state that requires renewal consent, such as a trial nearing its end, or an introductory discount ending or being removed. The payload includes consent_requirements with status: "pending".

  • When consent is granted

    Consent is granted when a customer completes the consent flow via the customer portal. The payload includes consent_requirements with status: "granted" and granted_at with a timestamp.

If you have South Korean subscribers, you can listen to subscription.updated and inspect consent_requirements to react to state changes for customer consents. For example, you could build retention flows if consent hasn't been provided yet, or suppress renewal reminder communications once consent has been granted.

Summary of changes

Fields

This is a summary of the new fields in the Paddle API and webhooks:

FieldChangeNotes
subscription.consent_requirementsNew fieldArray of consent requirements for this subscription.

Events

This is a summary of changes to event behaviors:

EventChangeNotes
subscription.updatedUpdatedFires when a consent requirement is created and when consent is granted.

Next steps

This change is available in version 1 of the Paddle API.

It's a non-breaking change, meaning it doesn't impact existing integrations.

If you have South Korean subscribers, you can list subscriptions or listen to subscription.updated to observe the status of consent requirements and build retention flows from it.

Related pages

AI AssistantBeta

Ask me about Paddle

Discover, integrate, and debug faster. I'm here to help with all your questions and use cases.

Looking for help with a purchase? Visit paddle.net.

Powered by kapa.ai
|
Protected by hCaptcha