ČSOB CZ payment modules
Source | Gateway documentation
Module for ČSOB CZ payment gateway
Instalation
npm i csobcz_payment_gateway
Configuration
Using environment variables
All keys are strings, for multiline env strings (certificates) check dotenv#rules.
variable name | description |
---|---|
GATEWAY_URL | payment gateway address |
MERCHANT_PRIVATE_KEY | merchant private key |
BANK_PUBLIC_KEY | bank public key |
CALLBACK_URL | url called by gateway after payment |
MERCHANT_ID | merchant id from gateway provider |
Alternatively using config:
const { CSOBPaymentModule } = require('csobcz_payment_gateway');
const gateway = new CSOBPaymentModule({
logging: ...,
gateUrl: ...,
privateKey: ...,
bankPublicKey: ...,
calbackUrl: ...,
merchantId: ...,
payloadTemplate: {}
})
Attribute logging
should be boolean
or function
used for debug info. By setting payloadTemplate
can by overwrited more init
method payload (see gateway config):
{
"merchantId": "...",
"payOperation":"payment",
"payMethod":"card",
"currency":"CZK",
"language":"CZ",
"returnUrl": "...",
"returnMethod":"POST"
}
Available methods
-
status(string payId)
- returns payment status -
init(json payload)
- payment init -
reverse(string payId)
- reverse payment with given payId -
close(string payId)
- close payment with given payId -
refund(string payId, int amount)
- refund payment with given payId, if amount specified given amount is refunded -
echo(string method)
- echo test, method is eitherGET
orPOST
(default) -
verifyResult(json payload)
- if success returnspayload
else returns error, payload is json returned from gateway callback.
Extra methods
-
payOrder(json order, boolean close, json options)
- wrapper for init and getRedirectUrl,close
params isclosePayment
value,options
are merged into request payload order example
{
"id": "order1",
"description": "Moje order",
"items": [{
"name": "Nákup: vasobchod.cz",
"quantity": 1,
"amount": 200,
"description": "Produkt 1"
}]
}
allowed is 1-2 items.
-
getRedirectUrl(string payId)
- returns gateway url for redirection
Return values/format
All methods returns Promise
when resolved is JSON
payload specified in
Gateway documentation only Extra methods returns custom payload. Reject is JS Error
.
-
payOrder
,getRedirectUrl
- returnedJSON
{
"url": "https://api.platebnibrana.csob.cz/api/v1.7/payment/process/MERCHANDID/PAYID/20180504105513/KZr8D0z%2FVYFlX2fy0bs2NTafv...."
}
Example usage
const gateway = require('csobcz_payment_gateway');
gateway.echo('GET').then(result => {
logger.log(result);
}).catch(e => {
logger.error(e);
});