Checkout Payment Extension
Extension Installation
Preliminary Works
The following information is requested from the provider for the brand-specific and production (live) environment.
API_URL
API_TOKEN
PROCESSING_CHANNEL_ID
A secret_key is generated with a minimum length of 41 characters. The generated key must be kept throughout the installation. An example command line to generate a random key:
openssl rand -base64 41
A hash_key must also be generated with a minimum length of 32 characters. The generated key must be kept throughout the installation.
Another hash key (WEBHOOK_HASH_KEY) must be generated using the same method.
Environment Variables
The extension installed to the relevant project in ACC must have the following environment variables. Environment variables can be entered before or after the deployment phase. As changes are made to the environment variables, the deployment process must be performed again.
Extension-specific
API_URL
URL received during the preliminary works phase (without a trailing slash at the end)
API_TOKEN
API Token received during the preliminary works phase
PROCESSING_CHANNEL_ID
Processing Channel ID received during the preliminary works phase
SOURCE_TYPE
The Source Type is used to determine the payment service that the Checkout gateway will utilize. Currently, the only supported value for SOURCE_TYPE is “knet”, which enables the integration with KNET services.
WEBHOOK_URL
https://{SHOP_URL}/orders/hooks/payment
WEBHOOK_HASH_KEY
The generated Webhook Hash Key during the preliminary works phase
Generic
SECRET_KEY
The generated secret key during the preliminary works phase
HASH_KEY
The generated hash key during the preliminary works phase
ADMIN_EMAIL
The e-mail address of the installer can be entered
ADMIN_PASSWORD
A newly created and extension-specific strong password
ADMIN_USERNAME
A username can be entered (example: ‘akinon’)
Omnitron Settings
The installed extension must also be defined to the project via Omnitron. This can be done on the Payment Options & Add/Edit POS Integration pages. After the settings are completed, it will be accessible under a new tab on the payment screen as it is a redirection type payment integration.
Payment Options
One payment option must be defined in Omnitron to be specific for the extension installed. Explanations on how the settings should be made at this stage are in the table below.
Payment Option
Redirect to bank
Payment Option Name
Checkout Extension
Payment Option Slug
checkout_extension
Config*
{"pos_slug":"checkout_extension"}
POS Integration
One POS integration must be defined in Omnitron to be specific for the extension installed. Explanations on how the settings should be made at this stage are in the table below.
Name
Checkout Extension
Slug
checkout_extension
Gateway
Extension
Resource URL
EXTENSION URL
Username
ADMIN_USERNAME value in environment variables
Password
ADMIN_PASSWORD value in environment variables
Hash Key
Random hash key
Payment Type
Sale
Webhook
Webhook registration should occur after the extension is created.
Webhook Docs for KNET via Checkout
Webhooks can be created, updated and deleted using Checkout Workflows. The extension only supports payment_pending
, payment_captured
events and webhook actions with HMACSHA256
signature method.
An example request is provided below for creating a webhook:
curl --location '{API_URL}/workflows' \
--header 'Authorization: Bearer {API_TOKEN}\
--header 'Content-Type: application/json' \
--data '{
"name": "Extension Test",
"active": true,
"conditions": [
{
"type": "event",
"events": {
"gateway": [
"payment_pending",
"payment_captured"
]
}
},
{
"type": "processing_channel",
"processing_channels": [
"{PROCESSING_CHANNEL_ID}"
]
}
],
"actions": [
{
"type": "webhook",
"url": "{EXTENSION_URL}/webhook",
"signature": {
"method": "HMACSHA256",
"key": "{WEBHOOK_HASH_KEY}"
}
}
]
}'
Additional Notes
Useful links:
Last updated
Was this helpful?