This manual covers available methods for implementing 3D Secure (3DS) using Pelecard’s endpoints, with step-by-step integration flows.
The appropriate 3DS strategy depends on the business type:
| Code | Description |
|---|---|
| J2 | Card check / Token save. No transaction made. |
| J5 | Authorization (amount hold). No debit yet. |
| J4 | Finalized debit transaction. |
Token = encrypted value of credit card number + expiry date.
3DS via Iframe/Redirect Activated automatically on submit. Most commonly used. Enabled via parameter or default Pelecard setting.
3DS via API Manual 3DS authentication via REST API. Used when J2/J5 actions are made without knowing the full transaction amount. Token is saved for later processing.
(First step is always an Iframe)
| Flow | Description |
|---|---|
| J4 | Simple debit with 3DS. Completed after Iframe closes. |
| J5 → J4 | Authorization with 3DS in Iframe. Completed via REST API using J5 response parameters. |
| J2 → J4 | Card check + token creation. Completed via REST API using J2 response parameters. |
| J2 → J5 → J4 | Card check + token. Then J5 authorization via API. Completed using J5 response parameters. |
⚠️ If J2/J5 is Step 1 and the amount is unknown, use
Initiate3DSAuthenticationProcess.
Method URL: https://gateway21.pelecard.biz/PaymentGW/init
| Action | 3DS Enabled | 3DS Disabled |
|---|---|---|
| J2 | ✅ | ✅ |
| J5 | ✅ | ✅ |
| J4 | ✅ | — |
{
"terminal": "",
"user": "",
"password": "",
"ActionType": "J2",
"Total": "500",
"currency": "376",
"GoodURL": "https://gateway21.pelecard.biz/sandbox/landingpage",
"CardHolderName": "must",
"ThreeDSecure": {
"Initiate": "True"
}
}
Notes:
Total with ISO 4217 currency code.CardHolderName must be set to "must".Eci, XID, Cavv from response for later use.
{
"terminal": "",
"user": "",
"password": "",
"ActionType": "J2",
"GoodURL": "https://gateway21.pelecard.biz/sandbox/landingpage"
}
Notes:
Total or Currency required — J2 only validates card.CardHolderName not required.
{
"terminal": "",
"user": "",
"password": "",
"ActionType": "J5",
"Currency": "1",
"Total": "12000",
"GoodURL": "https://gateway21.pelecard.biz/sandbox/landingpage",
"CardHolderName": "must",
"ThreeDSecure": {
"Initiate": "True"
}
}
Notes:
Initiate3DSAuthenticationProcess instead.Total and Currency are required for J5.
{
"terminal": "",
"user": "",
"password": "",
"ActionType": "J5",
"Currency": "1",
"Total": "100",
"GoodURL": "https://gateway21.pelecard.biz/sandbox/landingpage"
}
{
"terminal": "",
"user": "",
"password": "",
"ActionType": "J4",
"Currency": "1",
"Total": "12000",
"GoodURL": "https://gateway21.pelecard.biz/sandbox/landingpage",
"CardHolderName": "must",
"ThreeDSecure": {
"Initiate": "True"
}
}
Notes:
Base URL: https://gateway21.pelecard.biz/services/[Method-Name]
A 3DS authentication must have been completed beforehand. Send
eci,xid,cavvfrom the authentication response.
| Method | URL | Description |
|---|---|---|
| AuthorizeCreditCard | /services/AuthorizeCreditCard |
Authorize in 1 payment |
| AuthorizePaymentsType | /services/AuthorizePaymentsType |
Authorize in installments |
| AuthorizeCreditType | /services/AuthorizeCreditType |
Authorize in credit payments |
{
"terminalNumber": "", "user": "", "password": "",
"shopNumber": "", "creditCard": "", "creditCardDateMmYy": "",
"Token": "", "total": "100", "createtoken": "",
"currency": "1", "cvv2": "", "id": "", "paramX": "",
"eci": "", "xid": "", "cavv": ""
}
{
"terminalNumber": "", "user": "", "password": "",
"shopNumber": "", "creditCard": "", "creditCardDateMmYy": "",
"token": "", "total": "100", "currency": "1",
"paymentsNumber": "2", "firstPayment": "",
"cvv2": "", "id": "", "paramX": "",
"eci": "", "xid": "", "cavv": ""
}
{
"terminalNumber": "", "user": "", "password": "",
"shopNumber": "", "creditCard": "", "creditCardDateMmYy": "",
"token": "", "total": "100", "currency": "1",
"paymentsNumber": "2", "cvv2": "", "id": "", "paramX": "",
"eci": "", "xid": "", "cavv": ""
}
| Method | URL | Description |
|---|---|---|
| DebitRegularType | /services/DebitRegularType |
Debit, 1 payment |
| DebitPaymentsType | /services/DebitPaymentsType |
Debit in installments |
| DebitCreditType | /services/DebitCreditType |
Debit in credit payments |
| CompleteDebitByUid | /services/CompleteDebitByUid |
Completion after J5 (by UID) |
Rules:
eci, xid, cavv.CompleteDebitByUID.
{
"terminalNumber": "", "user": "", "password": "",
"shopNumber": "", "creditCard": "", "creditCardDateMmYy": "",
"token": "", "total": "100", "currency": "1",
"cvv2": "", "id": "", "authorizationNumber": "",
"paramX": "test", "QAResultStatus": "",
"eci": "", "xid": "", "cavv": ""
}
Same as above + paymentsNumber, firstPayment
Same as above + paymentsNumber
{
"terminalNumber": "", "user": "", "password": "",
"Uid": "", "NewAmount": "", "NewParamX": "",
"debitTrxId": "", "NewTerminalNumber": ""
}
⚠️ Returns a different response than the other debit methods.
{
"StatusCode": "000",
"ErrorMessage": "operation success",
"ResultData": {
"PelecardTransactionId": "2400278028",
"VoucherId": "51-011-002",
"ShvaResult": "000",
"JParam": "4",
"CreditCardNumber": "455743******3381",
"CreditCardExpDate": "0426",
"DebitTotal": "1002",
"DebitApproveNumber": "0874329",
"DebitCurrency": "1",
"Token": "",
"Uid": "25050416265408825770330",
"eci": "", "xid": "", "cavv": "",
"Terminal": "0882577012",
"RRN": "512416874329"
}
}
URL: https://gateway21.pelecard.biz/services/Initiate3DSAuthenticationProcess
Used when the transaction amount is unknown at the time of J2/J5.
{
"terminalNumber": "", "user": "", "password": "",
"RedirectUrl": "https://gateway20.pelecard.biz/Sandbox/LandingPage3DS",
"BillingCurrencyCode": "ILS",
"BillingAmount": "500",
"CreditCardExpirationMonth": "04",
"CreditCardExpirationYear": "23",
"CreditCardNumber": "",
"Token": "",
"CardHolderName": "Israel Israeli",
"CardHolderEmail": "username@domain.co.il",
"CardHolderPhone": "", "CardHolderAddress": "",
"CardHolderCity": "", "CardHolderPostalCode": "",
"CardHolderCountry": "",
"HttpAcceptHeader": "*/*",
"BrowserScreenPixelsHeight": "600",
"BrowserScreenPixelsWidth": "800",
"BrowserLanguage": "he-IL",
"BrowserScreenBitDepth": "8",
"EndUserIPAddress": "127.0.0.1",
"UserAgent": "Mozilla/5.0 ...",
"TransactionFreeTextDescription": ""
}
{
"StatusCode": "000",
"ErrorMessage": "operation success",
"ResultData": {
"RequestId": "7005413",
"ChallengeRequired": true,
"ChallengeUrl": "https://gateway21.pelecard.biz/PaymentGW/ShvaThreeDSIndex?...",
"ProcessResultCode": "06",
"TranStatus": "C",
"XID": "402744a3-3fed-45b9-9595-f6f7068442f1",
"ServerTransID": "...",
"Version": "2.2.0"
}
}
TranStatus values:
| Value | Meaning |
|---|---|
Y |
Authentication successful — save Eci, XID, Cavv |
C |
Challenge required — redirect customer to ChallengeUrl |
| Other | Authentication failed |
Save
RequestIdfor use inGet3dsData.
Used to poll the status of an ongoing 3DS authentication.
{
"terminalNumber": "", "user": "", "password": "",
"requestid": ""
}
{
"StatusCode": "000",
"ErrorMessage": "operation success",
"ResultData": {
"RequestId": "7005413",
"ChallengeRequired": false,
"ProcessResultCode": "-38",
"Eci": "00",
"XID": "402744a3-3fed-45b9-9595-f6f7068442f1",
"Version": "2.2.0"
}
}
Note: Poll this endpoint every few seconds to get the authentication result quickly and redirect the user to the appropriate Good/Error page.