{"id":8020,"date":"2023-04-24T09:51:24","date_gmt":"2023-04-24T09:51:24","guid":{"rendered":"https:\/\/ccbill.com\/doc\/?p=8020"},"modified":"2023-07-10T16:44:50","modified_gmt":"2023-07-10T16:44:50","slug":"formdigest-value","status":"publish","type":"post","link":"https:\/\/ccbill.com\/doc\/formdigest-value","title":{"rendered":"How to Create the formDigest Value"},"content":{"rendered":"\n<p>The <strong>formDigest<\/strong> variable is a required parameter for <a href=\"https:\/\/ccbill.com\/doc\/dynamic-pricing-user-guide\" target=\"_blank\" rel=\"noreferrer noopener\">Dynamic Pricing<\/a> requests. Merchants need to link multiple variable values in a character string and then utilize an MD5 hash generator to create an encrypted <strong>formDigest<\/strong> value.<\/p>\n\n\n\n<p>The parameters necessary for creating <strong>formDigest <\/strong>values differ depending on the payment form system (FlexForms or JPost) and the pricing option (non-recurring or recurring) being passed.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Create formDigest Value - FlexForms<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Single Billing Transactions<\/h3>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<p>Use the following parameters and values, in the order they are listed, to generate a single billing formDigest for FlexForms:<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table><thead><tr><th class=\"has-text-align-center\" data-align=\"center\"><\/th><th class=\"has-text-align-center\" data-align=\"center\">VARIABLE<\/th><th class=\"has-text-align-center\" data-align=\"center\">DESCRIPTION<\/th><th class=\"has-text-align-center\" data-align=\"center\">EXAMPLE VALUE<\/th><\/tr><\/thead><tbody><tr><td class=\"has-text-align-center\" data-align=\"center\">1.<\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>initialPrice<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">A decimal value (two decimals) representing the initial price.<\/td><td class=\"has-text-align-center\" data-align=\"center\">10.00<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">2.<\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>initialPeriod<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">An integer representing the length, in days, of the initial billing period. By default, the value for non-recurring prices is between 2 and 365.<\/td><td class=\"has-text-align-center\" data-align=\"center\">30<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">3.<\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>currencyCode<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">An integer representing the 3-digit currency code that will be used for the transaction.<\/td><td class=\"has-text-align-center\" data-align=\"center\">USD - <strong>840<\/strong><br>EUR - <strong>978<\/strong><br>GBP - <strong>826<\/strong><br>CAD - <strong>124<\/strong><br>AUD - <strong>036<\/strong><br>JPY - <strong>392<\/strong><\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">4.<\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>Encryption Key (Salt)<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">A unique encryption key created by the Merchant Support team. You can retrieve the <a href=\"https:\/\/ccbill.com\/doc\/encryption-key-salt\" target=\"_blank\" rel=\"noreferrer noopener\">Encryption\/Salt Key<\/a> from the CCBill Admin.<\/td><td class=\"has-text-align-center\" data-align=\"center\">7d901dad245fd0ff6bc20d06<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<p>Before being hashed, the formDigest string should have the following format:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\">10.00308407d901dad245fd0ff6bc20d06<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n<div class=\"notice-note\">\n<div class=\"notice-text\"><p>The string was created using the example values from the table above.<\/p>\n<\/div>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<p>CCBill does not provide an MD5 hash generator. Use a web-based hashing tool, like <a href=\"http:\/\/www.miraclesalad.com\/webtools\/md5.php\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">http:\/\/www.miraclesalad.com\/webtools\/md5.php<\/a>, to create an MD5 hash of the character string.<\/p>\n\n\n\n<p>After the hashing process is complete, the new string represents the formDigest value:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\">a7459445d0e5dc0963fe736dc5cf900b<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<p>Append the hashed value to the formDigest parameter:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\">formDigest=a7459445d0e5dc0963fe736dc5cf900b<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<p>An example of a non-recurring FlexForms Dynamic Price request includes the following variables:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\">https:\/\/api.ccbill.com\/wap-frontflex\/flexforms\/687fa3e0-e60d-4466-88e2-181fa56dd6a9?clientSubacc=0000&amp;initialPrice=10.00&amp;initialPeriod=30&amp;currencyCode=840&amp;formDigest=a7459445d0e5dc0963fe736dc5cf900b<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Recurring Transactions<\/h3>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<p>For <strong>recurring transactions<\/strong>, use the following values in the order they are listed:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table><thead><tr><th class=\"has-text-align-center\" data-align=\"center\"><\/th><th class=\"has-text-align-center\" data-align=\"center\">VARIABLE<\/th><th class=\"has-text-align-center\" data-align=\"center\">DESCRIPTION<\/th><th class=\"has-text-align-center\" data-align=\"center\">EXAMPLE VALUE<\/th><\/tr><\/thead><tbody><tr><td class=\"has-text-align-center\" data-align=\"center\">1.<\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>initialPrice<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">A decimal value (two decimals) representing the initial price.<\/td><td class=\"has-text-align-center\" data-align=\"center\">10.00<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">2.<\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>initialPeriod<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">An integer representing the length, in days, of the initial billing period. By default, the value for non-recurring prices is between 2 and 365.<\/td><td class=\"has-text-align-center\" data-align=\"center\">30<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">3.<\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>recurringPrice<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">A decimal value (two decimals) representing the recurring price.<\/td><td class=\"has-text-align-center\" data-align=\"center\">10.00<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">4.<\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>recurringPeriod<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">An integer representing the length, in days, of the recurring billing period. The default values for recurring prices are 30, 60, and 90.<\/td><td class=\"has-text-align-center\" data-align=\"center\">30<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">5.<\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>numRebills<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">An integer number of rebills. The default value for recurring prices is 99.<\/td><td class=\"has-text-align-center\" data-align=\"center\">99<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">6.<\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>currencyCode<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">An integer representing the 3-digit currency code that will be used for the transaction.<\/td><td class=\"has-text-align-center\" data-align=\"center\">USD - <strong>840<\/strong><br>EUR - <strong>978<\/strong><br>GBP - <strong>826<\/strong><br>CAD - <strong>124<\/strong><br>AUD - <strong>036<\/strong><br>JPY - <strong>392<\/strong><\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">7.<\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>Encryption Key (Salt)<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">A unique encryption key created by the Merchant Support team. You can retrieve the <a href=\"https:\/\/ccbill.com\/doc\/encryption-key-salt\" target=\"_blank\" rel=\"noreferrer noopener\">Encryption\/Salt Key<\/a> from the CCBill Admin.<\/td><td class=\"has-text-align-center\" data-align=\"center\">7d901dad245fd0ff6bc20d06<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<p>Prior to being hashed, the recurring price string looks like this:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\">10.003010.0030998407d901dad245fd0ff6bc20d06<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n<div class=\"notice-note\">\n<div class=\"notice-text\"><p>The string was created using the example values from the table above.<\/p>\n<\/div>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<p>CCBill does not provide an MD5 hash generator. Use a web-based hashing tool, like <a href=\"http:\/\/www.miraclesalad.com\/webtools\/md5.php\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">http:\/\/www.miraclesalad.com\/webtools\/md5.php<\/a>, to create an MD5 hash of the character string.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<p>After the hashing process is complete, the new string represents the formDigest value:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\">48f0b12e4307e64edb781c479665c899<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<p>Append the hashed value to the formDigest parameter:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\">formDigest=48f0b12e4307e64edb781c479665c899<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<p>This is an example of a recurring FlexForms Dynamic Price request:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\">https:\/\/api.ccbill.com\/wap-frontflex\/flexforms\/687fa3e0-e60d-4466-88e2-181fa56dd6a9?clientSubacc=0000&amp;initialPrice=10.00&amp;initialPeriod=30&amp;recurringPrice=10.00&amp;recurringPeriod=30&amp;numRebills=99&amp;currencyCode=840&amp;formDigest=48f0b12e4307e64edb781c479665c899<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<p>If you encounter a generic <strong><em>500 error message<\/em><\/strong> error when passing variables in FlexForms, read our detailed guide for <a href=\"https:\/\/ccbill.com\/doc\/dynamic-pricing-errors\" target=\"_blank\" rel=\"noreferrer noopener\">troubleshooting dynamic pricing errors<\/a>. <\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Create formDigest Value - JPost<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Single Billing Transactions<\/h3>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<p>Use the following values, in the order they are listed, to generate a formDigest for a non-recurring price for JPost forms:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table><thead><tr><th class=\"has-text-align-center\" data-align=\"center\"><\/th><th class=\"has-text-align-center\" data-align=\"center\">VARIABLE<\/th><th class=\"has-text-align-center\" data-align=\"center\">DESCRIPTION<\/th><th class=\"has-text-align-center\" data-align=\"center\">EXAMPLE VALUE<\/th><\/tr><\/thead><tbody><tr><td class=\"has-text-align-center\" data-align=\"center\">1.<\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>formPrice<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">A decimal value (two decimals) representing the initial price.<\/td><td class=\"has-text-align-center\" data-align=\"center\">10.00<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">2.<\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>formPeriod<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">An integer representing the length, in days, of the initial billing period. By default, the value for non-recurring prices is between 2 and 365.<\/td><td class=\"has-text-align-center\" data-align=\"center\">30<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">3.<\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>currencyCode<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">An integer representing the 3-digit currency code that will be used for the transaction.<\/td><td class=\"has-text-align-center\" data-align=\"center\">USD - <strong>840<\/strong><br>EUR - <strong>978<\/strong><br>GBP - <strong>826<\/strong><br>CAD - <strong>124<\/strong><br>AUD - <strong>036<\/strong><br>JPY - <strong>392<\/strong><\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">4.<\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>Encryption Key (Salt)<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">A unique encryption key created by the Merchant Support team. You can retrieve the <a href=\"https:\/\/ccbill.com\/doc\/encryption-key-salt\" target=\"_blank\" rel=\"noreferrer noopener\">Encryption\/Salt Key<\/a> from the CCBill Admin.<\/td><td class=\"has-text-align-center\" data-align=\"center\">7d901dad245fd0ff6bc20d06<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<p>Before being hashed, the formDigest string should have the following format:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\">10.00308407d901dad245fd0ff6bc20d06<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n<div class=\"notice-note\">\n<div class=\"notice-text\"><p>The string was created using the example values from the table above.<\/p>\n<\/div>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<p>CCBill does not provide an MD5 hash generator. Use a web-based hashing tool, like <a href=\"http:\/\/www.miraclesalad.com\/webtools\/md5.php\" target=\"_blank\" rel=\"noreferrer noopener\">http:\/\/www.miraclesalad.com\/webtools\/md5.php<\/a>, to create an MD5 hash of the character string.<\/p>\n\n\n\n<p>After the hashing process is complete, the new string represents the formDigest value:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\">a7459445d0e5dc0963fe736dc5cf900b<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<p>Append the hashed value to the formDigest parameter:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\">formDigest=a7459445d0e5dc0963fe736dc5cf900b<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<p>An example of a non-recurring FlexForms Dynamic Price request includes the following variables:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\">https:\/\/bill.ccbill.com\/jpost\/signup.cgi?clientAccnum=929487&amp;clientSubacc=1337&amp;formName=104cc&amp;formPrice=10.00&amp;formPeriod=30&amp;currencyCode=840&amp;formDigest=a7459445d0e5dc0963fe736dc5cf900b<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Recurring Transactions<\/h3>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<p>For <strong>recurring transactions<\/strong>, use the following values in the order they are listed:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table><thead><tr><th class=\"has-text-align-center\" data-align=\"center\"><\/th><th class=\"has-text-align-center\" data-align=\"center\">VARIABLE<\/th><th class=\"has-text-align-center\" data-align=\"center\">DESCRIPTION<\/th><th class=\"has-text-align-center\" data-align=\"center\">EXAMPLE VALUE<\/th><\/tr><\/thead><tbody><tr><td class=\"has-text-align-center\" data-align=\"center\">1.<\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>formPrice<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">A decimal value (two decimals) representing the initial price.<\/td><td class=\"has-text-align-center\" data-align=\"center\">10.00<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">2.<\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>formPeriod<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">An integer representing the length, in days, of the initial billing period. By default, the value for non-recurring prices is between 2 and 365.<\/td><td class=\"has-text-align-center\" data-align=\"center\">30<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">3.<\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>formrecurringPrice<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">A decimal value (two decimals) representing the recurring price.<\/td><td class=\"has-text-align-center\" data-align=\"center\">10.00<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">4.<\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>formrecurringPeriod<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">An integer representing the length, in days, of the recurring billing period. The default values for recurring prices are 30, 60, and 90.<\/td><td class=\"has-text-align-center\" data-align=\"center\">30<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">5.<\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>formRebills<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">An integer number of rebills. The default value for recurring prices is 99.<\/td><td class=\"has-text-align-center\" data-align=\"center\">99<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">6.<\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>currencyCode<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">An integer representing the 3-digit currency code that will be used for the transaction.<\/td><td class=\"has-text-align-center\" data-align=\"center\">USD - <strong>840<\/strong><br>EUR - <strong>978<\/strong><br>GBP - <strong>826<\/strong><br>CAD - <strong>124<\/strong><br>AUD - <strong>036<\/strong><br>JPY - <strong>392<\/strong><\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">7.<\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>Encryption Key (Salt)<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\">A unique encryption key created by the Merchant Support team. You can retrieve the Encryption\/Salt Key from the CCBill Admin.<\/td><td class=\"has-text-align-center\" data-align=\"center\">7d901dad245fd0ff6bc20d06<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<p>Prior to being hashed, the recurring price string looks like this:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\">10.003010.0030998407d901dad245fd0ff6bc20d06<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n<div class=\"notice-note\">\n<div class=\"notice-text\"><p>The string was created using the example values from the table above.<\/p>\n<\/div>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<p>CCBill does not provide an MD5 hash generator. Use a web-based hashing tool, like <a href=\"http:\/\/www.miraclesalad.com\/webtools\/md5.php\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">http:\/\/www.miraclesalad.com\/webtools\/md5.php<\/a>, to create an MD5 hash of the character string.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<p>After the hashing process is complete, the new string represents the formDigest value:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\">48f0b12e4307e64edb781c479665c899<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<p>Append the hashed value to the formDigest parameter:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\">formDigest=48f0b12e4307e64edb781c479665c899<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<p>This is an example of a recurring FlexForms Dynamic Price request:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\">https:\/\/bill.ccbill.com\/jpost\/signup.cgi?clientAccnum=923130&amp;clientSubacc=0000&amp;formName=26cc&amp;formPrice=10.00&amp;formPeriod=30&amp;formRecurringPrice=10.00&amp;formRecurringPeriod=30&amp;formRebills=99&amp;currencyCode=840&amp;formDigest=48f0b12e4307e64edb781c479665c899<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n\n\n\n<p>If you receive an <strong><em>Invalid Digest<\/em><\/strong> error message when passing variables to your payment form, fix the issue by reading our guide for <a href=\"https:\/\/ccbill.com\/doc\/dynamic-pricing-errors\" target=\"_blank\" rel=\"noreferrer noopener\">troubleshooting dynamic pricing errors<\/a>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-white-color has-alpha-channel-opacity has-white-background-color has-background\"\/>\n","protected":false},"excerpt":{"rendered":"<p>This comprehensive guide explains how to create the formDigest variable for Dynamic Pricing requests.<\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"kk_blocks_editor_width":"","_kiokenblocks_attr":"","_kiokenblocks_dimensions":"","footnotes":""},"categories":[46],"tags":[],"class_list":["post-8020","post","type-post","status-publish","format-standard","hentry","category-admin-portal"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.0 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How to Create the formDigest Value | CCBill Doc<\/title>\n<meta name=\"description\" content=\"Learn how to generate the formDigest value and pass dynamic pricing parameters prices directly to your payment forms.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/ccbill.com\/doc\/formdigest-value\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Create the formDigest Value | CCBill Doc\" \/>\n<meta property=\"og:description\" content=\"Learn how to generate the formDigest value and pass dynamic pricing parameters prices directly to your payment forms.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/ccbill.com\/doc\/formdigest-value\" \/>\n<meta property=\"og:site_name\" content=\"CCBill Doc\" \/>\n<meta property=\"article:published_time\" content=\"2023-04-24T09:51:24+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-07-10T16:44:50+00:00\" \/>\n<meta name=\"author\" content=\"Vladimir Kaplarevic\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Vladimir Kaplarevic\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/ccbill.com\/doc\/formdigest-value\",\"url\":\"https:\/\/ccbill.com\/doc\/formdigest-value\",\"name\":\"How to Create the formDigest Value | CCBill Doc\",\"isPartOf\":{\"@id\":\"https:\/\/ccbill.com\/doc\/#website\"},\"datePublished\":\"2023-04-24T09:51:24+00:00\",\"dateModified\":\"2023-07-10T16:44:50+00:00\",\"author\":{\"@id\":\"https:\/\/ccbill.com\/doc\/#\/schema\/person\/2cc5b50e34ee63ed498ac333a25840ad\"},\"description\":\"Learn how to generate the formDigest value and pass dynamic pricing parameters prices directly to your payment forms.\",\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/ccbill.com\/doc\/formdigest-value\"]}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/ccbill.com\/doc\/#website\",\"url\":\"https:\/\/ccbill.com\/doc\/\",\"name\":\"CCBill Doc\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/ccbill.com\/doc\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/ccbill.com\/doc\/#\/schema\/person\/2cc5b50e34ee63ed498ac333a25840ad\",\"name\":\"Vladimir Kaplarevic\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/ccbill.com\/doc\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/8d4609e99e6aecc69ce049e18d45f033?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/8d4609e99e6aecc69ce049e18d45f033?s=96&d=mm&r=g\",\"caption\":\"Vladimir Kaplarevic\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to Create the formDigest Value | CCBill Doc","description":"Learn how to generate the formDigest value and pass dynamic pricing parameters prices directly to your payment forms.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/ccbill.com\/doc\/formdigest-value","og_locale":"en_US","og_type":"article","og_title":"How to Create the formDigest Value | CCBill Doc","og_description":"Learn how to generate the formDigest value and pass dynamic pricing parameters prices directly to your payment forms.","og_url":"https:\/\/ccbill.com\/doc\/formdigest-value","og_site_name":"CCBill Doc","article_published_time":"2023-04-24T09:51:24+00:00","article_modified_time":"2023-07-10T16:44:50+00:00","author":"Vladimir Kaplarevic","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Vladimir Kaplarevic","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/ccbill.com\/doc\/formdigest-value","url":"https:\/\/ccbill.com\/doc\/formdigest-value","name":"How to Create the formDigest Value | CCBill Doc","isPartOf":{"@id":"https:\/\/ccbill.com\/doc\/#website"},"datePublished":"2023-04-24T09:51:24+00:00","dateModified":"2023-07-10T16:44:50+00:00","author":{"@id":"https:\/\/ccbill.com\/doc\/#\/schema\/person\/2cc5b50e34ee63ed498ac333a25840ad"},"description":"Learn how to generate the formDigest value and pass dynamic pricing parameters prices directly to your payment forms.","inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/ccbill.com\/doc\/formdigest-value"]}]},{"@type":"WebSite","@id":"https:\/\/ccbill.com\/doc\/#website","url":"https:\/\/ccbill.com\/doc\/","name":"CCBill Doc","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/ccbill.com\/doc\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/ccbill.com\/doc\/#\/schema\/person\/2cc5b50e34ee63ed498ac333a25840ad","name":"Vladimir Kaplarevic","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ccbill.com\/doc\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/8d4609e99e6aecc69ce049e18d45f033?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/8d4609e99e6aecc69ce049e18d45f033?s=96&d=mm&r=g","caption":"Vladimir Kaplarevic"}}]}},"_links":{"self":[{"href":"https:\/\/ccbill.com\/doc\/wp-json\/wp\/v2\/posts\/8020"}],"collection":[{"href":"https:\/\/ccbill.com\/doc\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ccbill.com\/doc\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ccbill.com\/doc\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/ccbill.com\/doc\/wp-json\/wp\/v2\/comments?post=8020"}],"version-history":[{"count":34,"href":"https:\/\/ccbill.com\/doc\/wp-json\/wp\/v2\/posts\/8020\/revisions"}],"predecessor-version":[{"id":8292,"href":"https:\/\/ccbill.com\/doc\/wp-json\/wp\/v2\/posts\/8020\/revisions\/8292"}],"wp:attachment":[{"href":"https:\/\/ccbill.com\/doc\/wp-json\/wp\/v2\/media?parent=8020"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ccbill.com\/doc\/wp-json\/wp\/v2\/categories?post=8020"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ccbill.com\/doc\/wp-json\/wp\/v2\/tags?post=8020"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}