How to Fix Dynamic Pricing Errors

Dynamic Pricing allows merchants to pass pricing options to a CCBill payment form without creating fixed price points in the Pricing Admin.

Merchants must ensure that the variables and values passed to the payment form are accurate and in the correct format. In addition, the subaccount and payment form used to facilitate the transaction need to be configured for Dynamic Pricing.

Refer to the Dynamic Pricing User Guide for a complete overview of Dynamic Pricing variables and settings.

CCBill’s system returns error codes if a dynamic pricing option cannot be generated on the payment form. Error codes and messages are designed to help merchants identify and resolve potential issues.

Dynamic Pricing Error Codes (FlexForms)

The 500 error code is a generic FlexForms error that can occur when passing dynamic pricing variables. It indicates that the parameters in the request string are incorrect or incomplete.

FlexForms 500 Error Code Message


To troubleshoot the dynamic pricing 500 error code:

1. Check Dynamic Pricing Variables

A dynamic pricing request includes multiple variables and values. For example, this request string for a recurring price point contains 8 different parameters:

https://api.ccbill.com/wap-frontflex/flexforms/687fa3e0-e60d-4466-88e2-181fa56dd6a9?clientSubacc=0000&initialPrice=10.00&initialPeriod=30&recurringPrice=10.00&recurringPeriod=30&numRebills=99&currencyCode=840&formDigest=48f0b12e4307e64edb781c479665c899

Solution: Use the Dynamic Pricing guide to check if your request contains all the expected parameters and confirm that their values are in the correct format.

2. Check MD5 Hash

The value for the formDigest parameter is created by joining and hashing multiple variables, including your CCBill Encryption Key (Salt).

https://api.ccbill.com/wap-frontflex/flexforms/687fa3e0-e60d-4466-88e2-181fa56dd6a9?clientSubacc=0000&initialPrice=10.00&initialPeriod=30&recurringPrice=10.00&recurringPeriod=30&numRebills=99&currencyCode=840&formDigest=48f0b12e4307e64edb781c479665c899

Solution: Check the parameters used to create the MD5 Hash and, if necessary, create a new formDigest value.

3. Enable Dynamic Pricing on Payment Form

The FlexForms system awards each payment flow a unique ID.

Flex ID in the Admin Portal.


The Flex ID is the first value included in each Dynamic Pricing request.

https://api.ccbill.com/wap-frontflex/flexforms/687fa3e0-e60d-4466-88e2-181fa56dd6a9?clientSubacc=0000&initialPrice=10.00&initialPeriod=30&recurringPrice=10.00&recurringPeriod=30&numRebills=99&currencyCode=840&formDigest=48f0b12e4307e64edb781c479665c899

Solution: Dynamic pricing needs to be enabled on payment forms used for the transaction.

To confirm that Dynamic Pricing is enabled on a payment form:

1. Access the Admin Portal.

2. Set the subaccount dropdown menu to All.

3. Select FlexForms Systems.

4. Click FlexForms Payment Links.

Access FlexForms menu in CCBill Admin.


5. Expand the payment flow menu. Use the Flex ID to identify the flow you want to use for dynamic pricing transactions.

Flex ID in FlexForms menu in Admin.


6. Select the payment flow Primary tile.

Primary tile in FlexForms flow.


7. Click Modify This Form.

Modify form in FlexForms payment flow.


8. Select Pricing.

9. Check the Allow for Dynamic Prices to be passed to form box.

10. Click Save Property.

11. Close the FlexForms Editor window.

Enable Dynamic Pricing on FlexForm.


12. Click Save on the Primary tile window.

Save payment flow setting in FlexForms.


Promote the payment flow to Live and resend the dynamic pricing string to confirm the price is displayed on the payment form.

4. Contact Merchant Support

If you keep receiving a 500 error even after you have explored all possible solutions, please contact CCBill Merchant Support.

Our support services are available 24/7 and will investigate the issue and assist with further troubleshooting.

Dynamic Pricing Error Codes (JPost)


ERROR CODEERRORSOLUTION
Invalid DigestThe value for the formDigest variable is incorrect.Check the parameters used to create the MD5 Hash and create a new formDigest value if necessary.
Invalid Request (1)The request is missing the clientAccnum, clientSubacc, or formName variable.Confirm that the clientAccnum, clientSubacc, and formName variables are present and that their values are in the correct format.
Invalid Request (2)A temporary database connection error.Wait for a few moments and resend the dynamic pricing request.
Invalid Request (6)The payment form is not properly setup for Dynamic Pricing.Confirm that the payment form is configured for Dynamic Pricing and review subaccount settings.