> ## Documentation Index
> Fetch the complete documentation index at: https://docs.slm.m1amdocs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Vindicia Internal Notes for Subscribe 2023.03 Release

Production Release Date: March 30, 2023

**Parent topic:**[Vindicia Subscribe - 2023.03 Release](2023.03_tp_subscribeReleaseNotes)

## Subscribe and Retain Features

### Security - Update Key Management and Cryptographic Algorithm

In this release, a new feature has been added that updates Vindicia's key management and cryptographic algorithms. This change empowers our decryption servers with a secure and efficient method of generating new credit card certificates via an API call to AWS KMS (Key Management System). Certificates are used to decrypt the encrypted Credit Cards. To achieve this, we are implementing the following changes to our credit card certificate generation process:

* Adding the ability to generate a new data key from AWS KMS on demand via a secure API call​.
* Improving the way we transport the data key generated from AWS KMS to distribute and use the same in the Decryption Server pool​.
* ​Changing to the way we encrypt/decrypt data using an asymmetric key.​
* ​Added the ability to revoke & rotate the KMS key via the KMS console​.

This is the first phase of the updates, with the next phase coming soon.

(VIN-16686)

### Hosted PCI Integration - Detokenization Support

This feature allows the encrypted HPCI records file to be uploaded via API. The new file upload API is designed to accept encrypted HPCI records file. The API provides a success or failure response, indicating whether the file has been successfully uploaded or not.

All submitted records are sent to Retain. Additionally, a response file is uploaded on SFTP that shows if the record was successfully submitted to Retain.

VIN-20422

### Retain Portal - Transaction Upload with Embedded Flat File Software

From this release, submitting your failed transactions to Vindicia Retain can be performed from the Retain Merchant Portal as a file upload.

The Transaction upload uses Flat File software to provide a simple and automatic interface allowing accelerated data onboarding by submitting a single file with all the Transactions. The advanced file upload technology will validate and also auto-correct the provided details , when possible, in that way shortening the time from decision to actual usage and Transaction recovery.

In the Retain Portal, users use the **Upload** > **Upload Transaction** menu,to access the upload functionality. .

As is always true in Retain, credit cards and tokens can be accepted. The upload process is a secure encrypted environment and therefore full credit card account numbers can be provided, with no encryption.

Once the file is uploaded and validated in the upload flow, it can either be downloaded or submitted.

Data gathering and preparation details are provided as part of the interface and in the documentation on the Knowledge Center.

For more details, see the [Retain Portal User Guide - Transaction Upload chapter](https://docs.vindicia.com/bundle/b_retainPortalUserGuide/page/topics/retainUploadAbout_c.html).

(VIN-19478, VIN-19510)

### Retain API REST Services

In previous releases, we added the new Retain REST APIs in the Staging environment. For more details, see the [Retain OpenAPIs](https://docs.vindicia.com/bundle/amdocs-media-retain-open-apis/page/index.html).

The following Retain APIs are available:

| Path | Description | SOAP Equivalent |
| - | - | - |
| `POST /retain/transactions` | Submits an array of Transactions to Vindicia Retain for processing. Supports up to 1000 transaction per submission. Processes all of the transactions and reports which transactions that couldn’t be processed.Supports submitting transactions for validation only, and can't process with the **Dryrun** parameter. | `billTransactions` |
| `GET /retain/transactions` | Returns an array of transactions filtered by: - Date Range - Account - Subscription - Payment Method ID - Transaction Processor ID Additionally, transaction status can be used. For example all transactions related to a subscription that were captured. Unlike previous releases, where the API returned only terminal status transactions (Captured & Cancelled), this API can return transactions with the following statuses: - Failed - Refunded - Voided The transaction object returned displays information about the number of retries, whether it was forced deposit, and the next scheduled retry. | `fetchBillingResults` |
| `GET /retain/transactions/&#123;id&#125;` | This operation allows you to retrieve a specific transaction and allows you to fetch all of the retries performed using the pass related parameter. | `fetchByMerchantTransactionId` |
| `POST /retain/refunds` | - Refunds or terminates retries for submitted Transactions. - Allows full refunds only. No partial refunds are allowed. - Discontinues retries for Transactions that are not already captured. - Accepts up to 1,00 failed Transaction identifiers in a single API call. - Scans for duplicates, already refunded, and completed (cancelled) transactions. | `refundTransactions` |
| **Note:** In future releases, new operations will be added that were not available in SOAP such as `GET /retain/refunds` List and by ID. Additionally, we will add the REST equivalent of the SOAP `ReportTransaction` and `AddPaymentMethod` operations. | | |

## Report Features

### Improvements to the Subscribe and Reports 2.0 (Catalina) Integration

The following changes were made to the Subscribe and Reports 2.0 (Catalina) integration:

* The Reports 2.0 Server can now publish a message when:
  * A schedule report is started
  * A report is generated
* Subscribe Listens to the new messages, and updates the events in the database.
* Reports are no longer downloaded to Subscribe repository. Reports are now saved in Reports 2.0 only.

**Note:** Current limitation: Reports larger than 400mb can't be downloaded.

(CAT-97)

## Internal Fixes

The following issues were solved in this release:

| Ticket | Title | Description |
| - | - | - |
| PORT-2755 | Subscribe Merchant Portal 2.0 - Preventing Null Merchant Attribute Values Being Sent to Catalina | When Admin internal users did not select a Merchant on the Subscribe Landing Page and generated reports, requests were sent to Catalina with null values in Merchant attributes (ID, Name). Now, the menu bar in Subscribe is hidden until a merchant is selected. |
| VIN-19358 | BRD Transaction Error for Apple Pay and Google Pay | The BRD process incorrectly reported Apple Pay and Google Pay as unknown payment methods. This issue has been fixed, and that message will no longer be printed on the log file. |
| VIN-22005 | IDP Integration - Username Populated Instead of Email | When users tried to sign into ULM, the Username was incorrectly populated in the Email field. This issue has been fixed. The user's email ID is now automatically populated in the ULM login field based on the Username entered in the Vindicia Merchant Portal 2.0. This correction ensures that users have a more seamless experience while logging in to ULM and are no longer required to enter their email ID manually every time they log in. |
| VIN-20602 | Subscribe Merchant Portal 2.0 - Token Activity Filtering Issue | When **Token Activity** records were filtered by a specific **Type**, results were not displayed. This issue has been fixed. Now when users filter **Token Activity** records by a specific **Type**, the records are displayed. |

### **Known Issues**

The following known issues currently exist with the new Retain functionality:​

* Retain Transactions can't be searched or viewed in the Retain Merchant Portal or through the new Retain REST API as the Event broker has been disabled. Fixes for scalability (SYS-26496) and UTF-8 character encoding (VIN-22810/VIN-22203) are planned.
* Users must enter an **Expiration Date​** value in files with tokens, even though it is not a required field in the template.​​ The issue will be fixed. (MICRO-342)
* Users must enter credit card details, even though it is not required for non-tokenized Transactions. The issue will be fixed. (VIN-22843)
* Credit card ingestion issue in Retain API. The issue will be fixed. (MICRO-334)
* End-to-end latency issues for Transaction submission via API. The issue will be fixed. Meanwhile, the feature is usable. (VIN-22770)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.