curl --request POST \
--url https://test-api.ext-uat1-sandbox.mycore.enfuce.com/test-api/v1/authorizations/stip \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"card": {
"id": "abc123"
},
"merchantData": {
"id": "123456789012345",
"name": "Coffee Shop",
"city": "Helsinki",
"country": "FIN",
"categoryCode": "5812",
"acquirerId": "12345678901",
"acquirerCountry": "FIN",
"terminalId": "TERM0001"
},
"transactionData": {
"amount": {
"value": 25,
"currency": "EUR"
},
"type": "RETAIL",
"cardEntryMode": "CONTACTLESS"
},
"decision": "APPROVAL",
"initiator": "SCHEME_INITIATED"
}
'import requests
url = "https://test-api.ext-uat1-sandbox.mycore.enfuce.com/test-api/v1/authorizations/stip"
payload = {
"card": { "id": "abc123" },
"merchantData": {
"id": "123456789012345",
"name": "Coffee Shop",
"city": "Helsinki",
"country": "FIN",
"categoryCode": "5812",
"acquirerId": "12345678901",
"acquirerCountry": "FIN",
"terminalId": "TERM0001"
},
"transactionData": {
"amount": {
"value": 25,
"currency": "EUR"
},
"type": "RETAIL",
"cardEntryMode": "CONTACTLESS"
},
"decision": "APPROVAL",
"initiator": "SCHEME_INITIATED"
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
card: {id: 'abc123'},
merchantData: {
id: '123456789012345',
name: 'Coffee Shop',
city: 'Helsinki',
country: 'FIN',
categoryCode: '5812',
acquirerId: '12345678901',
acquirerCountry: 'FIN',
terminalId: 'TERM0001'
},
transactionData: {
amount: {value: 25, currency: 'EUR'},
type: 'RETAIL',
cardEntryMode: 'CONTACTLESS'
},
decision: 'APPROVAL',
initiator: 'SCHEME_INITIATED'
})
};
fetch('https://test-api.ext-uat1-sandbox.mycore.enfuce.com/test-api/v1/authorizations/stip', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://test-api.ext-uat1-sandbox.mycore.enfuce.com/test-api/v1/authorizations/stip",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'card' => [
'id' => 'abc123'
],
'merchantData' => [
'id' => '123456789012345',
'name' => 'Coffee Shop',
'city' => 'Helsinki',
'country' => 'FIN',
'categoryCode' => '5812',
'acquirerId' => '12345678901',
'acquirerCountry' => 'FIN',
'terminalId' => 'TERM0001'
],
'transactionData' => [
'amount' => [
'value' => 25,
'currency' => 'EUR'
],
'type' => 'RETAIL',
'cardEntryMode' => 'CONTACTLESS'
],
'decision' => 'APPROVAL',
'initiator' => 'SCHEME_INITIATED'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://test-api.ext-uat1-sandbox.mycore.enfuce.com/test-api/v1/authorizations/stip"
payload := strings.NewReader("{\n \"card\": {\n \"id\": \"abc123\"\n },\n \"merchantData\": {\n \"id\": \"123456789012345\",\n \"name\": \"Coffee Shop\",\n \"city\": \"Helsinki\",\n \"country\": \"FIN\",\n \"categoryCode\": \"5812\",\n \"acquirerId\": \"12345678901\",\n \"acquirerCountry\": \"FIN\",\n \"terminalId\": \"TERM0001\"\n },\n \"transactionData\": {\n \"amount\": {\n \"value\": 25,\n \"currency\": \"EUR\"\n },\n \"type\": \"RETAIL\",\n \"cardEntryMode\": \"CONTACTLESS\"\n },\n \"decision\": \"APPROVAL\",\n \"initiator\": \"SCHEME_INITIATED\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://test-api.ext-uat1-sandbox.mycore.enfuce.com/test-api/v1/authorizations/stip")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"card\": {\n \"id\": \"abc123\"\n },\n \"merchantData\": {\n \"id\": \"123456789012345\",\n \"name\": \"Coffee Shop\",\n \"city\": \"Helsinki\",\n \"country\": \"FIN\",\n \"categoryCode\": \"5812\",\n \"acquirerId\": \"12345678901\",\n \"acquirerCountry\": \"FIN\",\n \"terminalId\": \"TERM0001\"\n },\n \"transactionData\": {\n \"amount\": {\n \"value\": 25,\n \"currency\": \"EUR\"\n },\n \"type\": \"RETAIL\",\n \"cardEntryMode\": \"CONTACTLESS\"\n },\n \"decision\": \"APPROVAL\",\n \"initiator\": \"SCHEME_INITIATED\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://test-api.ext-uat1-sandbox.mycore.enfuce.com/test-api/v1/authorizations/stip")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"card\": {\n \"id\": \"abc123\"\n },\n \"merchantData\": {\n \"id\": \"123456789012345\",\n \"name\": \"Coffee Shop\",\n \"city\": \"Helsinki\",\n \"country\": \"FIN\",\n \"categoryCode\": \"5812\",\n \"acquirerId\": \"12345678901\",\n \"acquirerCountry\": \"FIN\",\n \"terminalId\": \"TERM0001\"\n },\n \"transactionData\": {\n \"amount\": {\n \"value\": 25,\n \"currency\": \"EUR\"\n },\n \"type\": \"RETAIL\",\n \"cardEntryMode\": \"CONTACTLESS\"\n },\n \"decision\": \"APPROVAL\",\n \"initiator\": \"SCHEME_INITIATED\"\n}"
response = http.request(request)
puts response.read_body{
"metadata": {
"mti": "0110",
"id": "<string>"
},
"transactionData": {
"authResponseCode": "00",
"retrievalReferenceNumber": "<string>"
}
}{
"code": "<string>",
"message": "<string>",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"errorCode": "<string>",
"errorType": "STATIC_VALIDATION_ERROR",
"errorReason": "<string>",
"timestamp": "2023-11-07T05:31:56Z"
}{
"code": "<string>",
"message": "<string>",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"errorCode": "<string>",
"errorType": "STATIC_VALIDATION_ERROR",
"errorReason": "<string>",
"timestamp": "2023-11-07T05:31:56Z"
}{
"code": "<string>",
"message": "<string>",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"errorCode": "<string>",
"errorType": "STATIC_VALIDATION_ERROR",
"errorReason": "<string>",
"timestamp": "2023-11-07T05:31:56Z"
}{
"code": "<string>",
"message": "<string>",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"errorCode": "<string>",
"errorType": "STATIC_VALIDATION_ERROR",
"errorReason": "<string>",
"timestamp": "2023-11-07T05:31:56Z"
}{
"code": "<string>",
"message": "<string>",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"errorCode": "<string>",
"errorType": "STATIC_VALIDATION_ERROR",
"errorReason": "<string>",
"timestamp": "2023-11-07T05:31:56Z"
}Send a Stand-In Processing (STIP) Transaction
Send a request to this endpoint to simulate a STIP transaction. The card Scheme processes the authorisation request on behalf of the processor, when the processor is unavailable.
The decision parameter denotes the Scheme response:
APPROVAL— The Scheme approved the transaction.DECLINE— The Scheme declined the transaction.
The initiator parameter denotes who triggered the STIP:
SCHEME_INITIATED— the Scheme initiated the stand-in processing request.CUSTOMER_INITIATED— the Customer initiated the stand-in processing request.
The authorisation response code (ISO 8583 DE39) reported in the transaction event follows from the decision and the initiator, because a STIP decision is made by the Scheme and not by the issuer:
| decision | initiator | Visa | Mastercard |
|---|---|---|---|
APPROVAL | any | 00 | 00 |
DECLINE | SCHEME_INITIATED | N0 | 96 |
DECLINE | CUSTOMER_INITIATED | N0 | 91 |
curl --request POST \
--url https://test-api.ext-uat1-sandbox.mycore.enfuce.com/test-api/v1/authorizations/stip \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"card": {
"id": "abc123"
},
"merchantData": {
"id": "123456789012345",
"name": "Coffee Shop",
"city": "Helsinki",
"country": "FIN",
"categoryCode": "5812",
"acquirerId": "12345678901",
"acquirerCountry": "FIN",
"terminalId": "TERM0001"
},
"transactionData": {
"amount": {
"value": 25,
"currency": "EUR"
},
"type": "RETAIL",
"cardEntryMode": "CONTACTLESS"
},
"decision": "APPROVAL",
"initiator": "SCHEME_INITIATED"
}
'import requests
url = "https://test-api.ext-uat1-sandbox.mycore.enfuce.com/test-api/v1/authorizations/stip"
payload = {
"card": { "id": "abc123" },
"merchantData": {
"id": "123456789012345",
"name": "Coffee Shop",
"city": "Helsinki",
"country": "FIN",
"categoryCode": "5812",
"acquirerId": "12345678901",
"acquirerCountry": "FIN",
"terminalId": "TERM0001"
},
"transactionData": {
"amount": {
"value": 25,
"currency": "EUR"
},
"type": "RETAIL",
"cardEntryMode": "CONTACTLESS"
},
"decision": "APPROVAL",
"initiator": "SCHEME_INITIATED"
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
card: {id: 'abc123'},
merchantData: {
id: '123456789012345',
name: 'Coffee Shop',
city: 'Helsinki',
country: 'FIN',
categoryCode: '5812',
acquirerId: '12345678901',
acquirerCountry: 'FIN',
terminalId: 'TERM0001'
},
transactionData: {
amount: {value: 25, currency: 'EUR'},
type: 'RETAIL',
cardEntryMode: 'CONTACTLESS'
},
decision: 'APPROVAL',
initiator: 'SCHEME_INITIATED'
})
};
fetch('https://test-api.ext-uat1-sandbox.mycore.enfuce.com/test-api/v1/authorizations/stip', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://test-api.ext-uat1-sandbox.mycore.enfuce.com/test-api/v1/authorizations/stip",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'card' => [
'id' => 'abc123'
],
'merchantData' => [
'id' => '123456789012345',
'name' => 'Coffee Shop',
'city' => 'Helsinki',
'country' => 'FIN',
'categoryCode' => '5812',
'acquirerId' => '12345678901',
'acquirerCountry' => 'FIN',
'terminalId' => 'TERM0001'
],
'transactionData' => [
'amount' => [
'value' => 25,
'currency' => 'EUR'
],
'type' => 'RETAIL',
'cardEntryMode' => 'CONTACTLESS'
],
'decision' => 'APPROVAL',
'initiator' => 'SCHEME_INITIATED'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://test-api.ext-uat1-sandbox.mycore.enfuce.com/test-api/v1/authorizations/stip"
payload := strings.NewReader("{\n \"card\": {\n \"id\": \"abc123\"\n },\n \"merchantData\": {\n \"id\": \"123456789012345\",\n \"name\": \"Coffee Shop\",\n \"city\": \"Helsinki\",\n \"country\": \"FIN\",\n \"categoryCode\": \"5812\",\n \"acquirerId\": \"12345678901\",\n \"acquirerCountry\": \"FIN\",\n \"terminalId\": \"TERM0001\"\n },\n \"transactionData\": {\n \"amount\": {\n \"value\": 25,\n \"currency\": \"EUR\"\n },\n \"type\": \"RETAIL\",\n \"cardEntryMode\": \"CONTACTLESS\"\n },\n \"decision\": \"APPROVAL\",\n \"initiator\": \"SCHEME_INITIATED\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://test-api.ext-uat1-sandbox.mycore.enfuce.com/test-api/v1/authorizations/stip")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"card\": {\n \"id\": \"abc123\"\n },\n \"merchantData\": {\n \"id\": \"123456789012345\",\n \"name\": \"Coffee Shop\",\n \"city\": \"Helsinki\",\n \"country\": \"FIN\",\n \"categoryCode\": \"5812\",\n \"acquirerId\": \"12345678901\",\n \"acquirerCountry\": \"FIN\",\n \"terminalId\": \"TERM0001\"\n },\n \"transactionData\": {\n \"amount\": {\n \"value\": 25,\n \"currency\": \"EUR\"\n },\n \"type\": \"RETAIL\",\n \"cardEntryMode\": \"CONTACTLESS\"\n },\n \"decision\": \"APPROVAL\",\n \"initiator\": \"SCHEME_INITIATED\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://test-api.ext-uat1-sandbox.mycore.enfuce.com/test-api/v1/authorizations/stip")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"card\": {\n \"id\": \"abc123\"\n },\n \"merchantData\": {\n \"id\": \"123456789012345\",\n \"name\": \"Coffee Shop\",\n \"city\": \"Helsinki\",\n \"country\": \"FIN\",\n \"categoryCode\": \"5812\",\n \"acquirerId\": \"12345678901\",\n \"acquirerCountry\": \"FIN\",\n \"terminalId\": \"TERM0001\"\n },\n \"transactionData\": {\n \"amount\": {\n \"value\": 25,\n \"currency\": \"EUR\"\n },\n \"type\": \"RETAIL\",\n \"cardEntryMode\": \"CONTACTLESS\"\n },\n \"decision\": \"APPROVAL\",\n \"initiator\": \"SCHEME_INITIATED\"\n}"
response = http.request(request)
puts response.read_body{
"metadata": {
"mti": "0110",
"id": "<string>"
},
"transactionData": {
"authResponseCode": "00",
"retrievalReferenceNumber": "<string>"
}
}{
"code": "<string>",
"message": "<string>",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"errorCode": "<string>",
"errorType": "STATIC_VALIDATION_ERROR",
"errorReason": "<string>",
"timestamp": "2023-11-07T05:31:56Z"
}{
"code": "<string>",
"message": "<string>",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"errorCode": "<string>",
"errorType": "STATIC_VALIDATION_ERROR",
"errorReason": "<string>",
"timestamp": "2023-11-07T05:31:56Z"
}{
"code": "<string>",
"message": "<string>",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"errorCode": "<string>",
"errorType": "STATIC_VALIDATION_ERROR",
"errorReason": "<string>",
"timestamp": "2023-11-07T05:31:56Z"
}{
"code": "<string>",
"message": "<string>",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"errorCode": "<string>",
"errorType": "STATIC_VALIDATION_ERROR",
"errorReason": "<string>",
"timestamp": "2023-11-07T05:31:56Z"
}{
"code": "<string>",
"message": "<string>",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"errorCode": "<string>",
"errorType": "STATIC_VALIDATION_ERROR",
"errorReason": "<string>",
"timestamp": "2023-11-07T05:31:56Z"
}Authorizations
HTTP Basic Auth. Credentials must carry the CAT2_API_ALL role.
Query Parameters
Identifier of the user performing the action, used for audit logging.
Body
Stand-In Processing authorisation request payload.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
The STIP decision to simulate.
APPROVAL, DECLINE Denotes who triggered the STIP authorisation.
SCHEME_INITIATED, CUSTOMER_INITIATED Optional reference to an existing transaction.
Was this page helpful?

