<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Issue with JSON Payload Encoding When Sending roblaxmod Metadata to CyberSource API in Integration and Testing</title>
    <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Issue-with-JSON-Payload-Encoding-When-Sending-roblaxmod-Metadata/m-p/94797#M58618</link>
    <description>&lt;P&gt;I am integrating with the CyberSource REST API and I am sending custom metadata in my payment request including fields like productName and productCategory where one value in roblaxmod. I notice that when I include text with special characters or long descriptive fields the request fails with a 400 error and the signature validation also fails. My code is using Node js and the CyberSource SDK:&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/DIV&gt;&lt;LI-CODE lang="javascript"&gt;const requestObj = {
  clientReferenceInformation: {
    code: "test123"
  },
  orderInformation: {
    amountDetails: {
      totalAmount: "10.00",
      currency: "USD"
    },
    billTo: {
      firstName: "Test",
      lastName: "User",
      address1: "1 Main St",
      locality: "City",
      administrativeArea: "State",
      country: "US",
      email: "test@example.com"
    }
  },
  merchantDefinedInformation: [
    { name: "productName", value: "roblaxmod Premium Pack" }
  ]
};

try {
  const response = await paymentsApi.createPayment(requestObj);
  console.log(response);
} catch (error) {
  console.error(error);
}&lt;/LI-CODE&gt;&lt;P&gt;The error I get is a 400 bad request and signature mismatch. Am I missing any special encoding step for custom metadata fields or is there a known issue with including descriptive text in merchant defined data when using the CyberSource API How should custom fields like this be encoded or included so the request is accepted&lt;/P&gt;</description>
    <pubDate>Thu, 01 Jan 2026 19:44:42 GMT</pubDate>
    <dc:creator>RoblaxMod</dc:creator>
    <dc:date>2026-01-01T19:44:42Z</dc:date>
    <item>
      <title>Issue with JSON Payload Encoding When Sending roblaxmod Metadata to CyberSource API</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Issue-with-JSON-Payload-Encoding-When-Sending-roblaxmod-Metadata/m-p/94797#M58618</link>
      <description>&lt;P&gt;I am integrating with the CyberSource REST API and I am sending custom metadata in my payment request including fields like productName and productCategory where one value in roblaxmod. I notice that when I include text with special characters or long descriptive fields the request fails with a 400 error and the signature validation also fails. My code is using Node js and the CyberSource SDK:&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/DIV&gt;&lt;LI-CODE lang="javascript"&gt;const requestObj = {
  clientReferenceInformation: {
    code: "test123"
  },
  orderInformation: {
    amountDetails: {
      totalAmount: "10.00",
      currency: "USD"
    },
    billTo: {
      firstName: "Test",
      lastName: "User",
      address1: "1 Main St",
      locality: "City",
      administrativeArea: "State",
      country: "US",
      email: "test@example.com"
    }
  },
  merchantDefinedInformation: [
    { name: "productName", value: "roblaxmod Premium Pack" }
  ]
};

try {
  const response = await paymentsApi.createPayment(requestObj);
  console.log(response);
} catch (error) {
  console.error(error);
}&lt;/LI-CODE&gt;&lt;P&gt;The error I get is a 400 bad request and signature mismatch. Am I missing any special encoding step for custom metadata fields or is there a known issue with including descriptive text in merchant defined data when using the CyberSource API How should custom fields like this be encoded or included so the request is accepted&lt;/P&gt;</description>
      <pubDate>Thu, 01 Jan 2026 19:44:42 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Issue-with-JSON-Payload-Encoding-When-Sending-roblaxmod-Metadata/m-p/94797#M58618</guid>
      <dc:creator>RoblaxMod</dc:creator>
      <dc:date>2026-01-01T19:44:42Z</dc:date>
    </item>
    <item>
      <title>Re: Issue with JSON Payload Encoding When Sending roblaxmod Metadata to CyberSource API</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Issue-with-JSON-Payload-Encoding-When-Sending-roblaxmod-Metadata/m-p/94838#M58634</link>
      <description>&lt;P&gt;This is usually not an issue with CyberSource rejecting descriptive text, but with &lt;STRONG&gt;request signing and merchantDefinedInformation validation&lt;/STRONG&gt;.&lt;/P&gt;&lt;P&gt;Make sure you are using key instead of name in merchantDefinedInformation, keep values under &lt;STRONG&gt;255 characters&lt;/STRONG&gt;, and ensure everything is &lt;STRONG&gt;UTF-8 encoded&lt;/STRONG&gt;.&lt;/P&gt;&lt;P&gt;CyberSource signs the &lt;STRONG&gt;exact request payload&lt;/STRONG&gt;, so any change caused by JSON re-stringifying, special characters, or middleware modifying the body will result in a &lt;STRONG&gt;400 signature mismatch&lt;/STRONG&gt;.&lt;/P&gt;&lt;P&gt;Keeping custom metadata short and letting the CyberSource SDK handle signing resolves this in most Node.js integrations.&lt;/P&gt;&lt;P&gt;I faced the same issue during one of my projects&amp;nbsp;&lt;STRONG&gt;&lt;A class="" href="https://hisab-ul-umar.com" target="_new" rel="noopener"&gt;http://hisab-ul-umar.com&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 09 Jan 2026 07:47:32 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Issue-with-JSON-Payload-Encoding-When-Sending-roblaxmod-Metadata/m-p/94838#M58634</guid>
      <dc:creator>alario</dc:creator>
      <dc:date>2026-01-09T07:47:32Z</dc:date>
    </item>
    <item>
      <title>Re: Issue with JSON Payload Encoding When Sending roblaxmod Metadata to CyberSource API</title>
      <link>https://community.developer.cybersource.com/t5/Integration-and-Testing/Issue-with-JSON-Payload-Encoding-When-Sending-roblaxmod-Metadata/m-p/95112#M58760</link>
      <description>&lt;P&gt;A 400 Bad Request with a signature mismatch in the CyberSource API usually means the request you sent does not exactly match the string used to generate the signature, especially when custom merchant-defined data is included. You don’t need any special handling for text like “&lt;A href="https://deltaexecutorss.com/" target="_self"&gt;Roblox delta mod apk&lt;/A&gt;,” but you must ensure it is encoded consistently in UTF-8 and matches perfectly between the signed string and the actual request payload. Even small differences such as extra spaces, missing fields, or unescaped characters can break the signature. If you are using form-urlencoded data, special characters and spaces should be properly encoded, and all merchant-defined fields must be included in the signed field list exactly as sent.&lt;/P&gt;</description>
      <pubDate>Thu, 16 Apr 2026 05:11:16 GMT</pubDate>
      <guid>https://community.developer.cybersource.com/t5/Integration-and-Testing/Issue-with-JSON-Payload-Encoding-When-Sending-roblaxmod-Metadata/m-p/95112#M58760</guid>
      <dc:creator>magistvgratisap</dc:creator>
      <dc:date>2026-04-16T05:11:16Z</dc:date>
    </item>
  </channel>
</rss>

