Skip to content

Tags: checkout/checkout-sdk-php

Tags

4.7.0

Toggle 4.7.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Release - 4.7.0 (#330)

This release adds support for new sdk clients: Agentic Commerce, Compliance Requests and GooglePay. It introduces new API clients, request/response entity classes, and updates the main `CheckoutApi` class to expose these clients. Additionally, it updates the API client to allow passing custom headers for POST requests. These changes enable delegated payment token creation, compliance request retrieval, and response submission.

**Agentic Commerce API integration:**

* Added `AgenticCommerceClient` for creating delegated payment tokens, including support for custom integrity headers and idempotency keys.
* Introduced related entity classes: `DelegatedPaymentRequest`, `DelegatedPaymentAllowance`, `DelegatedPaymentBillingAddress`, `DelegatedPaymentMethodCard`, `DelegatedPaymentRiskSignal`, and supporting enums/types for card and funding types. [[1]](diffhunk://#diff-df1d3edcd4ac4913fe4ffc939f074ac44cf8d16e4d9c21ea18b879a7b82c0c62R1-R55) [[2]](diffhunk://#diff-b5fcded2e8a85cac59d384a593ad7376bef3216091cb29de1999e7f4ab4d2bb3R1-R61) [[3]](diffhunk://#diff-0e578735f8d1a6c7e7b3c24db1d678304aac1eb1b8d2f58e799f05fd544c1240R1-R71) [[4]](diffhunk://#diff-819eb61553f11251f0112c52936ffd5b035b34490e26c6b7987f6470339d62abR1-R145) [[5]](diffhunk://#diff-be4c62517ca63bebdac3147555d24cfa0cf93b18e1dedf2da4992891fbb0cddeR1-R33) [[6]](diffhunk://#diff-b72c216561ce204f5a8d5af590c6b248735623acf6f47ccd36537b0dd5097967R1-R10) [[7]](diffhunk://#diff-dd62163ba26a6999092a449a6a426214861c76f99e12dd1c19446fa59cc2e123R1-R8) [[8]](diffhunk://#diff-d619d7cc7589c1ecb3927a66cb1268dcdc3be5236b991ac9e3cf9579301f24ceR1-R12) [[9]](diffhunk://#diff-eeb6700e89ec96f0acba1ac314430ad460e7b6ab76a1640a607b02657fc0f8efR1-R8) [[10]](diffhunk://#diff-220f6b1014c1ca1571e870596252f206f25c00d5e36b82fbd67e5b7158d21425R1-R37)

**Compliance Requests API integration:**

* Added `ComplianceRequestsClient` to retrieve and respond to compliance requests by payment ID.
* Added entity classes for compliance response fields and grouping by party: `ComplianceRespondedField`, `ComplianceRespondedFields`. [[1]](diffhunk://#diff-ec42cfaf9be7038ac49bcd8f76eaa75ff88497ed07d4cbedadc2bcfc6ffdb22cR1-R33) [[2]](diffhunk://#diff-02023dc99c269deabc07f63a1509f3feb5565f0dfcc274c4f5a89bb174f9115cR1-R27)

**Google Pay API integration:**

* Added `GooglePayClient` to manage all google pay enrollments and domains

**Core API enhancements:**

* Updated `ApiClient::post` to accept optional custom headers, supporting new API requirements for integrity and versioning.

**Main API surface changes:**

* Updated `CheckoutApi` to instantiate and expose `AgenticCommerceClient`, `ComplianceRequestsClient`, and `GooglePayClient` via new getter methods. [[1]](diffhunk://#diff-1af775e20600ee7ffa558a4c28fa34719642e2dd34a27da67c28e4b484b0224aR6-R8) [[2]](diffhunk://#diff-1af775e20600ee7ffa558a4c28fa34719642e2dd34a27da67c28e4b484b0224aR24) [[3]](diffhunk://#diff-1af775e20600ee7ffa558a4c28fa34719642e2dd34a27da67c28e4b484b0224aR85-R90) [[4]](diffhunk://#diff-1af775e20600ee7ffa558a4c28fa34719642e2dd34a27da67c28e4b484b0224aR144-R146) [[5]](diffhunk://#diff-1af775e20600ee7ffa558a4c28fa34719642e2dd34a27da67c28e4b484b0224aR397-R426)

4.6.1

Toggle 4.6.1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Release - 4.6.1 (#328)

Added account_name_inquiry field to AccountHolder class ([#327](vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/code/electron-browser/workbench/workbench.html))

This pull request introduces a small update to the AccountHolder class by adding a new property to support account name inquiry functionality.

lib/Checkout/Common/AccountHolder.php: Added a new public boolean property account_name_inquiry to the AccountHolder class to indicate whether an account name inquiry has been performed.

4.6.0

Toggle 4.6.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Release - 4.6.0 (#311)

This release introduces several enhancements and new features to the SDK, focusing on expanding API coverage, improving file handling. The changes include new client methods for file upload and retrieval, support for additional API clients, improvements to request serialization, and the addition of several new data classes.

**Major SDK Feature Additions and Improvements:**

* Added new methods to `AccountsClient` for uploading and retrieving files for sub-entities, supporting due diligence documentation.
* Introduced new endpoints in `DisputesClient` to support arbitration evidence submission and retrieval for disputes.
* Added new data classes: `FilePurpose` (for file upload purposes), `UploadFileRequest` (file upload request model), `CardholderAccessTokenRequest`, `UpdateCardholderRequest`, and `CardMetadata`. [[1]](diffhunk://#diff-c50cf53207933f27165fbd45ea4171f78699ebc5bd144035b9d48d41243b2a5fR1-R21) [[2]](diffhunk://#diff-e0119f54e11a34a47085578995dbfe23545ce3f26837b9cb6616a58a0b6bd1f7R1-R13) [[3]](diffhunk://#diff-dcbd63379de3b2161354e275a1a12154bfd2266bd95cccc76f6fdd2d33dfb3f6R1-R42) [[4]](diffhunk://#diff-359d2ef22380f2f7b4fdd8b1988155ed6a979660aa51cd60f4ca0e398e82e42bR1-R74) [[5]](diffhunk://#diff-e139effecee6d49dbc26cc99262e9ab1c2ff9430fa13806f53935c06f2900592R1-R36)
* Updated `ShippingInstructions` in the issuing cards module to clarify and swap the meaning of `shipping_address` and `recipient_address`.

**API Client and Serialization Enhancements:**

* Improved request body handling in `ApiClient` to correctly set content types for JSON, multipart, and form-urlencoded requests, ensuring more robust API interactions.
* Added utility methods in `Client` to serialize request objects as form-urlencoded data, converting camelCase properties to snake_case as required by some endpoints.

**Expanded API Client Access:**

* Registered and exposed new clients in `CheckoutApi`: `PaymentMethodsClient`, `StandaloneAccountUpdaterClient`, and `ApplePayClient`, with corresponding getter methods for easier access. [[1]](diffhunk://#diff-1af775e20600ee7ffa558a4c28fa34719642e2dd34a27da67c28e4b484b0224aR21-R32) [[2]](diffhunk://#diff-1af775e20600ee7ffa558a4c28fa34719642e2dd34a27da67c28e4b484b0224aR76-R99) [[3]](diffhunk://#diff-1af775e20600ee7ffa558a4c28fa34719642e2dd34a27da67c28e4b484b0224aR132-R134) [[4]](diffhunk://#diff-1af775e20600ee7ffa558a4c28fa34719642e2dd34a27da67c28e4b484b0224aR361-R384)

**Other Minor Improvements:**

* Added a missing import for `UploadFileRequest` in `AccountsClient` to support the new file upload feature.
* Added a constant for the arbitration path in `DisputesClient`.

4.5.0

Toggle 4.5.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Release - 4.5.0 (#309)

This release introduces new features and enhancements to the Checkout API client, focusing on expanding support for identities management, sub-entity member management, reserve rules, and additional API clients. It also improves the flexibility of the API client for handling custom headers and request body formats. Below are the most important changes:

### API Client Enhancements

* Refactored `ApiClient` to support custom headers via reflection, improved handling of different request body formats (JSON, multipart form data, form URL encoded), and updated method signatures for greater flexibility. [[1]](diffhunk://#diff-6c9ac9656fdcf499e9e81a77676d62f67a228b182b0572d70b8cdb61f07cc151L52-R81) [[2]](diffhunk://#diff-6c9ac9656fdcf499e9e81a77676d62f67a228b182b0572d70b8cdb61f07cc151L102-R108) [[3]](diffhunk://#diff-6c9ac9656fdcf499e9e81a77676d62f67a228b182b0572d70b8cdb61f07cc151R202-R239) [[4]](diffhunk://#diff-6c9ac9656fdcf499e9e81a77676d62f67a228b182b0572d70b8cdb61f07cc151R260-R268) [[5]](diffhunk://#diff-6c9ac9656fdcf499e9e81a77676d62f67a228b182b0572d70b8cdb61f07cc151R281-R342)

* Refactored `ApiClient` methods to accept a more generic `$requestBody` and optional custom headers, improving support for different content types (JSON, multipart, form URL encoded) and making header injection more flexible via reflection. Utility methods were added for header conversion and content-type detection. [[1]](diffhunk://#diff-6c9ac9656fdcf499e9e81a77676d62f67a228b182b0572d70b8cdb61f07cc151L52-R81) [[2]](diffhunk://#diff-6c9ac9656fdcf499e9e81a77676d62f67a228b182b0572d70b8cdb61f07cc151L102-R108) [[3]](diffhunk://#diff-6c9ac9656fdcf499e9e81a77676d62f67a228b182b0572d70b8cdb61f07cc151R202-R239) [[4]](diffhunk://#diff-6c9ac9656fdcf499e9e81a77676d62f67a228b182b0572d70b8cdb61f07cc151R260-R268) [[5]](diffhunk://#diff-6c9ac9656fdcf499e9e81a77676d62f67a228b182b0572d70b8cdb61f07cc151R281-R342)
* New if-match header support in the put requests through Accounts Headers class.

### New API Client Integrations

* Added new client properties and getter methods to `CheckoutApi` for `NetworkTokensClient`, `FaceAuthenticationClient`, `IdDocumentVerificationClient`, `IdentityVerificationClient`, `AmlScreeningClient`, and `ApplicantsClient`, enabling access to additional Checkout.com API features. [[1]](diffhunk://#diff-1af775e20600ee7ffa558a4c28fa34719642e2dd34a27da67c28e4b484b0224aR12-R20) [[2]](diffhunk://#diff-1af775e20600ee7ffa558a4c28fa34719642e2dd34a27da67c28e4b484b0224aR52) [[3]](diffhunk://#diff-1af775e20600ee7ffa558a4c28fa34719642e2dd34a27da67c28e4b484b0224aR63-R72) [[4]](diffhunk://#diff-1af775e20600ee7ffa558a4c28fa34719642e2dd34a27da67c28e4b484b0224aR90-R101) [[5]](diffhunk://#diff-1af775e20600ee7ffa558a4c28fa34719642e2dd34a27da67c28e4b484b0224aR245-R252) [[6]](diffhunk://#diff-1af775e20600ee7ffa558a4c28fa34719642e2dd34a27da67c28e4b484b0224aR301-R340)

### New Features: Sub-Entity Members & Reserve Rules

* Added methods to `AccountsClient` for managing sub-entity members (retrieving and reinviting) and reserve rules (creating, retrieving, updating, and fetching details). New request and entity classes for reserve rules (`CreateReserveRuleRequest`, `UpdateReserveRuleRequest`, `Rolling`, `HoldingDuration`) were introduced. [[1]](diffhunk://#diff-f0889b85d23f6c93a7d2091a429c4a30751a6980f43e6f452a76682fc50786d5R200-R317) [[2]](diffhunk://#diff-93b3bc3289b5139d5efa7c8a4b5ac198e8a3ef31f5db7fb802316547225478fcR1-R13) [[3]](diffhunk://#diff-20f709ce18f64ec0573166db40b312cb796198c54c356f3d3c293eb2ef274961R1-R20) [[4]](diffhunk://#diff-2dbe8b6336b949101aa9a4a001dc4d1577724240ebdc9db12bec04129020858aR1-R29) [[5]](diffhunk://#diff-f7f203bd3ad0298d04ec353f738c8c36ab376133413ed9198a5c4d4211210803R1-R22)

### Enhancements to Accounts and Reserve Rules

* Added new methods in `AccountsClient` to manage sub-entity members (retrieving and re-inviting members) and reserve rules (creating, querying, retrieving details, and updating reserve rules), along with the necessary request and entity classes (`CreateReserveRuleRequest`, `UpdateReserveRuleRequest`, `Rolling`, `HoldingDuration`). [[1]](diffhunk://#diff-f0889b85d23f6c93a7d2091a429c4a30751a6980f43e6f452a76682fc50786d5R11-R13) [[2]](diffhunk://#diff-f0889b85d23f6c93a7d2091a429c4a30751a6980f43e6f452a76682fc50786d5R23-R24) [[3]](diffhunk://#diff-f0889b85d23f6c93a7d2091a429c4a30751a6980f43e6f452a76682fc50786d5R200-R317) [[4]](diffhunk://#diff-2dbe8b6336b949101aa9a4a001dc4d1577724240ebdc9db12bec04129020858aR1-R29) [[5]](diffhunk://#diff-f7f203bd3ad0298d04ec353f738c8c36ab376133413ed9198a5c4d4211210803R1-R22) [[6]](diffhunk://#diff-20f709ce18f64ec0573166db40b312cb796198c54c356f3d3c293eb2ef274961R1-R20) [[7]](diffhunk://#diff-93b3bc3289b5139d5efa7c8a4b5ac198e8a3ef31f5db7fb802316547225478fcR1-R13)

### Identity Verification Client Integrations

*  Added new clients for identity verification, AML screening, face authentication, ID document verification, and applicant management to the CheckoutApi, making these services directly accessible via the main API class, integrated new identity-related clients (`FaceAuthenticationClient`, `IdDocumentVerificationClient`, `IdentityVerificationClient`, `AmlScreeningClient`, `ApplicantsClient`) into `CheckoutApi`, with corresponding getter methods for each. [[1]](diffhunk://#diff-1af775e20600ee7ffa558a4c28fa34719642e2dd34a27da67c28e4b484b0224aR12-R16) [[2]](diffhunk://#diff-1af775e20600ee7ffa558a4c28fa34719642e2dd34a27da67c28e4b484b0224aR61-R70) [[3]](diffhunk://#diff-1af775e20600ee7ffa558a4c28fa34719642e2dd34a27da67c28e4b484b0224aR94-R98) [[4]](diffhunk://#diff-1af775e20600ee7ffa558a4c28fa34719642e2dd34a27da67c28e4b484b0224aR290-R329)

### Forward API Secret Management

* Added secret management functionality to the ForwardClient, including methods to create, list, update, and delete secrets. New request classes for creating and updating secrets, and a metadata entity for secret information, were also introduced.

### Codebase Organization

* Moved and renamed files in the `Forward` module from the `Requests` namespace to the `Entities` namespace for improved clarity and consistency. (`Headers.php`, `MethodType.php`, `NetworkToken.php`) [[1]](diffhunk://#diff-ba86d9312233e22309d01fb01dc7e18988efc2356d783578110a3c20e08c0559L3-R3) [[2]](diffhunk://#diff-95be5fec1c4a5f5aeb278fc571bbb03fbea1018a9aa264272fac2b09dc3274f6L3-R3) [[3]](diffhunk://#diff-426e9ba6ce5127647b2ac16f8ae7fed502ac204585ffdee039d00ba70c0b68d8L3-R3)This pull request introduces several new features and improvements to the Checkout SDK, focusing on enhanced support for sub-entity management, reserve rules, and identity verification, as well as improvements to the API client for more flexible request handling. It also includes some refactoring and namespace changes for better organization.

* Refactored several `ForwardClient` request-related classes to reside under the `Entities` namespace instead of `Requests`, improving code organization and clarity. [[1]](diffhunk://#diff-ba86d9312233e22309d01fb01dc7e18988efc2356d783578110a3c20e08c0559L3-R3) [[2]](diffhunk://#diff-95be5fec1c4a5f5aeb278fc571bbb03fbea1018a9aa264272fac2b09dc3274f6L3-R3) [[3]](diffhunk://#diff-426e9ba6ce5127647b2ac16f8ae7fed502ac204585ffdee039d00ba70c0b68d8L3-R3) [[4]](diffhunk://#diff-4cd6060d1e248df27bb64dfb11aa8a232facf08356fa54879e512861b3dfd181L3-R3) [[5]](diffhunk://#diff-c93561f88b04bee63cef1aa7ffc3ca35537986ee4cb4f41058ac0fd2bb65ee63L3-R3) [[6]](diffhunk://#diff-9153cba007069d77b917f2ae61f480f7a0d460f5348d1f7128ebd4601f7e55a1L3-R5)

These changes collectively add significant new functionality for managing sub-entity users and reserve rules, improve the flexibility of API requests, and enhance the SDK's support for identity verification workflows.

4.4.1

Toggle 4.4.1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Release 4.4.1 (#306)

- feat: update Hosted Payments Request with missing fields

4.4.0

Toggle 4.4.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Release 4.4.0 (#304)

- Enhance JsonSerializer to prevent escaping forward slashes in Google Pay signedMessage

4.3.0

Toggle 4.3.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Release 4.3.0 (#302)

- Fix file upload Content-Length for Dispute API

4.2.0

Toggle 4.2.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Release 4.2.0 - Merchant-specific DNS names support for access (#300)

4.1.0

Toggle 4.1.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Release 4.1.0 - New endpoint payments setups support (#298)

This release introduces significant new functionality to support payment setups in the Checkout API, including the addition of new client classes, data models, and enhancements to existing payment and industry data structures. The main focus is on expanding the API's support for more complex payment setup scenarios, such as customer details, industry-specific data, and a variety of payment methods.

4.0.3

Toggle 4.0.3's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Release 4.0.3 (#295)

- feat: add affiliate_id and affiliate_url to ProcessingSettings, type and sub_type to Product, and create ProductSubType class (#294)