Node.js
import Shoply from "@shoplygg/node";
const shoply = new Shoply({ apiKey: process.env.SHOPLY_API_KEY });
const result = await shoply.customMethods.setEnabled("METHOD_ID", {
enabled: true,
});<?php
require 'vendor/autoload.php';
$shoply = new Shoply\Client(['apiKey' => getenv('SHOPLY_API_KEY')]);
$result = $shoply->customMethods->setEnabled('METHOD_ID', [
'enabled' => true,
]);
import shoply
client = shoply.Client() # reads SHOPLY_API_KEY
result = client.customMethods.setEnabled("METHOD_ID", enabled=True)
curl --request PATCH \
--url https://api.shoply.gg/v1/stores/{storeId}/custom-payment-methods/{methodId}/enabled \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"enabled": true
}
'package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.shoply.gg/v1/stores/{storeId}/custom-payment-methods/{methodId}/enabled"
payload := strings.NewReader("{\n \"enabled\": true\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.patch("https://api.shoply.gg/v1/stores/{storeId}/custom-payment-methods/{methodId}/enabled")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"enabled\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.shoply.gg/v1/stores/{storeId}/custom-payment-methods/{methodId}/enabled")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"enabled\": true\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": null,
"code": null,
"data": [
{
"id": "custom_1e22c55a4dc40fc7",
"kind": "redirect",
"name": "Pay on Our Site",
"description": "",
"instructions": "",
"redirectUrl": "https://pay.example.com/checkout?order={order}",
"iconUrl": null,
"asksProof": false,
"requiresPicture": false,
"enabled": true
},
{
"id": "custom_c009621ccc3e9d74",
"kind": "instructions",
"name": "Bank Transfer (EU)",
"description": "One to two working days",
"instructions": "Send **{amount} {currency}** to DE89 3704 0044 0532 0130 00, with `{order}` as the reference.",
"redirectUrl": "",
"iconUrl": null,
"asksProof": false,
"requiresPicture": false,
"enabled": true
}
],
"meta": {
"max": 10,
"variables": [
"order",
"amount"
]
}
}{
"success": false,
"message": "<string>",
"code": "<string>",
"data": null,
"errors": {}
}{
"success": false,
"message": "<string>",
"code": "<string>",
"data": null,
"errors": {}
}{
"success": false,
"message": "<string>",
"code": "<string>",
"data": null,
"errors": {}
}{
"success": false,
"message": "<string>",
"code": "<string>",
"data": null,
"errors": {}
}{
"success": false,
"message": "<string>",
"code": "<string>",
"data": null,
"errors": {}
}Custom payment methods
Switch a custom payment method on or off
Answers the store’s custom methods again, as “List custom payment methods” does.
Needs the payments.write permission (Change Payment Methods).
PATCH
/
stores
/
{storeId}
/
custom-payment-methods
/
{methodId}
/
enabled
Node.js
import Shoply from "@shoplygg/node";
const shoply = new Shoply({ apiKey: process.env.SHOPLY_API_KEY });
const result = await shoply.customMethods.setEnabled("METHOD_ID", {
enabled: true,
});<?php
require 'vendor/autoload.php';
$shoply = new Shoply\Client(['apiKey' => getenv('SHOPLY_API_KEY')]);
$result = $shoply->customMethods->setEnabled('METHOD_ID', [
'enabled' => true,
]);
import shoply
client = shoply.Client() # reads SHOPLY_API_KEY
result = client.customMethods.setEnabled("METHOD_ID", enabled=True)
curl --request PATCH \
--url https://api.shoply.gg/v1/stores/{storeId}/custom-payment-methods/{methodId}/enabled \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"enabled": true
}
'package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.shoply.gg/v1/stores/{storeId}/custom-payment-methods/{methodId}/enabled"
payload := strings.NewReader("{\n \"enabled\": true\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.patch("https://api.shoply.gg/v1/stores/{storeId}/custom-payment-methods/{methodId}/enabled")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"enabled\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.shoply.gg/v1/stores/{storeId}/custom-payment-methods/{methodId}/enabled")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"enabled\": true\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": null,
"code": null,
"data": [
{
"id": "custom_1e22c55a4dc40fc7",
"kind": "redirect",
"name": "Pay on Our Site",
"description": "",
"instructions": "",
"redirectUrl": "https://pay.example.com/checkout?order={order}",
"iconUrl": null,
"asksProof": false,
"requiresPicture": false,
"enabled": true
},
{
"id": "custom_c009621ccc3e9d74",
"kind": "instructions",
"name": "Bank Transfer (EU)",
"description": "One to two working days",
"instructions": "Send **{amount} {currency}** to DE89 3704 0044 0532 0130 00, with `{order}` as the reference.",
"redirectUrl": "",
"iconUrl": null,
"asksProof": false,
"requiresPicture": false,
"enabled": true
}
],
"meta": {
"max": 10,
"variables": [
"order",
"amount"
]
}
}{
"success": false,
"message": "<string>",
"code": "<string>",
"data": null,
"errors": {}
}{
"success": false,
"message": "<string>",
"code": "<string>",
"data": null,
"errors": {}
}{
"success": false,
"message": "<string>",
"code": "<string>",
"data": null,
"errors": {}
}{
"success": false,
"message": "<string>",
"code": "<string>",
"data": null,
"errors": {}
}{
"success": false,
"message": "<string>",
"code": "<string>",
"data": null,
"errors": {}
}Authorizations
A secret API key, made under Developers in the dashboard: Authorization: Bearer shoply_sk_...
Headers
A word of your own for this one change, up to 180 letters, digits, dots, dashes, underscores and colons. Sent again with the same key, the request is not carried out twice: the first answer comes back, with Idempotent-Replay: true.
Path Parameters
The store's ID. A key reaches the store it was made in: GET /key answers which.
The method, by its ID (custom_ and 16 hex characters).
Body
application/json
Whether the checkout offers it.

