add test mode to checkout
This commit is contained in:
@@ -24,13 +24,6 @@ from iugu import Credentials, Iugu, Order
|
||||
|
||||
logger = Logger(__name__)
|
||||
dyn = DynamoDBPersistenceLayer(ORDER_TABLE, dynamodb_client)
|
||||
iugu = Iugu(
|
||||
Credentials(
|
||||
IUGU_ACCOUNT_ID,
|
||||
IUGU_API_TOKEN,
|
||||
test_mode=IUGU_TEST_MODE,
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
@event_source(data_class=EventBridgeEvent)
|
||||
@@ -43,14 +36,29 @@ def lambda_handler(event: EventBridgeEvent, context: LambdaContext) -> bool:
|
||||
TransactKey(order_id)
|
||||
+ SortKey('ADDRESS', rename_key='address')
|
||||
+ SortKey('ITEMS', path_spec='items', rename_key='items')
|
||||
+ SortKey('CREDIT_CARD#PAYMENT_INTENT', rename_key='credit_card'),
|
||||
+ SortKey('CREDIT_CARD#PAYMENT_INTENT', rename_key='credit_card')
|
||||
+ SortKey(
|
||||
'METADATA#TEST_MODE',
|
||||
rename_key='iugu_api_token',
|
||||
path_spec='iugu_api_token',
|
||||
),
|
||||
flatten_top=False,
|
||||
)
|
||||
|
||||
api_token = r.get('iugu_api_token')
|
||||
test_mode = (api_token is not None) or IUGU_TEST_MODE
|
||||
credentials = Credentials(
|
||||
IUGU_ACCOUNT_ID,
|
||||
# Note: `api_token` can be set from the database
|
||||
api_token or IUGU_API_TOKEN,
|
||||
test_mode=test_mode,
|
||||
)
|
||||
|
||||
payment_method = new_image['payment_method']
|
||||
is_pix = payment_method == 'PIX'
|
||||
is_bank_slip = payment_method == 'BANK_SLIP'
|
||||
|
||||
iugu = Iugu(credentials)
|
||||
invoice = iugu.create_invoice(
|
||||
order=Order(
|
||||
address=r.get('address', {}),
|
||||
@@ -95,6 +103,15 @@ def lambda_handler(event: EventBridgeEvent, context: LambdaContext) -> bool:
|
||||
cond_expr='attribute_not_exists(sk)',
|
||||
)
|
||||
|
||||
if test_mode:
|
||||
transact.put(
|
||||
item={
|
||||
'id': order_id,
|
||||
'sk': 'SCHEDULE#SELF_DESTRUCTION',
|
||||
'ttl': ttl(start_dt=now_, days=14),
|
||||
'created_at': now_,
|
||||
}
|
||||
)
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
|
||||
Reference in New Issue
Block a user