Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 0 additions & 37 deletions craftgate/adapter/bkm_express_payment_adapter.py
Original file line number Diff line number Diff line change
@@ -1,52 +1,15 @@
from craftgate.adapter.base_adapter import BaseAdapter
from craftgate.net.base_http_client import BaseHttpClient
from craftgate.request.complete_bkm_express_request import CompleteBkmExpressRequest
from craftgate.request.generate_bkm_express_token import BkmExpressGenerateTokenRequest
from craftgate.request.init_bkm_express_request import InitBkmExpressRequest
from craftgate.request_options import RequestOptions
from craftgate.response.generate_bkm_express_token_response import BkmExpressGenerateTokenResponse
from craftgate.response.init_bkm_express_response import InitBkmExpressResponse
from craftgate.response.payment_response import PaymentResponse


class BkmExpressPaymentAdapter(BaseAdapter):
def __init__(self, request_options: RequestOptions) -> None:
super(BkmExpressPaymentAdapter, self).__init__(request_options)
self._http_client = BaseHttpClient()

def init(self, request: InitBkmExpressRequest) -> InitBkmExpressResponse:
path = "/payment/v1/bkm-express/init"
headers = self._create_headers(request, path)
return self._http_client.request(
method="POST",
url=self.request_options.base_url + path,
headers=headers,
body=request,
response_type=InitBkmExpressResponse
)

def complete(self, request: CompleteBkmExpressRequest) -> PaymentResponse:
path = "/payment/v1/bkm-express/complete"
headers = self._create_headers(request, path)
return self._http_client.request(
method="POST",
url=self.request_options.base_url + path,
headers=headers,
body=request,
response_type=PaymentResponse
)

def retrieve_payment_by_token(self, token: str) -> PaymentResponse:
path = "/payment/v1/bkm-express/{}".format(token)
headers = self._create_headers(None, path)
return self._http_client.request(
method="GET",
url=self.request_options.base_url + path,
headers=headers,
body=None,
response_type=PaymentResponse
)

def generate_token(self, request: BkmExpressGenerateTokenRequest) -> BkmExpressGenerateTokenResponse:
path = "/payment/v2/bkm-express/generate-token"
headers = self._create_headers(request, path)
Expand Down
1 change: 0 additions & 1 deletion craftgate/model/payment_authentication_type.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,3 @@
class PaymentAuthenticationType(str, Enum):
THREE_DS = "THREE_DS"
NON_THREE_DS = "NON_THREE_DS"
BKM_EXPRESS = "BKM_EXPRESS"
2 changes: 0 additions & 2 deletions craftgate/request/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
from .clone_card_request import CloneCardRequest
from .common import BaseRequest, HeaderOptions
from .complete_apm_payment_request import CompleteApmPaymentRequest
from .complete_bkm_express_request import CompleteBkmExpressRequest
from .complete_pos_apm_payment_request import CompletePosApmPaymentRequest
from .complete_three_ds_payment_request import CompleteThreeDSPaymentRequest
from .create_apm_payment_request import CreateApmPaymentRequest
Expand Down Expand Up @@ -39,7 +38,6 @@
from .fraud_value_list_request import FraudValueListRequest
from .init_apm_deposit_payment_request import InitApmDepositPaymentRequest
from .init_apm_payment_request import InitApmPaymentRequest
from .init_bkm_express_request import InitBkmExpressRequest
from .init_bnpl_payment_request import InitBnplPaymentRequest
from .init_checkout_card_verify_request import InitCheckoutCardVerifyRequest
from .init_checkout_payment_request import InitCheckoutPaymentRequest
Expand Down
17 changes: 0 additions & 17 deletions craftgate/request/complete_bkm_express_request.py

This file was deleted.

34 changes: 0 additions & 34 deletions craftgate/request/init_bkm_express_request.py

This file was deleted.

1 change: 0 additions & 1 deletion craftgate/response/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@
from .fraud_rule_response import FraudRuleResponse
from .fraud_value_list_response import FraudValueListResponse
from .fund_transfer_deposit_payment_response import FundTransferDepositPaymentResponse
from .init_bkm_express_response import InitBkmExpressResponse
from .init_bnpl_payment_response import InitBnplPaymentResponse
from .init_checkout_card_verify_response import InitCheckoutCardVerifyResponse
from .bnpl_limit_inquiry_response import BnplLimitInquiryResponse
Expand Down
13 changes: 0 additions & 13 deletions craftgate/response/init_bkm_express_response.py

This file was deleted.

49 changes: 0 additions & 49 deletions tests/test_bkm_express_payment_sample.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,8 @@
# tests/test_bkm_express_payment_sample.py
import os
import unittest
from decimal import Decimal

from craftgate import Craftgate, RequestOptions
from craftgate.model import Currency, PaymentGroup
from craftgate.request import CompleteBkmExpressRequest, InitBkmExpressRequest
from craftgate.request.dto import PaymentItem
from craftgate.request.generate_bkm_express_token import BkmExpressGenerateTokenRequest


Expand All @@ -24,51 +20,6 @@ def setUpClass(cls):
)
cls.bkm_express_payment = Craftgate(options).bkm_express_payment()

def test_init_bkm_express(self):
items = [
PaymentItem(name="Item 1", price=Decimal("30"), external_id="123d1297-839e-4bd6-a13b-4be31a6e12a8"),
PaymentItem(name="Item 2", price=Decimal("50"), external_id="789d1297-839e-4bd6-a13b-4be31a6e13f7"),
PaymentItem(name="Item 3", price=Decimal("20"), external_id="3a1d1297-839e-4bd6-a13b-4be31a6e18e6"),
]

request = InitBkmExpressRequest(
price=Decimal("100"),
paid_price=Decimal("100"),
conversation_id="456d1297-908e-4bd6-a13b-4be31a6e47d5",
currency=Currency.TRY,
payment_group=PaymentGroup.LISTING_OR_SUBSCRIPTION,
items=items
)

response = self.bkm_express_payment.init(request)

print(response)
self.assertIsNotNone(response)
self.assertIsNotNone(response.token)
self.assertIsNotNone(response.path)
self.assertIsNotNone(response.id)

def test_complete_bkm_express(self):
ticket_id = os.environ.get("BKM_TICKET_ID", "ce6d93c3-b399-406d-8efc-fdba0b37768c")

request = CompleteBkmExpressRequest(
status=True,
message="İşlem başarılı",
ticket_id=ticket_id
)

response = self.bkm_express_payment.complete(request)
print(response)
self.assertIsNotNone(response)
self.assertIsNotNone(response.order_id)

def test_retrieve_payment_by_token(self):
token = os.environ.get("BKM_TOKEN", "cb90071c-1f2c-4fb7-9049-c5f13f9f7286")

response = self.bkm_express_payment.retrieve_payment_by_token(token)
print(response)
self.assertIsNotNone(response)

def test_generate_token(self):
request = BkmExpressGenerateTokenRequest(
gsm_number="5350000000",
Expand Down