{"id":6612,"date":"2023-02-28T15:13:22","date_gmt":"2023-02-28T15:13:22","guid":{"rendered":"https:\/\/ccbill.com\/doc\/?p=6612"},"modified":"2026-02-05T12:36:53","modified_gmt":"2026-02-05T12:36:53","slug":"ccbill-restful-transaction-api","status":"publish","type":"post","link":"https:\/\/ccbill.com\/doc\/ccbill-restful-transaction-api","title":{"rendered":"CCBill RESTful Transaction API"},"content":{"rendered":"\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-1 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\"><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-2 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<p>The primary function of CCBill's RESTful API is to enable merchants to <a href=\"https:\/\/ccbill.com\/kb\/credit-card-tokenization\" target=\"_blank\" rel=\"noreferrer noopener\">create payment tokens<\/a> and use them to charge customers. <\/p>\n\n\n\n<p>CCBill's RESTful API allows you to take full advantage of CCBill's payment platform without utilizing CCBill's <a href=\"https:\/\/ccbill.com\/kb\/hosted-payment-pages\" target=\"_blank\" rel=\"noreferrer noopener\">hosted payment forms<\/a>. <\/p>\n\n\n\n<p>With the API, you only need to ask customers for payment information once. For any subsequent transactions, you can use their tokenized data.<\/p>\n\n\n\n<p>You can develop customer-facing and backend applications to access RESTful API resources programmatically and seamlessly integrate CCBill's payment processing solutions into payment flows. <\/p>\n\n\n\n<p>Use the RESTful API to deliver an engaging and frictionless checkout experience regardless of the device or platform the customer is using.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-3 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<h2 class=\"wp-block-heading\" id=\"getting-started-ccbill-widget\">Getting Started<\/h2>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-4 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<p>Merchants need to build apps that capture customer payment data and send structured <a href=\"https:\/\/ccbill.com\/kb\/what-is-an-api-call\" target=\"_blank\" rel=\"noreferrer noopener\">API calls<\/a> to CCBill RESTful <a href=\"https:\/\/ccbill.com\/kb\/what-is-an-api-endpoint\" target=\"_blank\" rel=\"noreferrer noopener\">API endpoints<\/a>. The API requests must be structured according to the CCBill RESTful API documentation.<br><\/p>\n\n\n\n<p>Before proceeding with the <a href=\"https:\/\/ccbill.com\/kb\/what-is-api-integration\" target=\"_blank\" rel=\"noreferrer noopener\">API integration<\/a>, merchants must open a payment processing account and register their apps with CCBill.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-5 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<h3 class=\"wp-block-heading\" id=\"open-ccbill-merchant-account\">1. Open a CCBill Merchant Account<\/h3>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-6 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<p>If you do not have a CCBill Merchant account, contact <a href=\"https:\/\/ccbill.com\/contact\" target=\"_blank\" rel=\"noreferrer noopener\">CCBill Sales<\/a> or use the <a href=\"https:\/\/ccbill.com\/merchants\" target=\"_blank\" rel=\"noreferrer noopener\">APPLY NOW<\/a> button on our website.<\/p>\n\n\n\n<p>CCBill employs a dedicated team of professionals to assist merchants and ensure that the onboarding process is completed with minimal friction. <\/p>\n\n\n\n<p>The <a href=\"https:\/\/ccbill.com\/contact\" target=\"_blank\" rel=\"noreferrer noopener\">Merchant Support Service<\/a> is available 24\/7 and offers complete technical and administrative support regarding CCBill services.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<h3 class=\"wp-block-heading\" id=\"register-app-ccbill\">2. Register App with CCBill<\/h3>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<p>Before accessing the API, you need to register your application with <a href=\"https:\/\/ccbill.com\/contact\" target=\"_blank\" rel=\"noreferrer noopener\">CCBill Merchant Support<\/a> and inform them you need a RESTful API setup on your merchant account.<\/p>\n\n\n\n<p>Once the setup and registration are complete, the Merchant Support team will provide <strong>frontend <\/strong>and<strong> backend credentials<\/strong>.<\/p>\n\n\n\n<p>These credentials are required to generate <a href=\"https:\/\/ccbill.com\/kb\/authorization-bearer\" target=\"_blank\" rel=\"noreferrer noopener\">OAuth bearer tokens<\/a> to authenticate and authorize your API requests. <\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"750\" height=\"249\" src=\"https:\/\/ccbill.com\/doc\/wp-content\/uploads\/2025\/02\/frontend-backend-credentials-api.png\" alt=\"Example of CCBill API credentials.\" class=\"wp-image-10068\" srcset=\"https:\/\/ccbill.com\/doc\/wp-content\/uploads\/2025\/02\/frontend-backend-credentials-api.png 750w, https:\/\/ccbill.com\/doc\/wp-content\/uploads\/2025\/02\/frontend-backend-credentials-api-300x100.png 300w\" sizes=\"(max-width: 750px) 100vw, 750px\" \/><\/figure>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>In addition, the support team will set up a test account that allows you to test API calls and responses and optimize the RESTful API integration before going live.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<h2 class=\"wp-block-heading\" id=\"ccbill-api-payment-flow\">The Payment Flow<\/h2>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-10 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<h3 class=\"wp-block-heading\" id=\"payment-information\">1. Provide Payment Information<\/h3>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-11 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<p>Customer payment details (such as the credit card number, expiration date, cardholder name, etc.) must be collected through a payment form.<\/p>\n\n\n\n<p>Merchants can design custom payment forms and apps to capture this information and then forward the data in an API request to the correct endpoint.<\/p>\n\n\n<div class=\"notice-note\">\n<div class=\"notice-text\"><p>To comply with banking regulations, your payment forms must display card logos for the accepted card schemes and payment methods.<\/p>\n<\/div>\n<\/div>\n\n\n\n<p>The CCBill RESTful API uses the captured data to create a unique payment token.<\/p>\n\n\n\n<div class=\"wp-block-kioken-accordion kioken-accordion-2\">\n<div class=\"wp-block-kioken-accordion-item kioken-accordion-item kioken-accordion-item-active\"><a href=\"#accordionpayment-information-best-security-practices\" class=\"kioken-accordion-item-heading\"><span class=\"kioken-accordion-item-label\"><strong>Payment Information<\/strong> <strong>Best Security Practices<\/strong><\/span><span class=\"kioken-accordion-item-collapse\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\"><path d=\"M12 5a1 1 0 0 1 1 1v5h5a1 1 0 1 1 0 2h-5v5a1 1 0 1 1-2 0v-5H6a1 1 0 1 1 0-2h5V6a1 1 0 0 1 1-1z\" fill=\"currentColor\" fill-rule=\"evenodd\"><\/path><\/svg><\/span><\/a><div class=\"kioken-accordion-item-content\">\n<ul class=\"wp-block-list\">\n<li><strong>Do not process raw card details on your server.<\/strong> To remain <a href=\"https:\/\/ccbill.com\/kb\/what-is-pci-compliance\" target=\"_blank\" rel=\"noreferrer noopener\">PCI-DSS compliant<\/a>, send payment details directly to CCBill without storing or logging them.<\/li>\n\n\n\n<li><strong>Validate input fields.<\/strong> Ensure that credit card numbers, expiration dates, and CVVs follow CCBill's validation rules.<\/li>\n<\/ul>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-kioken-accordion-item kioken-accordion-item\"><a href=\"#accordionall-form-fields\" class=\"kioken-accordion-item-heading\"><span class=\"kioken-accordion-item-label\"><strong>All Form Fields<\/strong><\/span><span class=\"kioken-accordion-item-collapse\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\"><path d=\"M12 5a1 1 0 0 1 1 1v5h5a1 1 0 1 1 0 2h-5v5a1 1 0 1 1-2 0v-5H6a1 1 0 1 1 0-2h5V6a1 1 0 0 1 1-1z\" fill=\"currentColor\" fill-rule=\"evenodd\"><\/path><\/svg><\/span><\/a><div class=\"kioken-accordion-item-content\">\n<p><\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table class=\"has-fixed-layout\"><thead><tr><th class=\"has-text-align-center\" data-align=\"center\">NAME<\/th><th>DESCRIPTION<\/th><\/tr><\/thead><tbody><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>firstName<\/strong><\/td><td>Customer's first name.<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>lastName<\/strong><\/td><td>Customer's last name.<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>currencyCode<\/strong><\/td><td>A three-digit currency code (<a href=\"https:\/\/www.iso.org\/obp\/ui\/#search\/code\/\">ISO 4217 standard<\/a>) for the currency used in the transaction.<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>amount<\/strong><\/td><td>Transaction total. Should be value greater than <strong>0<\/strong>.<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>address1<\/strong><\/td><td>Customer's billing address. If provided, it should be between <strong>1<\/strong> and <strong>50<\/strong> characters long.<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>address2<\/strong><\/td><td>Customer's address (line 2). If provided, it should be between <strong>1<\/strong> and <strong>50<\/strong> characters long.<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>postalCode<\/strong><\/td><td>Customer's billing zip code. It should be a valid zip code between <strong>1<\/strong> and <strong>16<\/strong> characters long.<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>city<\/strong><\/td><td>Customer's billing city. If provided, it should be between <strong>1<\/strong> and <strong>50<\/strong> characters long.<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>state<\/strong><\/td><td>Customer's billing state. If provided, it should be between <strong>1<\/strong> and <strong>3<\/strong> characters long.<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>country<\/strong><\/td><td>Customer's billing country. Should be a two-letter country code as defined in <a href=\"https:\/\/www.iso.org\/obp\/ui\/#iso:std:iso:3166:-1:ed-4:v1:en\">ISO 3166-1<\/a>.<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>email<\/strong><\/td><td>Customer's email. Should be a well-formed email address, <strong>max 254<\/strong> characters long.<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>phoneNumber<\/strong><\/td><td>Customer's phone number. If provided, it should be a well-formed phone number.<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>ipAddress<\/strong><\/td><td>Customer's IP address.<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>browserHttpUserAgent<\/strong><\/td><td>Browser User-Agent header value.<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>browserHttpAccept<\/strong><\/td><td>Browser Accept header value.<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>browserHttpAcceptEncoding<\/strong><\/td><td>Browser Accept Encoding header value.<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>browserHttpAcceptLanguate<\/strong><\/td><td>Browser Accept Language header value.<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>cardNumber<\/strong><\/td><td>A valid credit card number.<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>expMonth<\/strong><\/td><td>Credit card expiration month in <strong><em>mm<\/em><\/strong> format. Should be a value between <strong>1<\/strong> and <strong>12<\/strong>.<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>expYear<\/strong><\/td><td>Credit card expiration year in <strong><em>yyyy<\/em><\/strong> format. Should be a value between <strong>current year<\/strong> and <strong>2100<\/strong>.<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>cvv2<\/strong><\/td><td>Card security code. Should be a <strong>3-4 digit value<\/strong>.<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>nameOnCard<\/strong><\/td><td>Name displayed on the credit card. Should be between <strong>2<\/strong> and <strong>45<\/strong> characters long.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p><\/p>\n<\/div><\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\">\n<p class=\"code-header\">HTML Example<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#263238\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#EEFFFF;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>&lt;form id=\"payment-form\"> \n    &lt;input data-ccbill=\"firstName\" \/>\n    &lt;input data-ccbill=\"lastName\" \/>\n    &lt;input data-ccbill=\"amount\" \/>\n    &lt;input data-ccbill=\"postalCode\" \/> \n    &lt;input data-ccbill=\"country\" \/> \n    &lt;input data-ccbill=\"email\" \/> \n    &lt;input data-ccbill=\"cardNumber\" \/> \n    &lt;input data-ccbill=\"currencyCode\" \/> \n    &lt;input data-ccbill=\"expYear\" \/> \n    &lt;input data-ccbill=\"expMonth\" \/> \n    &lt;input data-ccbill=\"nameOnCard\" \/> \n    &lt;input data-ccbill=\"cvv2\" \/>\n    &lt;input data-ccbill=\"ipAddress\" \/> \n&lt;\/form><\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki material-theme\" style=\"background-color: #263238\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #89DDFF\">&lt;<\/span><span style=\"color: #F07178\">form<\/span><span style=\"color: #89DDFF\"> <\/span><span style=\"color: #C792EA\">id<\/span><span style=\"color: #89DDFF\">=<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #C3E88D\">payment-form<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #89DDFF\">&gt;<\/span><span style=\"color: #EEFFFF\"> <\/span><\/span>\n<span class=\"line\"><span style=\"color: #EEFFFF\">    <\/span><span style=\"color: #89DDFF\">&lt;<\/span><span style=\"color: #F07178\">input<\/span><span style=\"color: #89DDFF\"> <\/span><span style=\"color: #C792EA\">data-ccbill<\/span><span style=\"color: #89DDFF\">=<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #C3E88D\">firstName<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #89DDFF\"> \/&gt;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #EEFFFF\">    <\/span><span style=\"color: #89DDFF\">&lt;<\/span><span style=\"color: #F07178\">input<\/span><span style=\"color: #89DDFF\"> <\/span><span style=\"color: #C792EA\">data-ccbill<\/span><span style=\"color: #89DDFF\">=<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #C3E88D\">lastName<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #89DDFF\"> \/&gt;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #EEFFFF\">    <\/span><span style=\"color: #89DDFF\">&lt;<\/span><span style=\"color: #F07178\">input<\/span><span style=\"color: #89DDFF\"> <\/span><span style=\"color: #C792EA\">data-ccbill<\/span><span style=\"color: #89DDFF\">=<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #C3E88D\">amount<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #89DDFF\"> \/&gt;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #EEFFFF\">    <\/span><span style=\"color: #89DDFF\">&lt;<\/span><span style=\"color: #F07178\">input<\/span><span style=\"color: #89DDFF\"> <\/span><span style=\"color: #C792EA\">data-ccbill<\/span><span style=\"color: #89DDFF\">=<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #C3E88D\">postalCode<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #89DDFF\"> \/&gt;<\/span><span style=\"color: #EEFFFF\"> <\/span><\/span>\n<span class=\"line\"><span style=\"color: #EEFFFF\">    <\/span><span style=\"color: #89DDFF\">&lt;<\/span><span style=\"color: #F07178\">input<\/span><span style=\"color: #89DDFF\"> <\/span><span style=\"color: #C792EA\">data-ccbill<\/span><span style=\"color: #89DDFF\">=<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #C3E88D\">country<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #89DDFF\"> \/&gt;<\/span><span style=\"color: #EEFFFF\"> <\/span><\/span>\n<span class=\"line\"><span style=\"color: #EEFFFF\">    <\/span><span style=\"color: #89DDFF\">&lt;<\/span><span style=\"color: #F07178\">input<\/span><span style=\"color: #89DDFF\"> <\/span><span style=\"color: #C792EA\">data-ccbill<\/span><span style=\"color: #89DDFF\">=<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #C3E88D\">email<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #89DDFF\"> \/&gt;<\/span><span style=\"color: #EEFFFF\"> <\/span><\/span>\n<span class=\"line\"><span style=\"color: #EEFFFF\">    <\/span><span style=\"color: #89DDFF\">&lt;<\/span><span style=\"color: #F07178\">input<\/span><span style=\"color: #89DDFF\"> <\/span><span style=\"color: #C792EA\">data-ccbill<\/span><span style=\"color: #89DDFF\">=<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #C3E88D\">cardNumber<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #89DDFF\"> \/&gt;<\/span><span style=\"color: #EEFFFF\"> <\/span><\/span>\n<span class=\"line\"><span style=\"color: #EEFFFF\">    <\/span><span style=\"color: #89DDFF\">&lt;<\/span><span style=\"color: #F07178\">input<\/span><span style=\"color: #89DDFF\"> <\/span><span style=\"color: #C792EA\">data-ccbill<\/span><span style=\"color: #89DDFF\">=<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #C3E88D\">currencyCode<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #89DDFF\"> \/&gt;<\/span><span style=\"color: #EEFFFF\"> <\/span><\/span>\n<span class=\"line\"><span style=\"color: #EEFFFF\">    <\/span><span style=\"color: #89DDFF\">&lt;<\/span><span style=\"color: #F07178\">input<\/span><span style=\"color: #89DDFF\"> <\/span><span style=\"color: #C792EA\">data-ccbill<\/span><span style=\"color: #89DDFF\">=<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #C3E88D\">expYear<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #89DDFF\"> \/&gt;<\/span><span style=\"color: #EEFFFF\"> <\/span><\/span>\n<span class=\"line\"><span style=\"color: #EEFFFF\">    <\/span><span style=\"color: #89DDFF\">&lt;<\/span><span style=\"color: #F07178\">input<\/span><span style=\"color: #89DDFF\"> <\/span><span style=\"color: #C792EA\">data-ccbill<\/span><span style=\"color: #89DDFF\">=<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #C3E88D\">expMonth<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #89DDFF\"> \/&gt;<\/span><span style=\"color: #EEFFFF\"> <\/span><\/span>\n<span class=\"line\"><span style=\"color: #EEFFFF\">    <\/span><span style=\"color: #89DDFF\">&lt;<\/span><span style=\"color: #F07178\">input<\/span><span style=\"color: #89DDFF\"> <\/span><span style=\"color: #C792EA\">data-ccbill<\/span><span style=\"color: #89DDFF\">=<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #C3E88D\">nameOnCard<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #89DDFF\"> \/&gt;<\/span><span style=\"color: #EEFFFF\"> <\/span><\/span>\n<span class=\"line\"><span style=\"color: #EEFFFF\">    <\/span><span style=\"color: #89DDFF\">&lt;<\/span><span style=\"color: #F07178\">input<\/span><span style=\"color: #89DDFF\"> <\/span><span style=\"color: #C792EA\">data-ccbill<\/span><span style=\"color: #89DDFF\">=<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #C3E88D\">cvv2<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #89DDFF\"> \/&gt;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #EEFFFF\">    <\/span><span style=\"color: #89DDFF\">&lt;<\/span><span style=\"color: #F07178\">input<\/span><span style=\"color: #89DDFF\"> <\/span><span style=\"color: #C792EA\">data-ccbill<\/span><span style=\"color: #89DDFF\">=<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #C3E88D\">ipAddress<\/span><span style=\"color: #89DDFF\">&quot;<\/span><span style=\"color: #89DDFF\"> \/&gt;<\/span><span style=\"color: #EEFFFF\"> <\/span><\/span>\n<span class=\"line\"><span style=\"color: #89DDFF\">&lt;\/<\/span><span style=\"color: #F07178\">form<\/span><span style=\"color: #89DDFF\">&gt;<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p><\/p>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-12 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<h3 class=\"wp-block-heading\" id=\"oauth-bearer-token\">2. Generate CCBill OAuth Bearer Token<\/h3>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-13 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<h5 class=\"wp-block-heading\">Frontend Bearer Token<\/h5>\n\n\n\n<p>Use your frontend credentials <strong><code>Merchant_ApplicationID:Secret_Key<\/code><\/strong> to generate a <strong>frontend bearer token<\/strong>. Include this token in the Authorization header of API requests when <strong>authenticating customers <\/strong>and <strong>creating payment tokens<\/strong>.<\/p>\n\n\n\n<h5 class=\"wp-block-heading\">Backend Bearer Token<\/h5>\n\n\n\n<p>Use your backend credentials <strong><code>Merchant_ApplicationID:Secret_Key<\/code><\/strong> to request a <strong>backend bearer token<\/strong>. Include this token in the Authorization header of API requests that <strong>charge<\/strong> <strong>payment tokens<\/strong> to ensure only authorized backend systems can initiate transactions.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"notice-warning\">\n<div class=\"notice-text\"><p>Please note that the credentials should be encoded using Base64 encoding. This step cannot be done from within the browser, you must make the call from your backend.<\/p>\n<\/div>\n<\/div>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-kioken-accordion kioken-accordion-1\">\n<div class=\"wp-block-kioken-accordion-item kioken-accordion-item kioken-accordion-item-active\"><a href=\"#accordionoauth-token-best-security-practices\" class=\"kioken-accordion-item-heading\"><span class=\"kioken-accordion-item-label\"><strong>OAuth Token Best Security Practices<\/strong><\/span><span class=\"kioken-accordion-item-collapse\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\"><path d=\"M12 5a1 1 0 0 1 1 1v5h5a1 1 0 1 1 0 2h-5v5a1 1 0 1 1-2 0v-5H6a1 1 0 1 1 0-2h5V6a1 1 0 0 1 1-1z\" fill=\"currentColor\" fill-rule=\"evenodd\"><\/path><\/svg><\/span><\/a><div class=\"kioken-accordion-item-content\">\n<ul class=\"wp-block-list\">\n<li><strong>Never expose API credentials on the front end. <\/strong>Always store your Merchant Application ID and Secret Key securely in server-side environment variables.<\/li>\n\n\n\n<li><strong>Reduce API token attack surface<\/strong>. Execute calls to create a frontend OAuth token and a payment token in quick succession to minimize the risk of the access token being exposed to attackers.<\/li>\n\n\n\n<li><strong>Use CSRF tokens for your front-end<\/strong> <strong>payment forms<\/strong>. Protect your front-end forms with CSRF tokens to prevent unauthorized form submissions.<\/li>\n<\/ul>\n<\/div><\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\">\n<p class=\"code-header\">Example Request<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#263238\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#EEFFFF;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>curl - POST 'https:\/\/api.ccbill.com\/ccbill-auth\/oauth\/token' \\\n--header 'Content-Type: application\/x-www-form-urlencoded' \\\n--header 'Authorization: Basic Merchant_ApplicationID:Secret_Key ' \\\n--data-urlencode 'grant_type=client_credentials'<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki material-theme\" style=\"background-color: #263238\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #FFCB6B\">curl<\/span><span style=\"color: #EEFFFF\"> <\/span><span style=\"color: #C3E88D\">-<\/span><span style=\"color: #EEFFFF\"> <\/span><span style=\"color: #C3E88D\">POST<\/span><span style=\"color: #EEFFFF\"> <\/span><span style=\"color: #89DDFF\">&#39;<\/span><span style=\"color: #C3E88D\">https:\/\/api.ccbill.com\/ccbill-auth\/oauth\/token<\/span><span style=\"color: #89DDFF\">&#39;<\/span><span style=\"color: #EEFFFF\"> \\<\/span><\/span>\n<span class=\"line\"><span style=\"color: #EEFFFF\">--header <\/span><span style=\"color: #89DDFF\">&#39;<\/span><span style=\"color: #C3E88D\">Content-Type: application\/x-www-form-urlencoded<\/span><span style=\"color: #89DDFF\">&#39;<\/span><span style=\"color: #EEFFFF\"> \\<\/span><\/span>\n<span class=\"line\"><span style=\"color: #EEFFFF\">--header <\/span><span style=\"color: #89DDFF\">&#39;<\/span><span style=\"color: #C3E88D\">Authorization: Basic Merchant_ApplicationID:Secret_Key <\/span><span style=\"color: #89DDFF\">&#39;<\/span><span style=\"color: #EEFFFF\"> \\<\/span><\/span>\n<span class=\"line\"><span style=\"color: #EEFFFF\">--data-urlencode <\/span><span style=\"color: #89DDFF\">&#39;<\/span><span style=\"color: #C3E88D\">grant_type=client_credentials<\/span><span style=\"color: #89DDFF\">&#39;<\/span><\/span><\/code><\/pre><\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-14 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<h3 class=\"wp-block-heading\" id=\"create-payment-token\">3. Create a Payment Token<\/h3>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-15 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<p>Use the <strong>frontend bearer token<\/strong> and payment details to request a <strong>payment token<\/strong> from CCBill's API.<\/p>\n\n\n\n<p>You can initiate a request to the payment token endpoint by passing the necessary payment details and parameters to the relevant endpoint.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-kioken-advancedbtn kt-btn-align-left kt-btns-wrap kt-btns_487ec7-e9\"><div class=\"kt-btn-wrap kt-btn-wrap-0 \"><a class=\"kt-button kt-btn-0-action   kt-btn-svg-show-always kt-btn-has-text-true kt-btn-has-svg-false\" href=\"https:\/\/ccbill.com\/doc\/ccbill-restful-api-resources\" target=\"_blank\" rel=\"noreferrer noopener\" style=\"font-size:18px;border-radius:3px;border-width:2px\"><span class=\"kt-btn-inner-text\"><strong>CCBiLL RESTful API Endpoints<\/strong><\/span><\/a><\/div><\/div>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\">\n<p class=\"code-header\">API Endpoint for Creating Payment Tokens<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#263238\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#EEFFFF;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>https:\/\/api.ccbill.com\/payment-tokens\/merchant-only-verify<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki material-theme\" style=\"background-color: #263238\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #EEFFFF\">https:\/\/api.ccbill.com\/payment-tokens\/merchant-only-verify<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p><\/p>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-16 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<p>While this step can be completed by making requests directly to our <strong>API endpoints<\/strong>, you can also use the <a href=\"https:\/\/js.ccbill.com\/v1.13.1\/ccbill-advanced-widget.js\" target=\"_blank\" rel=\"noreferrer noopener\">CCBill Advanced Widget<\/a> (JS library) to simplify the integration.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-17 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<h3 class=\"wp-block-heading\" id=\"charge-payment-token\">4. Charge Payment Token<\/h3>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-18 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<p>After you receive a <strong>payment token ID<\/strong>, use it together with the <strong>backend bearer token<\/strong> to charge the customer's credit card.<\/p>\n\n\n\n<p>Sending an API request to the <strong>\/transactions<\/strong> endpoint allows you to charge a payment token or retrieve data on a charge.<\/p>\n\n\n\n<p>Once the payment token has been charged, a <a href=\"https:\/\/ccbill.com\/doc\/webhooks-user-guide\" target=\"_blank\" rel=\"noreferrer noopener\">webhooks HTTP POST notification<\/a> will be triggered so that you can capture the transaction information. This webhooks event will be a \u201c<a href=\"https:\/\/ccbill.com\/doc\/upsalesuccess\" target=\"_blank\" rel=\"noreferrer noopener\">UpSaleSuccess<\/a>\u201d.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\">\n<p class=\"code-header\">API Endpoint for Charging Payment Tokens<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#24292e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#e1e4e8;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>https:\/\/api.ccbill.com\/transactions\/payment-tokens\/{payment_token_id}<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki github-dark\" style=\"background-color: #24292e\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #E1E4E8\">https:\/\/api.ccbill.com\/transactions\/payment-tokens\/{payment_token_id}<\/span><\/span><\/code><\/pre><\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-19 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<h2 class=\"wp-block-heading\" id=\"ccbill-advanced-widget\">CCBill Advanced Widget<\/h2>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-20 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<p>The <strong>CCBill Advanced Widget<\/strong> streamlines the frontend integration by handling API calls within a JavaScript function that runs directly on your webpage. Benefits include:<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-21 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<ul class=\"wp-block-list\">\n<li><strong>Seamless Data Collection<\/strong>. Automatically retrieves and validates payment form data.<\/li>\n\n\n\n<li><strong>Secure Data Handling<\/strong>. Payment details are sent directly to CCBill without passing through your server.<\/li>\n\n\n\n<li><strong>Strong Customer Authentication (SCA)<\/strong>. Customers can complete SCA directly within the browser, ensuring compliance with regulations like PSD2.<\/li>\n\n\n\n<li><strong>3DS Verification Support<\/strong>. The widget allows you to check whether 3D Secure (3DS) authentication is required and manipulate payment flows dynamically.<\/li>\n<\/ul>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-22 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<p>Use the CCBill Advanced Widget to integrate a non-3DS or 3DS payment flow.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-23 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<h3 class=\"wp-block-heading\" id=\"non-3ds-flow\">Non-3DS Payment Flow<\/h3>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-24 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<p>This is the primary method for generating a payment token using the CCBill Advanced Widget.<br><\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-25 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<div class=\"wp-block-kioken-advancedbtn kt-btn-align-left kt-btns-wrap kt-btns_86f849-60\"><div class=\"kt-btn-wrap kt-btn-wrap-0 \"><a class=\"kt-button kt-btn-0-action   kt-btn-svg-show-always kt-btn-has-text-true kt-btn-has-svg-false\" href=\"https:\/\/ccbill.com\/doc\/create-payment-token-non-3ds\" target=\"_blank\" rel=\"noreferrer noopener\" style=\"font-size:18px;border-radius:3px;border-width:2px\"><span class=\"kt-btn-inner-text\"><strong>Create Payment Token (Non-3DS)<\/strong><\/span><\/a><\/div><\/div>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-26 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<p>If you <strong>DO NOT<\/strong> require Strong Customer Authentication (SCA) or operate in regions where it is not mandatory, this is the only method you will need to integrate from your JavaScript code.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-27 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<div class=\"wp-block-kioken-accordion kioken-accordion-2\">\n<div class=\"wp-block-kioken-accordion-item kioken-accordion-item\"><a href=\"#accordionwhat-is-sca\" class=\"kioken-accordion-item-heading\"><span class=\"kioken-accordion-item-label\"><strong>What Is SCA?<\/strong><\/span><span class=\"kioken-accordion-item-collapse\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\"><path d=\"M12 5a1 1 0 0 1 1 1v5h5a1 1 0 1 1 0 2h-5v5a1 1 0 1 1-2 0v-5H6a1 1 0 1 1 0-2h5V6a1 1 0 0 1 1-1z\" fill=\"currentColor\" fill-rule=\"evenodd\"><\/path><\/svg><\/span><\/a><div class=\"kioken-accordion-item-content\">\n<p>SCA is a set of rules that card issuers (banks or other financial institutions) need to adhere to when approving a <a href=\"https:\/\/ccbill.com\/kb\/card-not-present-transaction\" target=\"_blank\" rel=\"noreferrer noopener\">card-not-present transaction<\/a>.<\/p>\n\n\n\n<p>To support strong customer authentication, merchants and payment processors have to capture and deliver customer data to the card issuer. <\/p>\n\n\n\n<p>They need to integrate multi-factor authentication into the payment flow to ensure that <a href=\"https:\/\/ccbill.com\/blog\/secure-online-payment\" target=\"_blank\" rel=\"noreferrer noopener\">online payments<\/a> cannot be initiated without the payer's knowledge.<\/p>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-kioken-accordion-item kioken-accordion-item\"><a href=\"#accordiondo-i-need-sca\" class=\"kioken-accordion-item-heading\"><span class=\"kioken-accordion-item-label\"><strong>Do I Need SCA?<\/strong><\/span><span class=\"kioken-accordion-item-collapse\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\"><path d=\"M12 5a1 1 0 0 1 1 1v5h5a1 1 0 1 1 0 2h-5v5a1 1 0 1 1-2 0v-5H6a1 1 0 1 1 0-2h5V6a1 1 0 0 1 1-1z\" fill=\"currentColor\" fill-rule=\"evenodd\"><\/path><\/svg><\/span><\/a><div class=\"kioken-accordion-item-content\">\n<p>The decision to implement an SCA solution depends on where your business is registered and if you sell products and services in the European market:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Non-European merchants that do not accept payments from European customers do not need to implement SCA unless required by local laws.<\/li>\n\n\n\n<li>Non-European merchants, such as US merchants who want to accept payments from European customers, are not required to adopt SCA, but it is highly recommended that they do so.<\/li>\n\n\n\n<li>European merchants that accept payments from European customers need to implement an SCA solution.<\/li>\n<\/ul>\n<\/div><\/div>\n<\/div>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-28 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<h3 class=\"wp-block-heading\" id=\"3ds-payment-flows\">3DS Payment Flows<\/h3>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-29 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><a href=\"https:\/\/ccbill.com\/kb\/3d-secure-2\" target=\"_blank\" rel=\"noreferrer noopener\">3D Secure<\/a> is one of the most widely used security protocols for strong customer authentication. CCBill has implemented 3DS across its payment systems and is fully compliant with <a href=\"https:\/\/ccbill.com\/kb\/psd2-sca\">PSD2 regulations<\/a>.<\/p>\n\n\n\n<div class=\"wp-block-kioken-accordion kioken-accordion-1\">\n<div class=\"wp-block-kioken-accordion-item kioken-accordion-item\"><a href=\"#accordionis-3ds-mandatory\" class=\"kioken-accordion-item-heading\"><span class=\"kioken-accordion-item-label\"><strong>Is 3DS Mandatory?<\/strong><\/span><span class=\"kioken-accordion-item-collapse\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\"><path d=\"M12 5a1 1 0 0 1 1 1v5h5a1 1 0 1 1 0 2h-5v5a1 1 0 1 1-2 0v-5H6a1 1 0 1 1 0-2h5V6a1 1 0 0 1 1-1z\" fill=\"currentColor\" fill-rule=\"evenodd\"><\/path><\/svg><\/span><\/a><div class=\"kioken-accordion-item-content\">\n<p>The 3D Secure protocol is not a prerequisite for accepting online payments. However, it is a cost-effective and easy-to-implement strong customer authentication (SCA) method.<\/p>\n\n\n\n<p>Many countries are introducing legislation that makes SCA mandatory for card-not-present transactions. The most prominent example is the Revised Payment Services Directive (<a href=\"https:\/\/ccbill.com\/blog\/what-is-psd2\" target=\"_blank\" rel=\"noreferrer noopener\">PSD2<\/a>) in the European Economic Area.<\/p>\n<\/div><\/div>\n<\/div>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-30 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<p>The CCBill Advanced Widget helps you integrate 3DS into your payment flows and tokenize customer authentication results and payment information.<\/p>\n\n\n\n<p>Select a payment flow that aligns with your business model and planned checkout process, then follow the outlined steps to generate payment tokens using the CCBill Advanced Widget.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-31 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<div class=\"wp-block-kioken-accordion kioken-accordion-1\">\n<div class=\"wp-block-kioken-accordion-item kioken-accordion-item kioken-accordion-item-active\"><a href=\"#accordioncreate-payment-token-3ds\" class=\"kioken-accordion-item-heading\"><span class=\"kioken-accordion-item-label\"><strong>Create Payment Token (3DS)<\/strong><\/span><span class=\"kioken-accordion-item-collapse\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\"><path d=\"M12 5a1 1 0 0 1 1 1v5h5a1 1 0 1 1 0 2h-5v5a1 1 0 1 1-2 0v-5H6a1 1 0 1 1 0-2h5V6a1 1 0 0 1 1-1z\" fill=\"currentColor\" fill-rule=\"evenodd\"><\/path><\/svg><\/span><\/a><div class=\"kioken-accordion-item-content\">\n<p>You can use this approach to create payment tokens and charge customers in real-time while they are still in session. <\/p>\n\n\n\n<p>If you run an <strong>e-commerce<\/strong> <strong>store<\/strong> or offer<strong> instant access to<\/strong> <strong>digital content or services<\/strong>, this flow enables seamless,<strong> one-click payments<\/strong> while maintaining security and compliance.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-kioken-advancedbtn kt-btn-align-left kt-btns-wrap kt-btns_44329f-08\"><div class=\"kt-btn-wrap kt-btn-wrap-0 \"><a class=\"kt-button kt-btn-0-action   kt-btn-svg-show-always kt-btn-has-text-true kt-btn-has-svg-false\" href=\"https:\/\/ccbill.com\/doc\/create-payment-token-3ds\" target=\"_blank\" rel=\"noreferrer noopener\" style=\"font-size:18px;border-radius:3px;border-width:2px\"><span class=\"kt-btn-inner-text\"><strong>Create Payment Token (3DS)<\/strong><\/span><\/a><\/div><\/div>\n<\/div><\/div>\n<\/div>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-32 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<div class=\"wp-block-kioken-accordion kioken-accordion-1\">\n<div class=\"wp-block-kioken-accordion-item kioken-accordion-item kioken-accordion-item-active\"><a href=\"#accordionauthenticate-customer-and-create-payment-token-one-step\" class=\"kioken-accordion-item-heading\"><span class=\"kioken-accordion-item-label\"><strong>Authenticate Customer and Create Payment Token (One Step)<\/strong><\/span><span class=\"kioken-accordion-item-collapse\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\"><path d=\"M12 5a1 1 0 0 1 1 1v5h5a1 1 0 1 1 0 2h-5v5a1 1 0 1 1-2 0v-5H6a1 1 0 1 1 0-2h5V6a1 1 0 0 1 1-1z\" fill=\"currentColor\" fill-rule=\"evenodd\"><\/path><\/svg><\/span><\/a><div class=\"kioken-accordion-item-content\">\n<p>This flow is similar to the <strong>Create Payment Token (3DS)<\/strong> flow and is ideal for real-time transactions when the customer is in session and the charge amount is known upfront. <\/p>\n\n\n\n<p>It combines 3DS authentication and payment token creation in a single step. This improves efficiency by reducing the number of API calls your system needs to make.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-kioken-advancedbtn kt-btn-align-left kt-btns-wrap kt-btns_25cca9-ea\"><div class=\"kt-btn-wrap kt-btn-wrap-0 \"><a class=\"kt-button kt-btn-0-action   kt-btn-svg-show-always kt-btn-has-text-true kt-btn-has-svg-false\" href=\"https:\/\/ccbill.com\/doc\/authenticate-customer-and-create-token-in-one-step\" target=\"_blank\" rel=\"noreferrer noopener\" style=\"font-size:18px;border-radius:3px;border-width:2px\"><span class=\"kt-btn-inner-text\"><strong>Authenticate and Create Payment Token in One Step<\/strong><\/span><\/a><\/div><\/div>\n<\/div><\/div>\n<\/div>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-33 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<div class=\"wp-block-kioken-accordion kioken-accordion-1\">\n<div class=\"wp-block-kioken-accordion-item kioken-accordion-item kioken-accordion-item-active\"><a href=\"#accordioncreate-a-payment-token-for-deferred-charges\" class=\"kioken-accordion-item-heading\"><span class=\"kioken-accordion-item-label\"><strong>Create a Payment Token For Deferred Charges<\/strong><\/span><span class=\"kioken-accordion-item-collapse\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\"><path d=\"M12 5a1 1 0 0 1 1 1v5h5a1 1 0 1 1 0 2h-5v5a1 1 0 1 1-2 0v-5H6a1 1 0 1 1 0-2h5V6a1 1 0 0 1 1-1z\" fill=\"currentColor\" fill-rule=\"evenodd\"><\/path><\/svg><\/span><\/a><div class=\"kioken-accordion-item-content\">\n<p>This method authenticates the cardholder and creates a payment token. The customer does not have to be in session when the token is later charged.<\/p>\n\n\n\n<p>For example, you can generate a token when customers register on a website (i.e., for a free trial) and use it later to charge them for <strong>recurring subscriptions<\/strong> or <strong>one-time purchases<\/strong>.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-kioken-advancedbtn kt-btn-align-left kt-btns-wrap kt-btns_795020-02\"><div class=\"kt-btn-wrap kt-btn-wrap-0 \"><a class=\"kt-button kt-btn-0-action   kt-btn-svg-show-always kt-btn-has-text-true kt-btn-has-svg-false\" href=\"https:\/\/ccbill.com\/doc\/create-payment-token-for-deferred-charges\" target=\"_blank\" rel=\"noreferrer noopener\" style=\"font-size:18px;border-radius:3px;border-width:2px\"><span class=\"kt-btn-inner-text\"><strong>Create a Payment Token For Deferred Charges<\/strong><\/span><\/a><\/div><\/div>\n<\/div><\/div>\n<\/div>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-kioken-accordion kioken-accordion-0\"><\/div>\n\n\n\n<div class=\"wp-block-kioken-accordion kioken-accordion-0\"><\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-34 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<p class=\"h3\">Additional Documentation<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-35 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/ccbill.com\/doc\/method-reference\" target=\"_blank\" rel=\"noreferrer noopener\">CCBill Advanced Widget API Reference<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/ccbill.com\/doc\/ccbill-restful-api-resources\" target=\"_blank\" rel=\"noreferrer noopener\">CCBill RESTful API Resources<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/ccbill.com\/doc\/error-codes\" target=\"_blank\" rel=\"noreferrer noopener\">Error Codes<\/a><\/li>\n<\/ul>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\"><\/div>\n<\/div>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>This is a quick introduction that outlines the steps for integrating  CCBill's RESTful API.<\/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":[29],"tags":[],"class_list":["post-6612","post","type-post","status-publish","format-standard","hentry","category-api-documentation"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.0 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>CCBill RESTful Transaction API - CCBill Doc<\/title>\n<meta name=\"description\" content=\"Learn how to integrate CCBill&#039;s RESTful API and take full advantage of our payment platform without using hosted 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\/ccbill-restful-transaction-api\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"CCBill RESTful Transaction API - CCBill Doc\" \/>\n<meta property=\"og:description\" content=\"Learn how to integrate CCBill&#039;s RESTful API and take full advantage of our payment platform without using hosted payment forms.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/ccbill.com\/doc\/ccbill-restful-transaction-api\" \/>\n<meta property=\"og:site_name\" content=\"CCBill Doc\" \/>\n<meta property=\"article:published_time\" content=\"2023-02-28T15:13:22+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-02-05T12:36:53+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/ccbill.com\/doc\/wp-content\/uploads\/2025\/02\/frontend-backend-credentials-api.png\" \/>\n\t<meta property=\"og:image:width\" content=\"750\" \/>\n\t<meta property=\"og:image:height\" content=\"249\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\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=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/ccbill.com\/doc\/ccbill-restful-transaction-api\",\"url\":\"https:\/\/ccbill.com\/doc\/ccbill-restful-transaction-api\",\"name\":\"CCBill RESTful Transaction API - CCBill Doc\",\"isPartOf\":{\"@id\":\"https:\/\/ccbill.com\/doc\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/ccbill.com\/doc\/ccbill-restful-transaction-api#primaryimage\"},\"image\":{\"@id\":\"https:\/\/ccbill.com\/doc\/ccbill-restful-transaction-api#primaryimage\"},\"thumbnailUrl\":\"https:\/\/ccbill.com\/doc\/wp-content\/uploads\/2025\/02\/frontend-backend-credentials-api.png\",\"datePublished\":\"2023-02-28T15:13:22+00:00\",\"dateModified\":\"2026-02-05T12:36:53+00:00\",\"author\":{\"@id\":\"https:\/\/ccbill.com\/doc\/#\/schema\/person\/2cc5b50e34ee63ed498ac333a25840ad\"},\"description\":\"Learn how to integrate CCBill's RESTful API and take full advantage of our payment platform without using hosted payment forms.\",\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/ccbill.com\/doc\/ccbill-restful-transaction-api\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/ccbill.com\/doc\/ccbill-restful-transaction-api#primaryimage\",\"url\":\"https:\/\/ccbill.com\/doc\/wp-content\/uploads\/2025\/02\/frontend-backend-credentials-api.png\",\"contentUrl\":\"https:\/\/ccbill.com\/doc\/wp-content\/uploads\/2025\/02\/frontend-backend-credentials-api.png\",\"width\":750,\"height\":249,\"caption\":\"Example of CCBill API credentials.\"},{\"@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":"CCBill RESTful Transaction API - CCBill Doc","description":"Learn how to integrate CCBill's RESTful API and take full advantage of our payment platform without using hosted 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\/ccbill-restful-transaction-api","og_locale":"en_US","og_type":"article","og_title":"CCBill RESTful Transaction API - CCBill Doc","og_description":"Learn how to integrate CCBill's RESTful API and take full advantage of our payment platform without using hosted payment forms.","og_url":"https:\/\/ccbill.com\/doc\/ccbill-restful-transaction-api","og_site_name":"CCBill Doc","article_published_time":"2023-02-28T15:13:22+00:00","article_modified_time":"2026-02-05T12:36:53+00:00","og_image":[{"width":750,"height":249,"url":"https:\/\/ccbill.com\/doc\/wp-content\/uploads\/2025\/02\/frontend-backend-credentials-api.png","type":"image\/png"}],"author":"Vladimir Kaplarevic","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Vladimir Kaplarevic","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/ccbill.com\/doc\/ccbill-restful-transaction-api","url":"https:\/\/ccbill.com\/doc\/ccbill-restful-transaction-api","name":"CCBill RESTful Transaction API - CCBill Doc","isPartOf":{"@id":"https:\/\/ccbill.com\/doc\/#website"},"primaryImageOfPage":{"@id":"https:\/\/ccbill.com\/doc\/ccbill-restful-transaction-api#primaryimage"},"image":{"@id":"https:\/\/ccbill.com\/doc\/ccbill-restful-transaction-api#primaryimage"},"thumbnailUrl":"https:\/\/ccbill.com\/doc\/wp-content\/uploads\/2025\/02\/frontend-backend-credentials-api.png","datePublished":"2023-02-28T15:13:22+00:00","dateModified":"2026-02-05T12:36:53+00:00","author":{"@id":"https:\/\/ccbill.com\/doc\/#\/schema\/person\/2cc5b50e34ee63ed498ac333a25840ad"},"description":"Learn how to integrate CCBill's RESTful API and take full advantage of our payment platform without using hosted payment forms.","inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/ccbill.com\/doc\/ccbill-restful-transaction-api"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ccbill.com\/doc\/ccbill-restful-transaction-api#primaryimage","url":"https:\/\/ccbill.com\/doc\/wp-content\/uploads\/2025\/02\/frontend-backend-credentials-api.png","contentUrl":"https:\/\/ccbill.com\/doc\/wp-content\/uploads\/2025\/02\/frontend-backend-credentials-api.png","width":750,"height":249,"caption":"Example of CCBill API credentials."},{"@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\/6612"}],"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=6612"}],"version-history":[{"count":93,"href":"https:\/\/ccbill.com\/doc\/wp-json\/wp\/v2\/posts\/6612\/revisions"}],"predecessor-version":[{"id":11306,"href":"https:\/\/ccbill.com\/doc\/wp-json\/wp\/v2\/posts\/6612\/revisions\/11306"}],"wp:attachment":[{"href":"https:\/\/ccbill.com\/doc\/wp-json\/wp\/v2\/media?parent=6612"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ccbill.com\/doc\/wp-json\/wp\/v2\/categories?post=6612"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ccbill.com\/doc\/wp-json\/wp\/v2\/tags?post=6612"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}