curl --request PATCH \
--url https://api.synctera.com/v2/payments/{payment_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{}'import requests
url = "https://api.synctera.com/v2/payments/{payment_id}"
payload = {}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({})
};
fetch('https://api.synctera.com/v2/payments/{payment_id}', 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.synctera.com/v2/payments/{payment_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
]),
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.synctera.com/v2/payments/{payment_id}"
payload := strings.NewReader("{}")
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.synctera.com/v2/payments/{payment_id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.synctera.com/v2/payments/{payment_id}")
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 = "{}"
response = http.request(request)
puts response.read_body{
"description": "<string>",
"error_details": {
"code": "<string>",
"details": "<string>"
},
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"metadata": {},
"payment_date": {
"execution_date": "2023-12-25",
"scheduled_date": "2023-12-25"
},
"payment_instruction": {
"request": {
"amount": 607,
"currency": "USD",
"customer_id": "b01db9c7-78f2-4a99-8aca-1231d32f9b96",
"dc_sign": "debit",
"originating_account_id": "b01db9c7-78f2-4a99-8aca-1231d32f9b96",
"receiving_account_id": "b01db9c7-78f2-4a99-8aca-1231d32f9b96",
"company_entry_description": "PAYROLL",
"company_name": "Asdf Finance",
"effective_date": "2022-03-18",
"external_data": {},
"final_customer_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"hold": {
"amount": 123,
"duration": 2
},
"is_same_day": true,
"memo": "<string>",
"reference_info": "Tempore atque et cum.",
"risk": {
"client_ip": "<string>"
},
"sec_code": "WEB"
},
"type": "ACH"
},
"payment_schedule_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "COMPLETED",
"transaction_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}{
"code": "BAD_REQUEST_BODY",
"detail": "missing required fields: first_name, dob",
"status": 400,
"title": "Bad Request Body",
"type": "https://dev.synctera.com/errors/bad-request-body"
}{
"code": "BAD_REQUEST_BODY",
"detail": "missing required fields: first_name, dob",
"status": 400,
"title": "Bad Request Body",
"type": "https://dev.synctera.com/errors/bad-request-body"
}{
"code": "BAD_REQUEST_BODY",
"detail": "missing required fields: first_name, dob",
"status": 400,
"title": "Bad Request Body",
"type": "https://dev.synctera.com/errors/bad-request-body"
}{
"code": "BAD_REQUEST_BODY",
"detail": "missing required fields: first_name, dob",
"status": 400,
"title": "Bad Request Body",
"type": "https://dev.synctera.com/errors/bad-request-body"
}{
"code": "BAD_REQUEST_BODY",
"detail": "missing required fields: first_name, dob",
"status": 400,
"title": "Bad Request Body",
"type": "https://dev.synctera.com/errors/bad-request-body"
}Update payment
🚧 Beta This is a Beta endpoint. Feedback from the community is welcome. We may make breaking changes to this endpoint.
Update a payment. Currently only supports cancelling a pending payment (one not yet executed, e.g. scheduled for a future effective_date) by setting the status to SKIPPED.
curl --request PATCH \
--url https://api.synctera.com/v2/payments/{payment_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{}'import requests
url = "https://api.synctera.com/v2/payments/{payment_id}"
payload = {}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({})
};
fetch('https://api.synctera.com/v2/payments/{payment_id}', 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.synctera.com/v2/payments/{payment_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
]),
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.synctera.com/v2/payments/{payment_id}"
payload := strings.NewReader("{}")
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.synctera.com/v2/payments/{payment_id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.synctera.com/v2/payments/{payment_id}")
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 = "{}"
response = http.request(request)
puts response.read_body{
"description": "<string>",
"error_details": {
"code": "<string>",
"details": "<string>"
},
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"metadata": {},
"payment_date": {
"execution_date": "2023-12-25",
"scheduled_date": "2023-12-25"
},
"payment_instruction": {
"request": {
"amount": 607,
"currency": "USD",
"customer_id": "b01db9c7-78f2-4a99-8aca-1231d32f9b96",
"dc_sign": "debit",
"originating_account_id": "b01db9c7-78f2-4a99-8aca-1231d32f9b96",
"receiving_account_id": "b01db9c7-78f2-4a99-8aca-1231d32f9b96",
"company_entry_description": "PAYROLL",
"company_name": "Asdf Finance",
"effective_date": "2022-03-18",
"external_data": {},
"final_customer_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"hold": {
"amount": 123,
"duration": 2
},
"is_same_day": true,
"memo": "<string>",
"reference_info": "Tempore atque et cum.",
"risk": {
"client_ip": "<string>"
},
"sec_code": "WEB"
},
"type": "ACH"
},
"payment_schedule_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "COMPLETED",
"transaction_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}{
"code": "BAD_REQUEST_BODY",
"detail": "missing required fields: first_name, dob",
"status": 400,
"title": "Bad Request Body",
"type": "https://dev.synctera.com/errors/bad-request-body"
}{
"code": "BAD_REQUEST_BODY",
"detail": "missing required fields: first_name, dob",
"status": 400,
"title": "Bad Request Body",
"type": "https://dev.synctera.com/errors/bad-request-body"
}{
"code": "BAD_REQUEST_BODY",
"detail": "missing required fields: first_name, dob",
"status": 400,
"title": "Bad Request Body",
"type": "https://dev.synctera.com/errors/bad-request-body"
}{
"code": "BAD_REQUEST_BODY",
"detail": "missing required fields: first_name, dob",
"status": 400,
"title": "Bad Request Body",
"type": "https://dev.synctera.com/errors/bad-request-body"
}{
"code": "BAD_REQUEST_BODY",
"detail": "missing required fields: first_name, dob",
"status": 400,
"title": "Bad Request Body",
"type": "https://dev.synctera.com/errors/bad-request-body"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Payment ID
Body
Request to update a payment. Currently only supports cancelling a pending payment (one not yet executed, e.g. scheduled for a future effective_date) by setting status to SKIPPED.
Status of the autopay:
- PENDING: Autopay is scheduled and waiting to be executed
- EXECUTED: Autopay was successfully executed
- SKIPPED: Autopay was skipped (e.g., no balance due)
- FAILED: Autopay failed to execute
PENDING, EXECUTED, SKIPPED, FAILED Response
Updated payment
Executed payment
User provided description for the payment schedule
Payment error details. It will be included only when status is ERROR
Show child attributes
Show child attributes
Payment ID
User provided JSON format data for the payment schedule
Show child attributes
Show child attributes
- Option 1
- Option 2
Show child attributes
Show child attributes
ID of the payment schedule that executed this payment
Payment request status
COMPLETED, ERROR Transaction ID. It will be included only when status is COMPLETED
Was this page helpful?

