### Get Merchant API Request Example Source: https://developer.switchio.com/docs/tms/ry9imfiwirquv-api-endpoints An example of an HTTP GET request to retrieve merchant data using the network code and merchant code. This call is used to fetch specific merchant details from the system. ```http http://localhost:8401/api/nativeapimanage/v1/getMerchant/TERMINALNETWORK/5955 ``` -------------------------------- ### POST /ecr/api/v1.0/referral_refund Source: https://developer.switchio.com/docs/API/l0qre5c2e6dru-start-referral-refund Initiates a referral refund for a specific payment. After starting the refund, you should repeatedly call the `/status` endpoint until it returns 'Finished', then call `/result` to get the transaction details, and finally call `/confirm`. ```APIDOC ## POST /ecr/api/v1.0/referral_refund ### Description Starts a referral refund for the specific payment. After initiating, poll the `/status` endpoint for completion, then retrieve results with `/result`, and confirm with `/confirm`. ### Method POST ### Endpoint https://cloudpos.switchio.com/ecr/api/v1.0/referral_refund ### Parameters #### Headers - **Authorization** (string) - Required - Authorization header containing the bearer token for authentication. #### Request Body - **secureString** (string) - Required - Contains sessionId (contextId) which identifies the terminal session. Example: 550e8400-e29b-41d4-a716-446655440000 - **request** (object) - Required - Transaction data related to the referral refund. - **transactionId** (string) - Required - ID of the referral refund transaction assigned by the merchant. Example: TX0123456789 - **amount** (integer) - Required - Refunded amount in the minor currency unit (e.g., '100' means 1 EUR). Example: 12300 - **currencyCode** (integer) - Required - Numeric currency code according to ISO 4217. Example: 978 - **invoiceNumber** (string) - Optional - Invoice number, e.g., order identification / variable symbol. Example: 2024012345 - **daughterCompanyId** (string) - Optional - ID of the daughter company, required only when terminal virtualization is enabled. - **refundId** (string) - Required - ID of the original transaction which will be refunded (refundId is printed on the receipt of the original transaction). Example: RR0123456789 - **progressCallback** (object) - Not supported for CloudPOS 1.0. - **ip** (string) - Required - IP address or hostname of the merchant system. Example: 172.25.11.14 - **port** (integer) - Required - Port number for the callback. Example: 443 - **endpoint** (string) - Required - Endpoint for receiving payment status changes. Example: /payment-callback - **resultCallback** (object) - Not supported for CloudPOS 1.0. - **ip** (string) - Required - IP address or hostname of the merchant system. Example: 172.25.11.14 - **port** (integer) - Required - Port number for the callback. Example: 443 - **endpoint** (string) - Required - Endpoint for receiving payment results. Example: /payment-callback ### Request Example ```json { "secureString": "550e8400-e29b-41d4-a716-446655440000", "request": { "transactionId": "TX0123456789", "amount": 12300, "currencyCode": 978, "refundId": "RR0123456789", "invoiceNumber": "2024012345", "progressCallback": { "ip": "172.25.11.14", "port": 443, "endpoint": "/payment-callback" }, "resultCallback": { "ip": "172.25.11.14", "port": 443, "endpoint": "/payment-callback" } } } ``` ### Response #### Success Response (202) / (202) Referral refund was successfully started. Repeatedly call the `/status` until it returns 'Finished', then call `/result` to get the transaction result. Finally call `/confirm`. #### Error Responses - **400**: Bad Request - **401**: Unauthorized - **404**: Not Found ``` -------------------------------- ### Run Batch Update API Response Example Source: https://developer.switchio.com/docs/API/074c1c93d98ff-create-a-batch-update-run-batch-update Provides an example of the response structure when a batch update API request is made. It outlines the expected fields such as UID, response code, and response message. ```json { "uid": "string", "respCode": -2147483648, "respMsg": "string" } ``` -------------------------------- ### API Response Example Source: https://developer.switchio.com/docs/API/44120af45e5a7-save-terminal Example of a successful API response, indicating an 'OK' status with a response code and message. ```json { "uid": "96e39276dcbb11ec9d640242ac120003", "respCode": 0, "respMsg": "OK" } ``` -------------------------------- ### Install Status Embed Source: https://developer.switchio.com/docs/API/074c1c93d98ff-create-a-batch-update-run-batch-update This section describes how to install the status embed, which displays incidents or maintenance updates from your status page. No specific code is provided, but it's a visual integration. -------------------------------- ### Switchio Pay and Store Parameters Example Request Source: https://developer.switchio.com/docs/tms/a2b2f299bcdf4-switchio-pay-parameters This JSON object represents an example API request that includes all necessary parameters for both Switchio Pay and Switchio Store functionalities. It details terminal configurations, application settings, and various properties for payment processing. ```json { "uid" : "70fadfe3-1f92-4bc6-925b-a274b75570ae", "networkCode" : "TMONET", "merchantCode" : "MONET01", "orgUnitCode" : "MONETOU1", "platform" : "NexgoAndroid", "profile" : "TMONET_NexgoAndroid_PAY-TOKEN", "terminal" : { "name" : "TNEXGO50", "code" : "TNEXGO50", "state" : "A", "password" : "EDDIE", "serialNumber" : "N500W439953", "snCheckType" : "CONF_SN", "issuerCode" : "TNEXGO50", "authorization" : "A", "capability" : { "cardCaptureCapability" : "noCaptureCapability", "cardDataInputCapability" : "contactlessSmartCard", "cardHolderAuthCapability" : "pinVerification", "pinCaptureCapability" : "maximimum12", "terminalDataOutputCapability" : "printAndDisplay", "terminalOperatingEnviroment" : "onPremisesCardAcceptorAttended" }, "cardAcceptorRouteTableIndicator" : "FINARO" }, "applications" : [ { "type" : "PAYA", "state" : "A", "properties" : [ { "name" : "Global.MultiCurrency", "value" : "978", "type" : "String", "state" : "A" }, { "name" : "App.AuthorizationStatus", "value" : "0", "type" : "Enum", "state" : "A" }, { "name" : "App.ExternalPreauthCompletion", "value" : "0 - Off", "type" : "Enum", "state" : "A" }, { "name" : "App.Gsa.ConnectionType", "value" : "0 - IP (default)", "type" : "Enum", "state" : "A" }, { "name" : "App.Gsa.Port", "value" : "33350", "type" : "String", "state" : "A" }, { "name" : "App.Gsa.Protocol", "value" : "0 - http (default)", "type" : "Enum", "state" : "A" }, { "name" : "App.Gsa.SecureString", "value" : "Tmonet2024", "type" : "String", "state" : "A" }, { "name" : "App.MaxTipPercentage", "value" : "0", "type" : "Number", "state" : "A" }, { "name" : "App.PartialApproval", "value" : "0 - Off (default)", "type" : "Enum", "state" : "A" }, { "name" : "App.PinKeyboard", "value" : "0 - Static (default)", "type" : "Enum", "state" : "A" }, { "name" : "App.ReferralRefund", "value" : "0 - Off (default)", "type" : "Enum", "state" : "A" }, { "name" : "App.RefundPinProtection", "value" : "0 - Off (default)", "type" : "Enum", "state" : "A" }, { "name" : "App.ScreenSaver", "value" : "0 - DISABLED", "type" : "Enum", "state" : "A" }, { "name" : "App.ScreenSaverBackgroundColor", "value" : "000000", "type" : "String", "state" : "A" }, { "name" : "App.ScreenSaverForegroundColor", "value" : "000000", "type" : "String", "state" : "A" }, { "name" : "App.ScreenSaverPinProtection", "value" : "0 - DISABLED", "type" : "Enum", "state" : "A" }, { "name" : "App.ScreenSaverPosition", "value" : "3 - Middle", "type" : "Enum", "state" : "A" }, { "name" : "App.ScreenSaverTimeout", "value" : "10", "type" : "Number", "state" : "A" }, { "name" : "App.ShowTransactionDetail", "value" : "1 - On", "type" : "Enum", "state" : "A" }, { "name" : "App.StartPayaAfterBootUp", "value" : "0 - Off (default)", "type" : "Enum", "state" : "A" }, { "name" : "App.Theme", "value" : "0 - Switchio blue", "type" : "Enum", "state" : "A" }, { "name" : "App.TipConfig", "value" : "1", "type" : "String", "state" : "A" }, { "name" : "App.UnattendedTerminal", "value" : "false", "type" : "Boolean", "state" : "C" }, { "name" : "EMV.Country.Code", "value" : "0528", "type" : "String", "state" : "A" }, { "name" : "EMV.Currency.Code", "value" : "0978", "type" : "String", "state" : "A" }, { "name" : "EMV.CustomAppletSelectionMode", "type" : "Enum", "state" : "A" }, { "name" : "Menu.tag01", "value" : "payment", "type" : "Enum", "state" : "A" }, { "name" : "Menu.tag02", "value" : "reversal", "type" : "Enum", "state" : "A" }, { "name" : "Menu.tag03", "value" : "refund", "type" : "Enum", "state" : "A" }, { "name" : "Menu.tag04", "value" : "closing", "type" : "Enum", "state" : "A" }, { "name" : "Menu.tag05", "value" : "preauth transactions", "type" : "Enum", "state" : "A" }, { "name" : "Menu.tag06", "value" : "transaction history", "type" : "Enum", "state" : "A" }, { "name" : "Menu.tag07", "value" : "preauth", "type" : "Enum", "state" : "A" } ] } ] } ``` -------------------------------- ### POST setBatchUpdateStartingTime API Request (cURL) Source: https://developer.switchio.com/docs/API/cdfed9c0357a1-create-a-batch-update-set-batch-update-starting-time Example of how to make a POST request to the setBatchUpdateStartingTime API endpoint using cURL. This endpoint is used to set the starting time for batch updates. It requires a JSON payload with unique identifiers and timestamps. ```shell curl --request POST \ --url https://int-api-tms.switchio.com/api/nativeapimanage/v1/batchUpdate/setBatchUpdateStartingTime \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --data '{ \ "uid": "96e39276dcbb11ec9d640242ac120002", \ "networkCode": "NETWORK01", \ "name": "Entity name", \ "startingTime": "2019-08-24T14:15:22Z" \ }' ``` -------------------------------- ### Get Merchants API Response Example (JSON) Source: https://developer.switchio.com/docs/tms/ry9imfiwirquv-api-endpoints An example JSON response from the GetMerchants API. It shows the structure of the returned merchant list, including pagination details, sort direction, total pages, and an array of merchant objects, each with its specific details. ```json { "page": 0, "itemsPerPage": 10, "sortDirection": "DESC", "pages": 1, "errorMessage": null, "merchants": [ { "name": "MERCHANT 1, spol. s r.o", "code": "4555", "state": "A", "issuerCode": "53679455", "mcc": "5921", "companyIdentificationNumber": "49450555", "taxIdentificationNumber": "CZ49450555", "address": { "street": "Divoka 13", "city": "Brno - Židenice", "postalCode": "63600", "region": "CZ", "country": "CZ", "timeZone": "Africa/Lagos" } }, { "name": "Test HU", "code": "113480055", "state": "A", "issuerCode": "11348055", "mcc": "5734", "companyIdentificationNumber": "2081117755", "taxIdentificationNumber": "HU20877755", "address": { "street": "Street 10", "city": "PRAGUE", "postalCode": "1095", "region": "CZ", "country": "CZ", "timeZone": "Europe/Sofia" } } ] } ``` -------------------------------- ### GSA+ API - Start Payment Source: https://developer.switchio.com/docs/API/oged0qyky6s3m-complete-preauth Initiates a standard payment transaction. ```APIDOC ## POST /start_payment ### Description Initiates a new payment transaction. This endpoint is used for standard card present or card not present transactions. ### Method POST ### Endpoint /start_payment ### Parameters #### Query Parameters None #### Request Body - **session_id** (string) - Required - The ID of the active session. - **amount** (number) - Required - The transaction amount. - **currency** (string) - Required - The currency code (e.g., "USD"). - **transaction_type** (string) - Required - Type of payment (e.g., "SALE"). ### Request Example ```json { "session_id": "S789", "amount": 100.50, "currency": "USD", "transaction_type": "SALE" } ``` ### Response #### Success Response (200) - **transaction_id** (string) - The unique identifier for the initiated transaction. - **status** (string) - The current status of the transaction. #### Response Example ```json { "transaction_id": "TXN12345", "status": "PENDING" } ``` ``` -------------------------------- ### TMS API Request Example - JSON Source: https://developer.switchio.com/docs/tms/ry9imfiwirquv-api-endpoints Example of a basic request payload for the TMS API. It demonstrates the structure for specifying pagination (page, itemsPerPage), sorting (sortDirection), and filtering (networkCode). ```json { "page" : 0, "itemsPerPage" : 10, "sortDirection": "desc", "filter" : { "networkCode" : "TERMINALNETWORK" } } ``` -------------------------------- ### Example Receipt Configuration Parameters (JSON) Source: https://developer.switchio.com/docs/tms/a2b2f299bcdf4-switchio-pay-parameters Demonstrates example JSON structures for various receipt configuration parameters. These are used to define how receipts are printed or sent via email. The 'state' parameter indicates if the setting is active ('A'). ```json { "name": "Receipt.receiptType", "value": "NO_RECEIPT", "type": "Enum", "state": "A" } ``` ```json { "name": "Receipt.printerType", "value": "EXTERNAL", "type": "Enum", "state": "A" } ``` ```json { "name": "Receipt.typeface", "value": "DEFAULT", "type": "Enum", "state": "A" } ``` ```json { "name": "Receipt.includeInternalId", "value": "true", "type": "Boolean", "state": "A" } ``` ```json { "name": "Receipt.includeRefundLabel", "value": "true", "type": "Boolean", "state": "A" } ``` ```json { "name": "Receipt.closingTransactionListPrintMode", "value": "PROMPT_FOR_PRINT", "type": "Enum", "state": "A" } ``` -------------------------------- ### Status Embed Installation Source: https://developer.switchio.com/docs/API/cfe4244371671-get-merchants Information regarding the installation and display of the status embed, which shows incidents or maintenance on your status page. ```APIDOC ## Status Embed ### Description This embed is shown when an incident or maintenance is posted on your status page. It allows users to view the latest updates. ### Usage Ensure the status embed is installed correctly to display real-time incident and maintenance information. ### Feature - View latest updates - Displays incidents and maintenance notices ``` -------------------------------- ### GSA+ API - Start Reversal Source: https://developer.switchio.com/docs/API/oged0qyky6s3m-complete-preauth Initiates a reversal of a previous transaction. ```APIDOC ## POST /start_reversal ### Description Initiates a reversal (void or refund) of a previously authorized or completed transaction. ### Method POST ### Endpoint /start_reversal ### Parameters #### Query Parameters None #### Request Body - **transaction_id** (string) - Required - The ID of the transaction to reverse. - **reason** (string) - Optional - The reason for the reversal. ### Request Example ```json { "transaction_id": "TXN12345", "reason": "Customer cancelled order" } ``` ### Response #### Success Response (200) - **reversal_id** (string) - The unique identifier for the reversal transaction. - **status** (string) - The status of the reversal. #### Response Example ```json { "reversal_id": "REV54321", "status": "PROCESSING" } ``` ``` -------------------------------- ### TMS NATIVE API Receipt Print Configuration Example (JSON) Source: https://developer.switchio.com/docs/API/4ue31evwqjtje-10-switchio-pay-parameters-set-via-monet-tms-api This JSON structure provides an example of a comprehensive receipt print configuration using the TMS NATIVE API. It includes settings for various transaction types, receipt inclusions, and printing modes. ```json { "name" : "Receipt.c.AUTO_CLOSING.merchantReceipt", "value" : "true", "type" : "Boolean", "state" : "A" }, { "name" : "Receipt.c.AUTO_CONFIG_UPDATE.merchantReceipt", "value" : "true", "type" : "Boolean", "state" : "A" }, { "name" : "Receipt.c.CASHBACK.customerReceipt", "value" : "true", "type" : "Boolean", "state" : "A" }, { "name" : "Receipt.c.CASHBACK.merchantReceipt", "value" : "true", "type" : "Boolean", "state" : "A" }, { "name" : "Receipt.c.CLOSING.merchantReceipt", "value" : "true", "type" : "Boolean", "state" : "A" }, { "name" : "Receipt.c.CONFIG_UPDATE.merchantReceipt", "value" : "true", "type" : "Boolean", "state" : "A" }, { "name" : "Receipt.c.MOTO_PAYMENT.customerReceipt", "value" : "true", "type" : "Boolean", "state" : "A" }, { "name" : "Receipt.c.MOTO_PAYMENT.merchantReceipt", "value" : "true", "type" : "Boolean", "state" : "A" }, { "name" : "Receipt.c.PAYMENT.customerReceipt", "value" : "true", "type" : "Boolean", "state" : "A" }, { "name" : "Receipt.c.PAYMENT.merchantReceipt", "value" : "true", "type" : "Boolean", "state" : "A" }, { "name" : "Receipt.c.PREAUT.customerReceipt", "value" : "true", "type" : "Boolean", "state" : "A" }, { "name" : "Receipt.c.PREAUT.merchantReceipt", "value" : "false", "type" : "Boolean", "state" : "A" }, { "name" : "Receipt.c.PREAUTH_INCR.customerReceipt", "value" : "false", "type" : "Boolean", "state" : "A" }, { "name" : "Receipt.c.PREAUTH_INCR.merchantReceipt", "value" : "false", "type" : "Boolean", "state" : "A" }, { "name" : "Receipt.c.PREAUT_COMPLET.customerReceipt", "value" : "false", "type" : "Boolean", "state" : "A" }, { "name" : "Receipt.c.PREAUT_COMPLET.merchantReceipt", "value" : "false", "type" : "Boolean", "state" : "A" }, { "name" : "Receipt.c.REFUND.customerReceipt", "value" : "false", "type" : "Boolean", "state" : "A" }, { "name" : "Receipt.c.REFUND.merchantReceipt", "value" : "true", "type" : "Boolean", "state" : "A" }, { "name" : "Receipt.c.SUBTOTAL.merchantReceipt", "value" : "true", "type" : "Boolean", "state" : "A" }, { "name" : "Receipt.closingTransactionListPrintMode", "value" : "PROMPT_FOR_PRINT", "type" : "Enum", "state" : "A" }, { "name" : "Receipt.includeInternalId", "value" : "true", "type" : "Boolean", "state" : "A" } ``` -------------------------------- ### GSA+ API - Start Refund Source: https://developer.switchio.com/docs/API/oged0qyky6s3m-complete-preauth Initiates a refund for a completed transaction. ```APIDOC ## POST /start_refund ### Description Initiates a refund for a transaction that has already been captured or settled. ### Method POST ### Endpoint /start_refund ### Parameters #### Query Parameters None #### Request Body - **transaction_id** (string) - Required - The ID of the original transaction to refund. - **amount** (number) - Required - The amount to refund. - **reason** (string) - Optional - The reason for the refund. ### Request Example ```json { "transaction_id": "CAP98765", "amount": 25.00, "reason": "Partial refund requested" } ``` ### Response #### Success Response (200) - **refund_id** (string) - The unique identifier for the refund transaction. - **status** (string) - The status of the refund. #### Response Example ```json { "refund_id": "REF13579", "status": "PENDING" } ``` ``` -------------------------------- ### GSA+ API - Start Reversal Source: https://developer.switchio.com/docs/API/o8u2p0v455n7j-gsa Initiates a reversal for a previous transaction. ```APIDOC ## POST /start_reversal ### Description Initiates a reversal for a previously completed transaction. ### Method POST ### Endpoint https://cloudpos.switchio.com/ecr/api/v1.0/start_reversal ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body - **session_id** (string) - Required - The identifier of the allocated session. - **original_transaction_id** (string) - Required - The identifier of the transaction to reverse. - **amount** (integer) - Required - The amount to reverse. - **currency** (string) - Required - The currency of the reversal. ### Request Example ```json { "session_id": "SESS789", "original_transaction_id": "TXN001", "amount": 1000, "currency": "EUR" } ``` ### Response #### Success Response (200) - **reversal_id** (string) - Description: The unique identifier for the reversal. - **status** (string) - Description: The status of the reversal initiation. #### Response Example ```json { "reversal_id": "REV456", "status": "initiated" } ``` ``` -------------------------------- ### GSA+ API - Start Preauth Source: https://developer.switchio.com/docs/API/2zosrs4j3uzif-decrement-preauth Initiates a preauthorization for a specified amount. ```APIDOC ## POST /start_preauth ### Description Initiates a preauthorization for a specified amount. ### Method POST ### Endpoint /start_preauth ### Parameters #### Request Body - **session_id** (string) - Required - The ID of the allocated session. - **card_details** (object) - Required - Details of the payment card. - **card_number** (string) - Required - The credit/debit card number. - **expiry_month** (integer) - Required - The card's expiry month (1-12). - **expiry_year** (integer) - Required - The card's expiry year (e.g., 2024). - **cvv** (string) - Required - The card verification value. - **transaction_details** (object) - Required - Details about the preauthorization. - **amount** (number) - Required - The amount to preauthorize. - **currency** (string) - Required - The preauthorization currency. ### Request Example ```json { "session_id": "sess_abcdef123456", "card_details": { "card_number": "1234567890123456", "expiry_month": 10, "expiry_year": 2026, "cvv": "456" }, "transaction_details": { "amount": 200.00, "currency": "EUR" } } ``` ### Response #### Success Response (200) - **preauth_id** (string) - The unique identifier for the preauthorization. - **status** (string) - The status of the preauthorization (e.g., "authorized"). #### Response Example ```json { "preauth_id": "pa_abcdef12345", "status": "authorized" } ``` ``` -------------------------------- ### Get Merchants API Request Example (JSON) Source: https://developer.switchio.com/docs/tms/ry9imfiwirquv-api-endpoints An example JSON payload for the GetMerchants API request. This includes parameters for pagination (page, itemsPerPage), sorting (sortDirection), and filtering (networkCode, code, issuerCode, state). ```json { "page": 1, "itemsPerPage": 20, "sortDirection": "asc", "filter": { "networkCode": "NETWORK01", "code": "Entity code", "issuerCode": "string", "state": "string" } } ``` -------------------------------- ### Initiate Referral Refund (cURL) Source: https://developer.switchio.com/docs/API/l0qre5c2e6dru-start-referral-refund Example of how to send a POST request to the referral refund endpoint using cURL. It specifies the URL, headers, and the JSON payload for the request. ```bash curl --request POST \ --url https://cloudpos.switchio.com/ecr/api/v1.0/referral_refund \ --header 'Accept: application/json' \ --header 'Authorization: ' \ --header 'Content-Type: application/json' \ --data '{ \ "secureString": "550e8400-e29b-41d4-a716-446655440000", \ "request": { \ "transactionId": "TX0123456789", \ "amount": 12300, \ "currencyCode": 978, \ "invoiceNumber": "2024012345", \ "daughterCompanyId": "string", \ "refundId": "RR0123456789" \ }, \ "progressCallback": { \ "ip": "172.25.11.14", \ "port": 443, \ "endpoint": "/payment-callback" \ }, \ "resultCallback": { \ "ip": "172.25.11.14", \ "port": 443, \ "endpoint": "/payment-callback" \ }' ``` -------------------------------- ### Get Terminal Calls API Response Example - JSON Source: https://developer.switchio.com/docs/API/9f108f57c2bef-get-terminal-calls This JSON structure is an example of a successful response from the getTerminalCalls API. It includes pagination information (page, itemsPerPage, pages), an optional errorMessage, and an array of 'calls' objects, each containing details like terminalCode, serialNumber, callType, callState, and callDateTime. ```json { "page": 0, "itemsPerPage": 20, "sortDirection": "asc", "pages": 150, "errorMessage": "null", "calls": [ { "terminalCode": "string", "serialNumber": "string", "callType": "string", "callState": "string", "callDateTime": "2019-08-24T14:15:22Z" } ] } ``` -------------------------------- ### GSA+ API - Start Preauth Source: https://developer.switchio.com/docs/API/oged0qyky6s3m-complete-preauth Initiates a pre-authorization to reserve funds on a card. ```APIDOC ## POST /start_preauth ### Description Initiates a pre-authorization request to reserve a specific amount on a customer's payment card. This does not charge the card but holds the funds. ### Method POST ### Endpoint /start_preauth ### Parameters #### Query Parameters None #### Request Body - **session_id** (string) - Required - The ID of the active session. - **amount** (number) - Required - The amount to pre-authorize. - **currency** (string) - Required - The currency code (e.g., "GBP"). ### Request Example ```json { "session_id": "S789", "amount": 200.00, "currency": "GBP" } ``` ### Response #### Success Response (200) - **preauth_id** (string) - The unique identifier for the pre-authorization. - **status** (string) - The status of the pre-authorization request. #### Response Example ```json { "preauth_id": "PA7890", "status": "AUTHORIZED" } ``` ``` -------------------------------- ### Get Issuer Mappings API Response Example (Success) Source: https://developer.switchio.com/docs/API/b245c33058a77-get-issuer-mappings A successful response example from the getIssuerMappings API. It includes pagination details (current page, items per page, total pages) and an array of issuer mapping objects. Each mapping object contains 'code', 'issuer', 'issuerCode', and 'type'. ```json { "page": 0, "itemsPerPage": 20, "sortDirection": "asc", "pages": 150, "errorMessage": null, "mappings": [ { "code": "TERMINAL01", "issuer": "VISA", "issuerCode": "VISA001", "type": "TERMINAL" }, { "code": "TERMINAL01", "issuer": "DOXX", "issuerCode": "DOXX001", "type": "TERMINAL" } ] } ``` -------------------------------- ### POST /websites/developer_switchio - Batch Update Operations Source: https://developer.switchio.com/docs/API/900755f48bb81-get-organization-unit Handles various operations related to batch updates, including getting, creating, saving, setting start time, running, and deleting batch updates. ```APIDOC ## POST /websites/developer_switchio - Batch Update Operations ### Description Manages batch update operations. ### Method POST ### Endpoint /websites/developer_switchio ### Parameters #### Query Parameters - **action** (string) - Required - Specify one of the following: 'get_batch_update', 'create_batch_update_get_batch_update', 'create_batch_update_save_batch_update', 'create_batch_update_set_batch_update_starting_time', 'create_batch_update_run_batch_update', 'create_batch_update_delete_batch_update'. #### Request Body (Varies by action) **1. Get Batch Update** - **batch_id** (string) - Required - The ID of the batch to retrieve. **2. Create Batch Update / Get Batch Update** - **batch_details** (object) - Details for creating the batch. **3. Create Batch Update / Save Batch Update** - **batch_id** (string) - Required - The ID of the batch to save. - **save_data** (object) - Data to save for the batch. **4. Create Batch Update / Set Batch Update Starting Time** - **batch_id** (string) - Required - The ID of the batch. - **start_time** (string) - Required - The desired start time (e.g., ISO 8601 format). **5. Create Batch Update / Run Batch Update** - **batch_id** (string) - Required - The ID of the batch to run. **6. Create Batch Update / Delete Batch Update** - **batch_id** (string) - Required - The ID of the batch to delete. ### Request Example (Get Batch Update) ```json { "action": "get_batch_update", "batch_id": "batch_123" } ``` ### Request Example (Create Batch Update) ```json { "action": "create_batch_update_get_batch_update", "batch_details": { "name": "New Batch" } } ``` ### Response #### Success Response (200) - Response structure varies based on the 'action' performed. Generally includes status and relevant data. #### Response Example (Get Batch Update) ```json { "status": "success", "batch_info": { "id": "batch_123", "name": "Existing Batch", "status": "pending" } } ``` ``` -------------------------------- ### Tip Configuration Settings Source: https://developer.switchio.com/docs/API/4ue31evwqjtje-10-switchio-pay-parameters-set-via-monet-tms-api Defines how tips are configured, allowing for percentage-based tips or direct entry of the total amount. It also specifies the maximum allowable tip percentage. ```JSON {"name" : "App.TipConfig","value" : "2,10,15,30","state" : "A"} ``` ```JSON {"name" : "App.TipConfig","value" : "1","state" : "A"} ``` ```JSON {"name" : "App.MaxTipPercentage","value" : "30","state" : "A"} ``` ```JSON {"name" : "App.MaxTipPercentage","value" : "0","state" : "A"} ``` -------------------------------- ### Get Issuer Mappings API Request Body Example Source: https://developer.switchio.com/docs/API/b245c33058a77-get-issuer-mappings An example JSON payload for the getIssuerMappings API request. This payload specifies pagination parameters like page number, items per page, and sort direction. The 'filter' object is optional and can be used to narrow down the results based on network code, issuer code, issuer, or issuer mapping type. ```json { "page": 0, "itemsPerPage": 20, "sortDirection": "asc", "filter": null } ``` -------------------------------- ### POST /ecr/api/v1.0/referral_refund Source: https://developer.switchio.com/docs/API/l0qre5c2e6dru-start-referral-refund Initiates a referral refund process. This endpoint allows you to start a refund for a past transaction, specifying the amount, currency, and callback details for progress and result notifications. ```APIDOC ## POST /ecr/api/v1.0/referral_refund ### Description Initiates a referral refund process. This endpoint allows you to start a refund for a past transaction, specifying the amount, currency, and callback details for progress and result notifications. ### Method POST ### Endpoint /ecr/api/v1.0/referral_refund ### Parameters #### Query Parameters None #### Request Body - **secureString** (string) - Required - A security token for authentication. - **request** (object) - Required - Contains the details of the refund request. - **transactionId** (string) - Required - The ID of the original transaction to be refunded. - **amount** (integer) - Required - The amount to be refunded in the smallest currency unit (e.g., cents). - **currencyCode** (integer) - Required - The numeric currency code (e.g., 978 for EUR). - **invoiceNumber** (string) - Required - The invoice number associated with the transaction. - **daughterCompanyId** (string) - Required - The ID of the daughter company initiating the refund. - **refundId** (string) - Required - A unique identifier for this refund request. - **progressCallback** (object) - Optional - Information for progress callbacks. - **ip** (string) - Required - The IP address for the callback. - **port** (integer) - Required - The port for the callback. - **endpoint** (string) - Required - The endpoint path for the callback. - **resultCallback** (object) - Optional - Information for result callbacks. - **ip** (string) - Required - The IP address for the callback. - **port** (integer) - Required - The port for the callback. - **endpoint** (string) - Required - The endpoint path for the callback. ### Request Example ```json { "secureString": "550e8400-e29b-41d4-a716-446655440000", "request": { "transactionId": "TX0123456789", "amount": 12300, "currencyCode": 978, "invoiceNumber": "2024012345", "daughterCompanyId": "string", "refundId": "RR0123456789" }, "progressCallback": { "ip": "172.25.11.14", "port": 443, "endpoint": "/payment-callback" }, "resultCallback": { "ip": "172.25.11.14", "port": 443, "endpoint": "/payment-callback" } } ``` ### Response #### Success Response (200) - **transactionId** (string) - Required - ID of the transaction (value from request). - **isStarted** (boolean) - Required - Information whether the referral refund has been started. - **status** (string) - Required - Operation result text description. #### Response Example ```json { "transactionId": "TX0123456789", "isStarted": true, "status": "OK" } ``` ``` -------------------------------- ### Transaction Status API Response Example (200 OK) Source: https://developer.switchio.com/docs/API/3ff876109tw1w-transaction-status This JSON object illustrates a successful response (HTTP 200) from the transaction status API. It confirms the operation was started, provides an API message and return code, the original transaction ID, and the current status of the operation. ```json { "apiMessage": "OK", "apiRc": 0, "transactionId": "TX0123456789", "isStarted": true, "status": "OK" } ``` -------------------------------- ### GSA+ API - Start Referral Refund Source: https://developer.switchio.com/docs/API/oged0qyky6s3m-complete-preauth Initiates a refund based on a referral code or program. ```APIDOC ## POST /start_referral_refund ### Description Initiates a refund that is linked to a specific referral program or code. This is typically used for promotions or loyalty programs. ### Method POST ### Endpoint /start_referral_refund ### Parameters #### Query Parameters None #### Request Body - **original_transaction_id** (string) - Required - The ID of the original transaction associated with the referral. - **referral_code** (string) - Required - The referral code used. - **amount** (number) - Required - The amount to be refunded. ### Request Example ```json { "original_transaction_id": "TXN12345", "referral_code": "SUMMER20", "amount": 10.00 } ``` ### Response #### Success Response (200) - **refund_id** (string) - The unique identifier for this referral refund. - **status** (string) - The status of the referral refund. #### Response Example ```json { "refund_id": "RR9876", "status": "COMPLETED" } ``` ``` -------------------------------- ### Get Organization Units Response Example Source: https://developer.switchio.com/docs/tms/ry9imfiwirquv-api-endpoints This code snippet shows a sample JSON response from the getOrgUnits endpoint. It includes pagination details, the total number of pages, and a list of organization units. Each organization unit object contains various details such as name, code, state, and address information. ```json { "page": 1, "itemsPerPage": 20, "sortDirection": "asc", "pages": 150, "errorMessage": "Error message.", "orgUnits": [ { "name": "Entity name", "code": "Entity code", "state": "A", "nameShort": "Entity name", "issuerCode": "Issuer entity code", "mcc": "1520", "companyIdentificationNumber": "04087394", "taxIdentificationNumber": "CZ04087394", "addressShort": { "street": "Za Dvorem 505", "city": "Zlín", "postalCode": "763 14", "region": "CZ", "country": "CZ", "timeZone": "Europe/Prague", "url": "htt:\company.com", "phone": "phone" }, "address": { "street": "Za Dvorem 505", "city": "Zlín", "postalCode": "763 14", "region": "CZ", "country": "CZ", "timeZone": "Europe/Prague", "url": "htt:\company.com", "phone": "777123123" }, "addressService": { "street": "Za Dvorem 505", "city": "Zlín", "postalCode": "763 14", "region": "CZ", "country": "CZ", "url": "htt:\company.com", "phone": "phone" }, "cardAcceptorRouteTableIndicator": "string", "addInfo": "string", "partnerId": "string", "messageFormatVersionCode": "string", "terminalSettlementMode": "AUTHORIZE_ONLY", "merchantCode": "string" } ] } ```