From 003e0890848d68b3df99533c7b8274da87fcfc94 Mon Sep 17 00:00:00 2001 From: david ruiz Date: Tue, 17 Mar 2026 15:48:24 +0100 Subject: [PATCH 1/3] updated oauth scopes, eliminated invalid "Payment Contexts" (in plural) scope. --- checkout_sdk/oauth_scopes.py | 54 ++++++++++++++++++++++++++++++------ 1 file changed, 45 insertions(+), 9 deletions(-) diff --git a/checkout_sdk/oauth_scopes.py b/checkout_sdk/oauth_scopes.py index b4d20ac..03cd224 100644 --- a/checkout_sdk/oauth_scopes.py +++ b/checkout_sdk/oauth_scopes.py @@ -7,7 +7,12 @@ class OAuthScopes(str, Enum): VAULT = 'vault' VAULT_INSTRUMENTS = 'vault:instruments' VAULT_TOKENIZATION = 'vault:tokenization' + VAULT_CUSTOMERS = 'vault:customers' + VAULT_REAL_TIME_ACCOUNT_UPDATER = 'vault:real-time-account-updater' + VAULT_APME_ENROLLMENT = 'vault:apme-enrollment' VAULT_CARD_METADATA = 'vault:card-metadata' + VAULT_NETWORK_TOKENS = 'vault:network-tokens' + GATEWAY = 'gateway' GATEWAY_PAYMENT = 'gateway:payment' GATEWAY_PAYMENT_DETAILS = 'gateway:payment-details' @@ -15,41 +20,72 @@ class OAuthScopes(str, Enum): GATEWAY_PAYMENT_VOIDS = 'gateway:payment-voids' GATEWAY_PAYMENT_CAPTURES = 'gateway:payment-captures' GATEWAY_PAYMENT_REFUNDS = 'gateway:payment-refunds' + GATEWAY_PAYMENT_CANCELLATIONS = 'gateway:payment-cancellations' + GATEWAY_PAYMENT_CONTEXTS = 'gateway:payment-contexts' + FX = 'fx' PAYOUTS_BANK_DETAILS = 'payouts:bank-details' SESSIONS_APP = 'sessions:app' SESSIONS_BROWSER = 'sessions:browser' + DISPUTES = 'disputes' DISPUTES_VIEW = 'disputes:view' DISPUTES_PROVIDE_EVIDENCE = 'disputes:provide-evidence' DISPUTES_ACCEPT = 'disputes:accept' + DISPUTES_SCHEME_FILES = 'disputes:scheme-files' + MARKETPLACE = 'marketplace' ACCOUNTS = 'accounts' + + TRANSFERS = 'transfers' + TRANSFERS_CREATE = 'transfers:create' + TRANSFERS_VIEW = 'transfers:view' + FLOW = 'flow' FLOW_WORKFLOWS = 'flow:workflows' FLOW_EVENTS = 'flow:events' + FLOW_REFLOW = 'flow:reflow' + FILES = 'files' FILES_RETRIEVE = 'files:retrieve' FILES_UPLOAD = 'files:upload' FILES_DOWNLOAD = 'files:download' - TRANSFERS = 'transfers' - TRANSFERS_CREATE = 'transfers:create' - TRANSFERS_VIEW = 'transfers:view' + BALANCES = 'balances' BALANCES_VIEW = 'balances:view' + + MIDDLEWARE = 'middleware' + MIDDLEWARE_MERCHANTS_SECRET = 'middleware:merchants-secret' + MIDDLEWARE_MERCHANTS_PUBLIC = 'middleware:merchants-public' + REPORTS = 'reports' REPORTS_VIEW = 'reports:view' + FINANCIAL_ACTIONS = 'financial-actions' FINANCIAL_ACTIONS_VIEW = 'financial-actions:view' - - MIDDLEWARE = 'middleware' - MIDDLEWARE_MERCHANTS_SECRET = 'middleware:merchants-secret' - MIDDLEWARE_MERCHANTS_PUBLIC = 'middleware:merchants-public' - ISSUING_CLIENT = 'issuing:client' + + CARD_MANAGEMENT = 'card-management' + ISSUING_CARD_MGMT = 'issuing:card-mgmt' + ISSUING_CARD_MANAGEMENT_READ = 'issuing:card-management-read' + ISSUING_CARD_MANAGEMENT_WRITE = 'issuing:card-management-write' + ISSUING_CLIENT = 'issuing:client' ISSUING_CONTROLS_READ = 'issuing:controls-read' ISSUING_CONTROLS_WRITE = 'issuing:controls-write' + ISSUING_TRANSACTIONS_READ = 'issuing:transactions-read' + ISSUING_TRANSACTIONS_WRITE = 'issuing:transactions-write' + ISSUING_DISPUTES = 'issuing-disputes' + ISSUING_DISPUTES_READ = 'issuing:disputes-read' + ISSUING_DISPUTES_WRITE = 'issuing:disputes-write' + + TRANSACTIONS = 'transactions' + + IDENTITY_VERIFICATION = 'identity-verification' - PAYMENT_CONTEXTS = 'Payment Contexts' + PAYMENT_CONTEXT = 'Payment Context' FORWARD = 'forward' + FORWARD_SECRETS = 'forward:secrets' + + PAYMENT_SESSIONS = 'payment-sessions' + PAYMENTS_SEARCH = 'payments:search' From 09a5145052b6e4a49805bfa6928d791f72e63f31 Mon Sep 17 00:00:00 2001 From: david ruiz Date: Tue, 17 Mar 2026 15:52:30 +0100 Subject: [PATCH 2/3] Eliminated empty lines --- checkout_sdk/oauth_scopes.py | 18 ------------------ 1 file changed, 18 deletions(-) diff --git a/checkout_sdk/oauth_scopes.py b/checkout_sdk/oauth_scopes.py index 03cd224..d2d91ed 100644 --- a/checkout_sdk/oauth_scopes.py +++ b/checkout_sdk/oauth_scopes.py @@ -12,7 +12,6 @@ class OAuthScopes(str, Enum): VAULT_APME_ENROLLMENT = 'vault:apme-enrollment' VAULT_CARD_METADATA = 'vault:card-metadata' VAULT_NETWORK_TOKENS = 'vault:network-tokens' - GATEWAY = 'gateway' GATEWAY_PAYMENT = 'gateway:payment' GATEWAY_PAYMENT_DETAILS = 'gateway:payment-details' @@ -22,50 +21,38 @@ class OAuthScopes(str, Enum): GATEWAY_PAYMENT_REFUNDS = 'gateway:payment-refunds' GATEWAY_PAYMENT_CANCELLATIONS = 'gateway:payment-cancellations' GATEWAY_PAYMENT_CONTEXTS = 'gateway:payment-contexts' - FX = 'fx' PAYOUTS_BANK_DETAILS = 'payouts:bank-details' SESSIONS_APP = 'sessions:app' SESSIONS_BROWSER = 'sessions:browser' - DISPUTES = 'disputes' DISPUTES_VIEW = 'disputes:view' DISPUTES_PROVIDE_EVIDENCE = 'disputes:provide-evidence' DISPUTES_ACCEPT = 'disputes:accept' DISPUTES_SCHEME_FILES = 'disputes:scheme-files' - MARKETPLACE = 'marketplace' ACCOUNTS = 'accounts' - TRANSFERS = 'transfers' TRANSFERS_CREATE = 'transfers:create' TRANSFERS_VIEW = 'transfers:view' - FLOW = 'flow' FLOW_WORKFLOWS = 'flow:workflows' FLOW_EVENTS = 'flow:events' FLOW_REFLOW = 'flow:reflow' - FILES = 'files' FILES_RETRIEVE = 'files:retrieve' FILES_UPLOAD = 'files:upload' FILES_DOWNLOAD = 'files:download' - BALANCES = 'balances' BALANCES_VIEW = 'balances:view' - MIDDLEWARE = 'middleware' MIDDLEWARE_MERCHANTS_SECRET = 'middleware:merchants-secret' MIDDLEWARE_MERCHANTS_PUBLIC = 'middleware:merchants-public' - REPORTS = 'reports' REPORTS_VIEW = 'reports:view' - FINANCIAL_ACTIONS = 'financial-actions' FINANCIAL_ACTIONS_VIEW = 'financial-actions:view' - CARD_MANAGEMENT = 'card-management' - ISSUING_CARD_MGMT = 'issuing:card-mgmt' ISSUING_CARD_MANAGEMENT_READ = 'issuing:card-management-read' ISSUING_CARD_MANAGEMENT_WRITE = 'issuing:card-management-write' @@ -77,15 +64,10 @@ class OAuthScopes(str, Enum): ISSUING_DISPUTES = 'issuing-disputes' ISSUING_DISPUTES_READ = 'issuing:disputes-read' ISSUING_DISPUTES_WRITE = 'issuing:disputes-write' - TRANSACTIONS = 'transactions' - IDENTITY_VERIFICATION = 'identity-verification' - PAYMENT_CONTEXT = 'Payment Context' - FORWARD = 'forward' FORWARD_SECRETS = 'forward:secrets' - PAYMENT_SESSIONS = 'payment-sessions' PAYMENTS_SEARCH = 'payments:search' From c250028a8df212b1df18a01caa49ef2693ea199c Mon Sep 17 00:00:00 2001 From: david ruiz Date: Tue, 17 Mar 2026 17:31:05 +0100 Subject: [PATCH 3/3] Test Payment type "regular" adjustment --- tests/payments/setups/payment_setups_integration_test.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/payments/setups/payment_setups_integration_test.py b/tests/payments/setups/payment_setups_integration_test.py index 241b823..aa523a5 100644 --- a/tests/payments/setups/payment_setups_integration_test.py +++ b/tests/payments/setups/payment_setups_integration_test.py @@ -35,7 +35,7 @@ def test_should_create_payment_setup(default_api): assert response.processing_channel_id == request.processing_channel_id assert response.amount == request.amount assert response.currency == request.currency - assert response.payment_type == request.payment_type + assert str(response.payment_type).lower() == request.payment_type.lower() assert response.reference == request.reference assert response.description == request.description @@ -89,7 +89,7 @@ def test_should_get_payment_setup(default_api): assert response.processing_channel_id == create_request.processing_channel_id assert response.amount == create_request.amount assert response.currency == create_request.currency - assert response.payment_type == create_request.payment_type + assert str(response.payment_type).lower() == create_request.payment_type.lower() assert response.reference == create_request.reference assert response.description == create_request.description