1import { ApifyClient } from 'apify-client';
2
3
4
5const client = new ApifyClient({
6 token: '<YOUR_API_TOKEN>',
7});
8
9
10const input = {
11 "spec": {
12 "project": {
13 "name": "Example Shop card acceptance",
14 "version": "0.1"
15 },
16 "merchant": {
17 "legalName": "Example Shop Ltd",
18 "tradingName": "Example Shop",
19 "country": "GB",
20 "companyNumber": "00000000",
21 "website": "https://shop.example.com"
22 },
23 "acquirer": {
24 "name": "Example Acquirer",
25 "psp": "Example PSP"
26 },
27 "mids": [
28 "MID-0001 (GBP ecom)"
29 ],
30 "tids": [],
31 "mcc": "5999",
32 "schemes": [
33 "Visa",
34 "Mastercard"
35 ],
36 "paymentMethods": [
37 "Cards",
38 "Apple Pay",
39 "Google Pay"
40 ],
41 "currencies": [
42 "GBP",
43 "EUR"
44 ],
45 "settlementCurrency": "GBP",
46 "threeDS": {
47 "version": "2.2",
48 "challengePreference": "no preference",
49 "scaExemptions": [
50 "Low value",
51 "TRA"
52 ]
53 },
54 "endpoints": {
55 "test": "https://api.test.example-psp.com",
56 "live": "TBD"
57 },
58 "webhooks": {
59 "url": "https://shop.example.com/webhooks/psp",
60 "events": [
61 "payment.authorised",
62 "payment.captured",
63 "refund.succeeded",
64 "chargeback.created"
65 ],
66 "authMethod": "HMAC signature header"
67 },
68 "settlement": {
69 "schedule": "T+2 daily",
70 "bankAccountRef": "Barclays ****1234"
71 },
72 "contacts": [
73 {
74 "role": "Merchant tech lead",
75 "name": "Alex Example",
76 "email": "alex@example.com"
77 },
78 {
79 "role": "PSP integration manager",
80 "name": "Sam Example",
81 "email": "sam@example-psp.com"
82 }
83 ],
84 "timeline": {
85 "kickoff": "2026-11-02",
86 "uat": "2026-11-20",
87 "goLive": "2026-12-01"
88 },
89 "signOff": [
90 {
91 "item": "Test transactions passed (auth, capture, refund)",
92 "owner": "Merchant",
93 "done": true
94 },
95 {
96 "item": "3DS challenge flow tested",
97 "owner": "Merchant",
98 "done": false
99 },
100 {
101 "item": "Webhook signature verification",
102 "owner": "Merchant",
103 "done": false
104 },
105 {
106 "item": "Go-live approval",
107 "owner": "PSP",
108 "done": false
109 }
110 ]
111 }
112};
113
114
115const run = await client.actor("sterlingverify/integration-spec-pack").call(input);
116
117
118console.log('Results from dataset');
119console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
120const { items } = await client.dataset(run.defaultDatasetId).listItems();
121items.forEach((item) => {
122 console.dir(item);
123});
124
125