Update payment method
curl --request POST \
--url https://api.marzipan.co/v1/account/subscriptions/{subscriptionId}/updatePaymentMethod \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"paymentMethodId": "pm_1QabcXYZ"
}
'import requests
url = "https://api.marzipan.co/v1/account/subscriptions/{subscriptionId}/updatePaymentMethod"
payload = { "paymentMethodId": "pm_1QabcXYZ" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({paymentMethodId: 'pm_1QabcXYZ'})
};
fetch('https://api.marzipan.co/v1/account/subscriptions/{subscriptionId}/updatePaymentMethod', 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://api.marzipan.co/v1/account/subscriptions/{subscriptionId}/updatePaymentMethod",
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([
'paymentMethodId' => 'pm_1QabcXYZ'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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://api.marzipan.co/v1/account/subscriptions/{subscriptionId}/updatePaymentMethod"
payload := strings.NewReader("{\n \"paymentMethodId\": \"pm_1QabcXYZ\"\n}")
req, _ := http.NewRequest("POST", 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.post("https://api.marzipan.co/v1/account/subscriptions/{subscriptionId}/updatePaymentMethod")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"paymentMethodId\": \"pm_1QabcXYZ\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.marzipan.co/v1/account/subscriptions/{subscriptionId}/updatePaymentMethod")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"paymentMethodId\": \"pm_1QabcXYZ\"\n}"
response = http.request(request)
puts response.read_body{}{
"message": "Unauthenticated."
}{
"message": "Subscription not found"
}{
"message": "<string>",
"errors": {}
}Subscriptions
Update payment method
Set the default payment method for the subscription. The payment method is looked up from Stripe using the supplied payment method ID and stored against the customer.
POST
/
account
/
subscriptions
/
{subscriptionId}
/
updatePaymentMethod
Update payment method
curl --request POST \
--url https://api.marzipan.co/v1/account/subscriptions/{subscriptionId}/updatePaymentMethod \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"paymentMethodId": "pm_1QabcXYZ"
}
'import requests
url = "https://api.marzipan.co/v1/account/subscriptions/{subscriptionId}/updatePaymentMethod"
payload = { "paymentMethodId": "pm_1QabcXYZ" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({paymentMethodId: 'pm_1QabcXYZ'})
};
fetch('https://api.marzipan.co/v1/account/subscriptions/{subscriptionId}/updatePaymentMethod', 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://api.marzipan.co/v1/account/subscriptions/{subscriptionId}/updatePaymentMethod",
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([
'paymentMethodId' => 'pm_1QabcXYZ'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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://api.marzipan.co/v1/account/subscriptions/{subscriptionId}/updatePaymentMethod"
payload := strings.NewReader("{\n \"paymentMethodId\": \"pm_1QabcXYZ\"\n}")
req, _ := http.NewRequest("POST", 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.post("https://api.marzipan.co/v1/account/subscriptions/{subscriptionId}/updatePaymentMethod")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"paymentMethodId\": \"pm_1QabcXYZ\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.marzipan.co/v1/account/subscriptions/{subscriptionId}/updatePaymentMethod")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"paymentMethodId\": \"pm_1QabcXYZ\"\n}"
response = http.request(request)
puts response.read_body{}{
"message": "Unauthenticated."
}{
"message": "Subscription not found"
}{
"message": "<string>",
"errors": {}
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is the account token returned from the Login endpoint.
Path Parameters
Subscription ID
Body
application/json
Stripe payment method identifier
Response
Payment method updated
The response is of type object.
⌘I

