Skip to content

Commit b8c80d0

Browse files
author
Recurly Integrations
authored
Generated Latest Changes for v2021-02-25
1 parent 134e60d commit b8c80d0

2 files changed

Lines changed: 81 additions & 1 deletion

File tree

lib/recurly/client.php

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -162,6 +162,10 @@ public function updateAccount(string $account_id, array $body, array $options =
162162
* @param string $account_id Account ID or code. For ID no prefix is used e.g. `e28zov4fw0v2`. For code use prefix `code-`, e.g. `code-bob`.
163163
* @param array $options Associative array of optional parameters
164164
*
165+
* Supported optional query string parameters:
166+
*
167+
* - $options['params']['redact'] (bool): Permanently removes all personally identifiable information (PII) from this account after it has been deactivated, to fulfill a data subject's right to erasure under GDPR and similar privacy regulations (e.g. CCPA). Cannot be undone.
168+
*
165169
* @return \Recurly\Resources\Account An account.
166170
* @link https://developers.recurly.com/api/v2021-02-25#operation/deactivate_account
167171
*/
@@ -171,6 +175,21 @@ public function deactivateAccount(string $account_id, array $options = []): \Rec
171175
return $this->makeRequest('DELETE', $path, [], $options);
172176
}
173177

178+
/**
179+
* Redact an account (GDPR Right to Erasure)
180+
*
181+
* @param string $account_id Account ID or code. For ID no prefix is used e.g. `e28zov4fw0v2`. For code use prefix `code-`, e.g. `code-bob`.
182+
* @param array $options Associative array of optional parameters
183+
*
184+
* @return \Recurly\Resources\Account Account has been accepted for redaction and will be processed asynchronously.
185+
* @link https://developers.recurly.com/api/v2021-02-25#operation/redact_account
186+
*/
187+
public function redactAccount(string $account_id, array $options = []): \Recurly\Resources\Account
188+
{
189+
$path = $this->interpolatePath("/accounts/{account_id}/redact", ['account_id' => $account_id]);
190+
return $this->makeRequest('PUT', $path, [], $options);
191+
}
192+
174193
/**
175194
* Fetch an account's acquisition data
176195
*

openapi/api.yaml

Lines changed: 62 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1297,6 +1297,15 @@ paths:
12971297
and cancels any active subscriptions (canceled subscriptions will remain active
12981298
until the end of the current billing cycle before expiring). We recommend
12991299
closing accounts only when all business is concluded with a customer.
1300+
parameters:
1301+
- in: query
1302+
name: redact
1303+
schema:
1304+
type: boolean
1305+
description: Permanently removes all personally identifiable information (PII)
1306+
from this account after it has been deactivated, to fulfill a data subject's
1307+
right to erasure under GDPR and similar privacy regulations (e.g. CCPA).
1308+
Cannot be undone.
13001309
responses:
13011310
'200':
13021311
description: An account.
@@ -1404,6 +1413,45 @@ paths:
14041413
not found: %v\", e)\n\t\treturn nil, err\n\t}\n\tfmt.Printf(\"Unexpected
14051414
Recurly error: %v\", e)\n\treturn nil, err\n}\nfmt.Printf(\"Deactivated
14061415
Account: %s\", account.Id)"
1416+
"/accounts/{account_id}/redact":
1417+
parameters:
1418+
- "$ref": "#/components/parameters/account_id"
1419+
put:
1420+
tags:
1421+
- account
1422+
operationId: redact_account
1423+
summary: Redact an account (GDPR Right to Erasure)
1424+
description: Permanently and irreversibly removes all personally identifiable
1425+
information (PII) from an account to fulfill a data subject's right to erasure
1426+
under GDPR and similar privacy regulations (e.g. CCPA). This includes billing
1427+
information, shipping addresses, and transaction details such as names, email
1428+
addresses, and payment card data. The underlying account and transaction records
1429+
are retained for financial and audit purposes, but all personal data fields
1430+
are cleared. The account must have no active subscriptions, uninvoiced charges,
1431+
or partially paid invoices before it can be redacted. Redaction is processed
1432+
asynchronously and cannot be undone.
1433+
responses:
1434+
'200':
1435+
description: Account has been accepted for redaction and will be processed
1436+
asynchronously.
1437+
content:
1438+
application/json:
1439+
schema:
1440+
"$ref": "#/components/schemas/Account"
1441+
'422':
1442+
description: Account cannot be redacted. Common reasons include active subscriptions,
1443+
uninvoiced charges, or partially paid invoices.
1444+
content:
1445+
application/json:
1446+
schema:
1447+
"$ref": "#/components/schemas/Error"
1448+
default:
1449+
description: Unexpected error.
1450+
content:
1451+
application/json:
1452+
schema:
1453+
"$ref": "#/components/schemas/Error"
1454+
x-code-samples: []
14071455
"/accounts/{account_id}/acquisition":
14081456
parameters:
14091457
- "$ref": "#/components/parameters/account_id"
@@ -25251,7 +25299,20 @@ components:
2525125299
transactions where fraud checks have already been performed on the
2525225300
initial transaction. Note that not all gateways support this feature.
2525325301
For Stripe, this skips Radar fraud rules; for Adyen, this skips
25254-
Risk checks.
25302+
skip_recurly_fraud:
25303+
type: boolean
25304+
title: Skip Recurly Fraud
25305+
description: When set to `true`, skips Recurly's fraud detection checks
25306+
for this transaction, including Kount and IP-based fraud screening.
25307+
Does not affect gateway-level fraud checks. Use `skip_all_fraud`
25308+
to skip all fraud checks.
25309+
skip_all_fraud:
25310+
type: boolean
25311+
title: Skip All Fraud
25312+
description: When set to `true`, skips all fraud checks for this transaction,
25313+
including both gateway-level fraud checks and Recurly's fraud detection
25314+
services. This is useful for trusted transactions where fraud screening
25315+
is not required.
2525525316
customer_notes:
2525625317
type: string
2525725318
title: Customer notes

0 commit comments

Comments
 (0)