{"id":5649,"date":"2020-07-25T06:48:23","date_gmt":"2020-07-25T06:48:23","guid":{"rendered":"https:\/\/infyblog.zluck.in\/?p=5649"},"modified":"2024-08-13T06:56:06","modified_gmt":"2024-08-13T06:56:06","slug":"how-to-integrate-the-stripe-customer-portal","status":"publish","type":"post","link":"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/","title":{"rendered":"How to Integrate the Stripe Customer Portal"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"5649\" class=\"elementor elementor-5649\" data-elementor-post-type=\"post\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-fc81120 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"fc81120\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-2d0c462\" data-id=\"2d0c462\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\n\t\t<div class=\"elementor-element elementor-element-e478c36 elementor-widget elementor-widget-text-editor\" data-id=\"e478c36\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<p>The Stripe Customer Portal is very useful for managing customer subscriptions like Upgrade, Downgrade, and Renew.<\/p><p>Customers can review their invoices directly and also check their history.<\/p><h2>Portal billing setting<\/h2><p>Do login into your stripe account<\/p><p>Navigate to the <a href=\"https:\/\/dashboard.stripe.com\/login?redirect=%2Ftest%2Fsettings%2Fbilling%2Fportal\">portal settings<\/a> to configure the portal, and do below billing settings<\/p>\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5e0504f elementor-widget elementor-widget-image\" data-id=\"5e0504f\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"800\" height=\"634\" src=\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/1-3-1.png\" class=\"attachment-large size-large wp-image-5655\" alt=\"Portal billing setting\" srcset=\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/1-3-1.png 877w, https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/1-3-1-300x238.png 300w, https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/1-3-1-768x609.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ec28be1 elementor-widget elementor-widget-text-editor\" data-id=\"ec28be1\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<h2>Create Product<\/h2><p>First of all, we need to create products. Follow the below process for creating products.<\/p><p>Click on the<strong> \u201cProducts\u201d<\/strong> menu from the sidebar and click on the <strong>\u201cAdd Product\u201d<\/strong> button on the top right corner of the products page and create a product.<\/p><p>Here is an example of how to create a product.<\/p><p>Create two or three products as shown below.<\/p>\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-45dc010 elementor-widget elementor-widget-image\" data-id=\"45dc010\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"541\" height=\"813\" src=\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/2-2-1.png\" class=\"attachment-large size-large wp-image-5659\" alt=\"Create Product\" srcset=\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/2-2-1.png 541w, https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/2-2-1-200x300.png 200w\" sizes=\"(max-width: 541px) 100vw, 541px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3619104 elementor-widget elementor-widget-text-editor\" data-id=\"3619104\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<h2>Select product In portal settings<\/h2><p>If you want to allow your customer to change their subscription by an upgrade, downgrade, cancel or renew you need to set products in your portal setting.<\/p><p>Now navigate to customer portal settings again, in the Products section, you will find a dropdown<strong> \u201cFind or add a product..\u201d<\/strong>, click on it you will find the plan you have added, select the price of this product.<\/p>\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2b7edd8 elementor-widget elementor-widget-image\" data-id=\"2b7edd8\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"785\" height=\"266\" src=\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/3-3.png\" class=\"attachment-large size-large wp-image-5663\" alt=\"Select product In portal settings\" srcset=\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/3-3.png 785w, https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/3-3-300x102.png 300w, https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/3-3-768x260.png 768w\" sizes=\"(max-width: 785px) 100vw, 785px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-bca7a59 elementor-widget elementor-widget-text-editor\" data-id=\"bca7a59\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<p>Don\u2019t forget to save all these settings.<\/p><p>Then do the setup of your business information, also do branding settings in the <strong>\u201cAppearance\u201d<\/strong> section, and save it.<\/p><p>Once you are done with settings, you can preview the customer portal by clicking the Preview button beside the save button.<\/p><p>This will launch a preview of the portal so you can see how customers will use it for managing their subscriptions and billing details.<\/p><h2>Integrate into Laravel<\/h2><ul><li>Get you API keys<\/li><\/ul><p>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0\u00b0 Go to \u201cDevelopers &gt; API keys\u201d here you will find your \u201cPublishable key\u201d and \u201cSecret key<\/p>\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3bada96 elementor-widget elementor-widget-image\" data-id=\"3bada96\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"560\" height=\"313\" src=\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/4-2.png\" class=\"attachment-large size-large wp-image-5669\" alt=\"Integrate into Laravel\" srcset=\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/4-2.png 560w, https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/4-2-300x168.png 300w\" sizes=\"(max-width: 560px) 100vw, 560px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-17ec72f elementor-widget elementor-widget-text-editor\" data-id=\"17ec72f\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<ul><li>Create customer using stripe dashboard or by API\u00a0<\/li><\/ul><p>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00b0 Create customer by Stripe API.<\/p><p>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00b0 First of all, you\u2019ll need to set your stripe secret key. For development mode, you can use test mode keys, but for production, you need to use your live\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0mode keys<\/p>\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1502bf6 elementor-widget elementor-widget-code-highlight\" data-id=\"1502bf6\" data-element_type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"prismjs-default copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-javascript \">\n\t\t\t\t<code readonly=\"true\" class=\"language-javascript\">\n\t\t\t\t\t<xmp>\\Stripe\\Stripe::setApiKey('sk_test_YOUR_KEY');\r\n$customer = \\Stripe\\Customer::create([undefined]);<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9f4a193 elementor-widget elementor-widget-text-editor\" data-id=\"9f4a193\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<ul><li>Once you create a customer using stripe API, now you can create a billing session for that customer using stripe API.<\/li><\/ul><p>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0\u00b0 Create a billing session of the customer by API<\/p>\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1d77578 elementor-widget elementor-widget-code-highlight\" data-id=\"1d77578\" data-element_type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"prismjs-default copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-javascript \">\n\t\t\t\t<code readonly=\"true\" class=\"language-javascript\">\n\t\t\t\t\t<xmp>\\Stripe\\Stripe::setApiKey('sk_test_YOUR_KEY'); \r\n\\Stripe\\BillingPortal\\Session::create([    \r\n      'customer'   => 'cus_HnKDAQNjBniyFh',    \r\n      'return_url' => 'https:\/\/example.com\/subscription'\r\n]);<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3244290 elementor-widget elementor-widget-text-editor\" data-id=\"3244290\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<p>You\u2019ll get a response, like the below object:<\/p>\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-77b4862 elementor-widget elementor-widget-code-highlight\" data-id=\"77b4862\" data-element_type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"prismjs-default copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-javascript \">\n\t\t\t\t<code readonly=\"true\" class=\"language-javascript\">\n\t\t\t\t\t<xmp>{\r\n  \"id\": \"pts_c5cfgf8gjfgf73m5748g6\",\r\n  \"object\"    : \"billing_portal.session\",\r\n  \"created\"   : 453543534,   \r\n  \"customer\"  : \"cus_bGFsnjJDcSiJu\",   \r\n  \"livemode\"  : false,   \r\n  \"return_url\": \"https:\/\/example.com\/subscription\" \r\n}<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a4e0045 elementor-widget elementor-widget-text-editor\" data-id=\"a4e0045\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<p>In the response body, there is a URL attribute:<\/p><p>Now redirect your customer to this URL immediately. For security purposes, this URL will expire in a few minutes.<\/p><p>After redirecting the customer to this URL, the portal will open and customers can manage their subscriptions and billing details in the portal. customers can return to the app by clicking the Return link on your company\u2019s name or logo within the portal on the left side. They\u2019ll redirect to the return_url you have provided at the time of creating the session or redirect URL set in your portal settings.<\/p><h2>Listen to Webhooks<\/h2><p>You must have a question, what is this Webhook!!!<\/p><p>It\u2019s just an event, which will fire when a customer does any changes in his\/her subscription in the portal, we can listen to this event in our app and make appropriate changes.<\/p><p>For example,<\/p><p>If a customer cancels his\/her subscription in the portal, then how we will know about it!!<\/p><p>For it, when customers do any changes in his\/her subscription<\/p><p><strong>\u201ccustomer.subscription.updated\u201d<\/strong> event will be fired and we can listen for this event and, get to know the customer has changed subscription so we need to do appropriate changes in our app also.<\/p><h2>Set webhook in your app<\/h2><p>In the webhooks.php (in routes folder) file set up a route to handle webhook.<\/p><p>You can use the Laravel Cashier Package (<a href=\"https:\/\/laravel.com\/docs\/8.x\/billing\">https:\/\/laravel.com\/docs\/8.x\/billing<\/a>)to handle webhooks.<\/p><p>To set up a webhook for your portal navigate to the <strong>\u201cDevelopers &gt; Webhooks\u201d<\/strong> menu you will find the below screen, here I have added a webhook to handle subscription cancel and update events, it will fire when customers update subscription, and you will receive it.<\/p>\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1914b8d elementor-widget elementor-widget-image\" data-id=\"1914b8d\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"173\" src=\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/5-2-1024x221.png\" class=\"attachment-large size-large wp-image-5684\" alt=\"Set webhook in your app\" srcset=\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/5-2-1024x221.png 1024w, https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/5-2-300x65.png 300w, https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/5-2-768x166.png 768w, https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/5-2-1536x332.png 1536w, https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/5-2.png 1653w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9610683 elementor-widget elementor-widget-text-editor\" data-id=\"9610683\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<p>Click on the \u201cAdd endpoint\u201d button and the below pop up will open. In Endpoint URL set the route you have created in the webhooks.php file. Select subscription updated and deleted events.<\/p>\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f026a0d elementor-widget elementor-widget-image\" data-id=\"f026a0d\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"563\" height=\"757\" src=\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/6-1.png\" class=\"attachment-large size-large wp-image-5686\" alt=\"Select subscription updated and deleted events.\" srcset=\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/6-1.png 563w, https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/6-1-223x300.png 223w\" sizes=\"(max-width: 563px) 100vw, 563px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e054512 elementor-widget elementor-widget-text-editor\" data-id=\"e054512\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<p>All done.<\/p><p>For more details, you can use <a href=\"https:\/\/docs.stripe.com\/customer-management\">stripe customer portal integration<\/a><\/p>\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t\n    <div class=\"xs_social_share_widget xs_share_url after_content \t\tmain_content  wslu-style-1 wslu-share-box-shaped wslu-fill-colored wslu-none wslu-share-horizontal wslu-theme-font-no wslu-main_content\">\n\n\t\t\n        <ul>\n\t\t\t        <\/ul>\n    <\/div> \n","protected":false},"excerpt":{"rendered":"<p>Stripe Customer Portal users can directly manage their subscription user can update\/cancel subscriptions, change&#8230;<\/p>\n","protected":false},"author":2,"featured_media":5651,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"postBodyCss":"","postBodyMargin":[],"postBodyPadding":[],"postBodyBackground":{"backgroundType":"classic","gradient":""},"two_page_speed":[],"footnotes":""},"categories":[9],"tags":[19,173],"class_list":["post-5649","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-laravel","tag-learning","tag-stripe-customer-portal"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How to Integrate the Stripe Customer Portal<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Integrate the Stripe Customer Portal\" \/>\n<meta property=\"og:description\" content=\"Stripe Customer Portal users can directly manage their subscription user can update\/cancel subscriptions, change...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog | InfyOm Technologies\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/infyom\" \/>\n<meta property=\"article:published_time\" content=\"2020-07-25T06:48:23+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-08-13T06:56:06+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/integrate-the-stripe-customer-portal.png\" \/>\n\t<meta property=\"og:image:width\" content=\"772\" \/>\n\t<meta property=\"og:image:height\" content=\"484\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"InfyOm\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@InfyOm\" \/>\n<meta name=\"twitter:site\" content=\"@InfyOm\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"InfyOm\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/\"},\"author\":{\"name\":\"InfyOm\",\"@id\":\"https:\/\/infyom.com\/blog\/#\/schema\/person\/659bfc844c333d041221e83c5f5ec754\"},\"headline\":\"How to Integrate the Stripe Customer Portal\",\"datePublished\":\"2020-07-25T06:48:23+00:00\",\"dateModified\":\"2024-08-13T06:56:06+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/\"},\"wordCount\":707,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/infyom.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/integrate-the-stripe-customer-portal.png\",\"keywords\":[\"Learning\",\"Stripe Customer Portal\"],\"articleSection\":[\"Laravel\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/\",\"url\":\"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/\",\"name\":\"How to Integrate the Stripe Customer Portal\",\"isPartOf\":{\"@id\":\"https:\/\/infyom.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/integrate-the-stripe-customer-portal.png\",\"datePublished\":\"2020-07-25T06:48:23+00:00\",\"dateModified\":\"2024-08-13T06:56:06+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/#primaryimage\",\"url\":\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/integrate-the-stripe-customer-portal.png\",\"contentUrl\":\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/integrate-the-stripe-customer-portal.png\",\"width\":772,\"height\":484,\"caption\":\"How to Integrate the Stripe Customer Portal\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/infyom.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to Integrate the Stripe Customer Portal\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/infyom.com\/blog\/#website\",\"url\":\"https:\/\/infyom.com\/blog\/\",\"name\":\"Blog | InfyOm Technologies\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/infyom.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/infyom.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/infyom.com\/blog\/#organization\",\"name\":\"InfyOm Technologies\",\"url\":\"https:\/\/infyom.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/infyom.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/06\/InfyOm-Logo.png\",\"contentUrl\":\"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/06\/InfyOm-Logo.png\",\"width\":88,\"height\":41,\"caption\":\"InfyOm Technologies\"},\"image\":{\"@id\":\"https:\/\/infyom.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/infyom\",\"https:\/\/x.com\/InfyOm\",\"https:\/\/www.instagram.com\/infyomtechnologies\/\",\"https:\/\/in.linkedin.com\/company\/infyom-technologies\",\"https:\/\/github.com\/infyomlabs\",\"https:\/\/x.com\/infyom\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/infyom.com\/blog\/#\/schema\/person\/659bfc844c333d041221e83c5f5ec754\",\"name\":\"InfyOm\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/infyom.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/1ad162864d8d33c04ea9e6d0333cc483?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/1ad162864d8d33c04ea9e6d0333cc483?s=96&d=mm&r=g\",\"caption\":\"InfyOm\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to Integrate the Stripe Customer Portal","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:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/","og_locale":"en_US","og_type":"article","og_title":"How to Integrate the Stripe Customer Portal","og_description":"Stripe Customer Portal users can directly manage their subscription user can update\/cancel subscriptions, change...","og_url":"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/","og_site_name":"Blog | InfyOm Technologies","article_publisher":"https:\/\/www.facebook.com\/infyom","article_published_time":"2020-07-25T06:48:23+00:00","article_modified_time":"2024-08-13T06:56:06+00:00","og_image":[{"width":772,"height":484,"url":"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/integrate-the-stripe-customer-portal.png","type":"image\/png"}],"author":"InfyOm","twitter_card":"summary_large_image","twitter_creator":"@InfyOm","twitter_site":"@InfyOm","twitter_misc":{"Written by":"InfyOm","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/#article","isPartOf":{"@id":"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/"},"author":{"name":"InfyOm","@id":"https:\/\/infyom.com\/blog\/#\/schema\/person\/659bfc844c333d041221e83c5f5ec754"},"headline":"How to Integrate the Stripe Customer Portal","datePublished":"2020-07-25T06:48:23+00:00","dateModified":"2024-08-13T06:56:06+00:00","mainEntityOfPage":{"@id":"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/"},"wordCount":707,"commentCount":0,"publisher":{"@id":"https:\/\/infyom.com\/blog\/#organization"},"image":{"@id":"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/#primaryimage"},"thumbnailUrl":"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/integrate-the-stripe-customer-portal.png","keywords":["Learning","Stripe Customer Portal"],"articleSection":["Laravel"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/","url":"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/","name":"How to Integrate the Stripe Customer Portal","isPartOf":{"@id":"https:\/\/infyom.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/#primaryimage"},"image":{"@id":"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/#primaryimage"},"thumbnailUrl":"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/integrate-the-stripe-customer-portal.png","datePublished":"2020-07-25T06:48:23+00:00","dateModified":"2024-08-13T06:56:06+00:00","breadcrumb":{"@id":"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/#primaryimage","url":"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/integrate-the-stripe-customer-portal.png","contentUrl":"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/08\/integrate-the-stripe-customer-portal.png","width":772,"height":484,"caption":"How to Integrate the Stripe Customer Portal"},{"@type":"BreadcrumbList","@id":"https:\/\/infyom.com\/blog\/how-to-integrate-the-stripe-customer-portal\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/infyom.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to Integrate the Stripe Customer Portal"}]},{"@type":"WebSite","@id":"https:\/\/infyom.com\/blog\/#website","url":"https:\/\/infyom.com\/blog\/","name":"Blog | InfyOm Technologies","description":"","publisher":{"@id":"https:\/\/infyom.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/infyom.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/infyom.com\/blog\/#organization","name":"InfyOm Technologies","url":"https:\/\/infyom.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/infyom.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/06\/InfyOm-Logo.png","contentUrl":"https:\/\/infyom.com\/blog\/wp-content\/uploads\/2024\/06\/InfyOm-Logo.png","width":88,"height":41,"caption":"InfyOm Technologies"},"image":{"@id":"https:\/\/infyom.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/infyom","https:\/\/x.com\/InfyOm","https:\/\/www.instagram.com\/infyomtechnologies\/","https:\/\/in.linkedin.com\/company\/infyom-technologies","https:\/\/github.com\/infyomlabs","https:\/\/x.com\/infyom"]},{"@type":"Person","@id":"https:\/\/infyom.com\/blog\/#\/schema\/person\/659bfc844c333d041221e83c5f5ec754","name":"InfyOm","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/infyom.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/1ad162864d8d33c04ea9e6d0333cc483?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/1ad162864d8d33c04ea9e6d0333cc483?s=96&d=mm&r=g","caption":"InfyOm"}}]}},"_links":{"self":[{"href":"https:\/\/infyom.com\/blog\/wp-json\/wp\/v2\/posts\/5649","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/infyom.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/infyom.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/infyom.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/infyom.com\/blog\/wp-json\/wp\/v2\/comments?post=5649"}],"version-history":[{"count":40,"href":"https:\/\/infyom.com\/blog\/wp-json\/wp\/v2\/posts\/5649\/revisions"}],"predecessor-version":[{"id":5958,"href":"https:\/\/infyom.com\/blog\/wp-json\/wp\/v2\/posts\/5649\/revisions\/5958"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/infyom.com\/blog\/wp-json\/wp\/v2\/media\/5651"}],"wp:attachment":[{"href":"https:\/\/infyom.com\/blog\/wp-json\/wp\/v2\/media?parent=5649"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/infyom.com\/blog\/wp-json\/wp\/v2\/categories?post=5649"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/infyom.com\/blog\/wp-json\/wp\/v2\/tags?post=5649"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}