Complete membership payment method setup
curl --request POST \
--url https://api.creditor.younegotiate.com/membership-payment-method/setup-intents/{platformBillingSetupSession}/complete \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.creditor.younegotiate.com/membership-payment-method/setup-intents/{platformBillingSetupSession}/complete"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.creditor.younegotiate.com/membership-payment-method/setup-intents/{platformBillingSetupSession}/complete', 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.creditor.younegotiate.com/membership-payment-method/setup-intents/{platformBillingSetupSession}/complete",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.creditor.younegotiate.com/membership-payment-method/setup-intents/{platformBillingSetupSession}/complete"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.creditor.younegotiate.com/membership-payment-method/setup-intents/{platformBillingSetupSession}/complete")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.creditor.younegotiate.com/membership-payment-method/setup-intents/{platformBillingSetupSession}/complete")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"message": "Payment method saved successfully!",
"data": {
"id": 123,
"last_four_digit": "<string>",
"expiry": "12/2030",
"brand": "visa",
"bank_name": "STRIPE TEST BANK",
"payment_method_saved_at": "2023-11-07T05:31:56Z"
}
}{
"message": "<string>"
}{
"message": "<string>"
}{
"message": "<string>",
"errors": {}
}{
"code": "platform_billing_unavailable",
"message": "Platform billing is temporarily unavailable. Please try again."
}Complete membership payment method setup
After Stripe.js confirms the SetupIntent, retrieve it again on the backend, verify company ownership and method type, and save only the sanitized reusable method summary.
POST
/
membership-payment-method
/
setup-intents
/
{platformBillingSetupSession}
/
complete
Complete membership payment method setup
curl --request POST \
--url https://api.creditor.younegotiate.com/membership-payment-method/setup-intents/{platformBillingSetupSession}/complete \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.creditor.younegotiate.com/membership-payment-method/setup-intents/{platformBillingSetupSession}/complete"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.creditor.younegotiate.com/membership-payment-method/setup-intents/{platformBillingSetupSession}/complete', 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.creditor.younegotiate.com/membership-payment-method/setup-intents/{platformBillingSetupSession}/complete",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.creditor.younegotiate.com/membership-payment-method/setup-intents/{platformBillingSetupSession}/complete"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.creditor.younegotiate.com/membership-payment-method/setup-intents/{platformBillingSetupSession}/complete")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.creditor.younegotiate.com/membership-payment-method/setup-intents/{platformBillingSetupSession}/complete")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"message": "Payment method saved successfully!",
"data": {
"id": 123,
"last_four_digit": "<string>",
"expiry": "12/2030",
"brand": "visa",
"bank_name": "STRIPE TEST BANK",
"payment_method_saved_at": "2023-11-07T05:31:56Z"
}
}{
"message": "<string>"
}{
"message": "<string>"
}{
"message": "<string>",
"errors": {}
}{
"code": "platform_billing_unavailable",
"message": "Platform billing is temporarily unavailable. Please try again."
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Local platform billing setup session ID returned by the create endpoint.
Last modified on July 27, 2026
Was this page helpful?
⌘I

