curl --request POST \
--url https://int-prodtest.m1amdocs.io/partnersub/v2/transaction/{id}/refund \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '
{
"id": "<string>",
"created": "2023-11-07T05:31:56Z",
"amount": 123,
"currency": "<string>",
"note": "<string>",
"partnerSubscriptionId": "<string>",
"refund_items": [
{
"code": "<string>",
"amount": 123,
"metadata": {}
}
],
"metadata": {}
}
'import requests
url = "https://int-prodtest.m1amdocs.io/partnersub/v2/transaction/{id}/refund"
payload = {
"id": "<string>",
"created": "2023-11-07T05:31:56Z",
"amount": 123,
"currency": "<string>",
"note": "<string>",
"partnerSubscriptionId": "<string>",
"refund_items": [
{
"code": "<string>",
"amount": 123,
"metadata": {}
}
],
"metadata": {}
}
headers = {
"X-API-KEY": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-KEY': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
id: '<string>',
created: '2023-11-07T05:31:56Z',
amount: 123,
currency: '<string>',
note: '<string>',
partnerSubscriptionId: '<string>',
refund_items: [{code: '<string>', amount: 123, metadata: {}}],
metadata: {}
})
};
fetch('https://int-prodtest.m1amdocs.io/partnersub/v2/transaction/{id}/refund', 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://int-prodtest.m1amdocs.io/partnersub/v2/transaction/{id}/refund",
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([
'id' => '<string>',
'created' => '2023-11-07T05:31:56Z',
'amount' => 123,
'currency' => '<string>',
'note' => '<string>',
'partnerSubscriptionId' => '<string>',
'refund_items' => [
[
'code' => '<string>',
'amount' => 123,
'metadata' => [
]
]
],
'metadata' => [
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-KEY: <api-key>"
],
]);
$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://int-prodtest.m1amdocs.io/partnersub/v2/transaction/{id}/refund"
payload := strings.NewReader("{\n \"id\": \"<string>\",\n \"created\": \"2023-11-07T05:31:56Z\",\n \"amount\": 123,\n \"currency\": \"<string>\",\n \"note\": \"<string>\",\n \"partnerSubscriptionId\": \"<string>\",\n \"refund_items\": [\n {\n \"code\": \"<string>\",\n \"amount\": 123,\n \"metadata\": {}\n }\n ],\n \"metadata\": {}\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-KEY", "<api-key>")
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://int-prodtest.m1amdocs.io/partnersub/v2/transaction/{id}/refund")
.header("X-API-KEY", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"id\": \"<string>\",\n \"created\": \"2023-11-07T05:31:56Z\",\n \"amount\": 123,\n \"currency\": \"<string>\",\n \"note\": \"<string>\",\n \"partnerSubscriptionId\": \"<string>\",\n \"refund_items\": [\n {\n \"code\": \"<string>\",\n \"amount\": 123,\n \"metadata\": {}\n }\n ],\n \"metadata\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://int-prodtest.m1amdocs.io/partnersub/v2/transaction/{id}/refund")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-KEY"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"id\": \"<string>\",\n \"created\": \"2023-11-07T05:31:56Z\",\n \"amount\": 123,\n \"currency\": \"<string>\",\n \"note\": \"<string>\",\n \"partnerSubscriptionId\": \"<string>\",\n \"refund_items\": [\n {\n \"code\": \"<string>\",\n \"amount\": 123,\n \"metadata\": {}\n }\n ],\n \"metadata\": {}\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"status": "<string>",
"extConfirmationId": "<string>",
"metadata": {}
}{
"code": "invalid-request",
"message": "<string>",
"validationErrors": [
{
"code": "<string>",
"message": "<string>"
}
]
}{
"code": "authentication-required",
"message": "<string>"
}{
"code": "not-found",
"message": "<string>"
}{
"code": "input-conflict",
"message": "<string>"
}{
"code": "<string>",
"message": "<string>"
}{
"code": "server-error",
"message": "<string>"
}Create a new refund transaction
curl --request POST \
--url https://int-prodtest.m1amdocs.io/partnersub/v2/transaction/{id}/refund \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '
{
"id": "<string>",
"created": "2023-11-07T05:31:56Z",
"amount": 123,
"currency": "<string>",
"note": "<string>",
"partnerSubscriptionId": "<string>",
"refund_items": [
{
"code": "<string>",
"amount": 123,
"metadata": {}
}
],
"metadata": {}
}
'import requests
url = "https://int-prodtest.m1amdocs.io/partnersub/v2/transaction/{id}/refund"
payload = {
"id": "<string>",
"created": "2023-11-07T05:31:56Z",
"amount": 123,
"currency": "<string>",
"note": "<string>",
"partnerSubscriptionId": "<string>",
"refund_items": [
{
"code": "<string>",
"amount": 123,
"metadata": {}
}
],
"metadata": {}
}
headers = {
"X-API-KEY": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-KEY': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
id: '<string>',
created: '2023-11-07T05:31:56Z',
amount: 123,
currency: '<string>',
note: '<string>',
partnerSubscriptionId: '<string>',
refund_items: [{code: '<string>', amount: 123, metadata: {}}],
metadata: {}
})
};
fetch('https://int-prodtest.m1amdocs.io/partnersub/v2/transaction/{id}/refund', 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://int-prodtest.m1amdocs.io/partnersub/v2/transaction/{id}/refund",
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([
'id' => '<string>',
'created' => '2023-11-07T05:31:56Z',
'amount' => 123,
'currency' => '<string>',
'note' => '<string>',
'partnerSubscriptionId' => '<string>',
'refund_items' => [
[
'code' => '<string>',
'amount' => 123,
'metadata' => [
]
]
],
'metadata' => [
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-KEY: <api-key>"
],
]);
$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://int-prodtest.m1amdocs.io/partnersub/v2/transaction/{id}/refund"
payload := strings.NewReader("{\n \"id\": \"<string>\",\n \"created\": \"2023-11-07T05:31:56Z\",\n \"amount\": 123,\n \"currency\": \"<string>\",\n \"note\": \"<string>\",\n \"partnerSubscriptionId\": \"<string>\",\n \"refund_items\": [\n {\n \"code\": \"<string>\",\n \"amount\": 123,\n \"metadata\": {}\n }\n ],\n \"metadata\": {}\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-KEY", "<api-key>")
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://int-prodtest.m1amdocs.io/partnersub/v2/transaction/{id}/refund")
.header("X-API-KEY", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"id\": \"<string>\",\n \"created\": \"2023-11-07T05:31:56Z\",\n \"amount\": 123,\n \"currency\": \"<string>\",\n \"note\": \"<string>\",\n \"partnerSubscriptionId\": \"<string>\",\n \"refund_items\": [\n {\n \"code\": \"<string>\",\n \"amount\": 123,\n \"metadata\": {}\n }\n ],\n \"metadata\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://int-prodtest.m1amdocs.io/partnersub/v2/transaction/{id}/refund")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-KEY"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"id\": \"<string>\",\n \"created\": \"2023-11-07T05:31:56Z\",\n \"amount\": 123,\n \"currency\": \"<string>\",\n \"note\": \"<string>\",\n \"partnerSubscriptionId\": \"<string>\",\n \"refund_items\": [\n {\n \"code\": \"<string>\",\n \"amount\": 123,\n \"metadata\": {}\n }\n ],\n \"metadata\": {}\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"status": "<string>",
"extConfirmationId": "<string>",
"metadata": {}
}{
"code": "invalid-request",
"message": "<string>",
"validationErrors": [
{
"code": "<string>",
"message": "<string>"
}
]
}{
"code": "authentication-required",
"message": "<string>"
}{
"code": "not-found",
"message": "<string>"
}{
"code": "input-conflict",
"message": "<string>"
}{
"code": "<string>",
"message": "<string>"
}{
"code": "server-error",
"message": "<string>"
}Authorizations
The authorization key obtained from MarketONE.
Headers
The TraceId indicates the overall ID of the trace. Every span in a trace shares this ID. The X-B3-TraceId header is encoded as 32 or 16 lower-hex characters. For example, a 128-bit TraceId header might look like 463ac35c9f6413ad48485a3953bb6124.
The SpanId is 64-bit in length and indicates the position of the current operation in the trace tree. The value should not be interpreted; it may or may not be derived from the value of the TraceId. The X-B3-SpanId header is encoded as 16 lower-hex characters. For example, a SpanId header might look like a2fb4a1d1a96d312. Unless propagating only the Sampling State, the X-B3-SpanId header is required.
The ParentSpanId is 64-bit in length and indicates the position of the parent operation in the trace tree. When the span is the root of the trace tree, there is no ParentSpanId. The X-B3-ParentSpanId header may be present on a child span and must be absent on the root span. It is encoded as 16 lower-hex characters. For example, a ParentSpanId header might look like 0020000000000001.
Path Parameters
The id parameter is the transaction ID on which the original transaction was processed.
36Body
A new Refund; required attributes are id, refund items, product code passed in as 'code' for transaction item. Original transaction id is passed as a request parameter.
The Refund object provides a way to reverse a charge, refunding money to the customer. You can create, and retrieve individual Refunds; as well as list all existing Refunds. Refunds require a transaction – a refund can only be executed against an existing, successfully captured transaction. Refunds can be issued for any valid amount (in the currency of the original transaction) up to the as-yet un-refunded balance of the original transaction. You can issue any number of refunds on a given transaction (until it has been fully refunded).
A unique identifier.
128The date/time at which the refund was requested.
Amount of the refund. Must be positive (non-zero) and less than or equal to the as-yet-un-refunded balance of the specified transaction. Ignored if refundItems are specified.
Free-form specified note about refund.
Reason code for refund.
fraud, purchase-not-approved, entitlement-error, billing-error, account-cancelled, general-error A unique identifier.
128Defines strategy for distributing refund amount across the original TransactionItems. Default is None.
SpecifiedItems, None For item-level refunds, specifies the transaction items to refund with details.
Show child attributes
Show child attributes
A set of key/value pairs that you can attach to an object. Useful for storing additional information.
Show child attributes
Show child attributes
Response
Successfully created Refund Transaction
The transaction response entity relates to the payment request that can be initiated either by the digital partner in the case of direct carrier billing (BILLING), or the backend billing system of the service provider at the end of every billing cycle.
A unique identifier.
128Status of the transaction once processed (mandatory on the response)
Transaction identifier
36A set of key/value pairs that you can attach to an object. Useful for storing additional information.
Show child attributes
Show child attributes
Was this page helpful?

