Can we use custom UI for STRIPE - stripe-payments

I implemented stripe with the default interface which is all fine.
But now my client wants to use his custom screen to input payment information like this
They just want to not use STRIPE's default UI
I have be searching about it but could not find about it. Is this possible?
Please guide.
Thanks in advance

You can use the https://stripe.com/docs/stripe-js method with Elements to achieve this. In addition, you can create your own custom HTML form with whatever data you want (metadata in the customers API) and use it that way.
To learn how to create charges: https://stripe.com/docs/api#charges
To learn how to create customers: https://stripe.com/docs/api#customers

Related

how to add coupons to stripe's checkout

To enable SCA changes, I am now integrating https://stripe.com/docs/payments/checkout/client stripe's (stripe v3 js file) checkout feature to my app, which makes it easy for integration of my subscription system.
Question
how to pass coupons to stripe.redirectToCheckout() method, don't see anything related to this in documentation.
code sample
stripe.redirectToCheckout({
items: plans_and_addons,
successUrl: successUrl,
cancelUrl: cancelUrl,
clientReferenceId: customer_id, // helpful in webhook response
})
I am also facing the same issue so I contacted stripe support.
Please check the support team's reply.
I did a thorough research on your query and I'm afraid, Checkout supports only a limited set of customizations (e.g. name, description, logo) and fields. Focusing the UI allows us to iterate on it more effectively to improve conversions and maintain support across a wide range of platforms.
They provided me one document link you can also check it. https://stripe.com/docs/payments/checkout/customization
I think you can solve your problem by creating custom checkout with helping stipe API. --not tried.
As Daniel says above, you can't enable the promo codes when you call redirectToCheckout but you can enable the promo codes when you create the stripe session from your API.
So, to sum app, when you create the checkout session using Stripe.checkout.sessions.create() you have to also pass the allow_promotion_codes: true and this will actually allow you to apply promo codes to the products you have created in the stripe -> products page.
You can find more informations on this page: https://stripe.com/docs/billing/subscriptions/coupons/codes
I also ran into this, and what I've deduced from the Stripe docs is that you can't apply a coupon directly to the redirectToCheckout method, you have to create a Checkout session first and then use that.
Add a discount to Checkout the sample code is calling Checkout.session.create, not Checkout directly
redirectToCheckout Reference Docs doesn't mention a discount or coupon parameter at all, and the sample code again is creating a Checkout session using fetch (to one's own server backend, which is where my expertise ceases and where I'm stifled), to generate a session ID and then passing that into the result where redirectToCheckout is called.

Save selected option of the list shown in Assistant

I am using the List rich response in my assistant action and what I want is to save the option selected by user on the front end only.I am using Firebase as my backend server but I don't want this user selected option to store in firebase but it should get persisted across messages just like contexts.
What are the probable options to implement this?
Also, I found this documentation where we can save the data in conversation, so can I use this feature? In which scenarios can we use this?
Thanks
You can save in parameters using context or in data if using only action-on-google client.
See my answer here

Creating new payment method for Bigcommerce

I would like to know if this is possible to add new payment method for Bigcommerce. I tried to contact their support without any luck. If anyone is familiar with bigcommerce and know if this is possible, i would appreciate any advice.
I already read their API docs and didn't found anything useful - only method to obtain list of available payment methods.
I already tried to signup for their partner. Without any luck.
We've done this before for a couple stores to allow clients to process payments through their own processor. The way we achieved this, is essentially through the following high-level steps:
Allow payments by Check (or similar offline method). We are going to replace this with the custom processor.
You'll notice that if you attempt to checkout via Check, that BigCommerce automatically creates the order for you, but sets the order status to Awaiting Payment. Upon submission the user is automatically sent to a 'Thank You' Order Confirmation page that contains both the Order ID and some payment instructions (such as where to send the check to).
Here's the trick -- Modify this 'Order Thank You' page to prompt the user for her or his credit card information. A simple HTML form will suffice here, performing the actual request via JavaScript.
Once you have the user's credit card data, you can then POST it to your own external server, where you would connect to and send data to whichever processor you are using. Additionally, you should make sure to send the Order ID to this program, so that you can connect to the BigCommerce API to load billing information, and then subsequently adjust the order status to either approved or declined depending on the response from your processor. Finally, you should send back some sort of response to the client to inform of the result of the charge attempt.
That's pretty much it in a nutshell. The way you integrate with the payment processor (step 4) is unique to whichever processor you are using. I hope this makes sense.
Although opinion based, I'm a huge fan of serverless technologies, and would suggest looking into AWS Lambda + AWS API Gateway. The benefit here is that you don't need to worry about creating an infrastructure or the associated concerns of security and scale. Rather, AWS Lambda allows you to simply upload your software, and allows it to be executed via an HTTP request to some defined endpoint set through the API Gateway. Lambda will scale automatically for you, and you don't need to worry about system level security concerns - only security at the application level. It's truly a set and forget setup, and a bleeding edge technology. Not to mention dirt cheap!
Implementing a new payment method is unsupported and requires hacky workarounds since we implement payment gateways via the core app. You can do this on blueprint by using an offline payment method and then using the API to update payment statuses, etc. I'd recommend using ActiveMerchant if you do wish to go down this path.

How to supply name and email to Paymill payment

I am creating a Rails 3.2 application where I use Paymill to handle payments.
I can make one off payments using Active merchant. The problem with this is I cannot find a way to send the name of the buyer and the email address so the Paymill Client is incomplete. Also I would like to be able to create a Paymill subscription using Active merchant. Is this possible?
I know there is a Javascript version of the payment system and it works. Problem is I do not want to use Javascript, only ruby.
I have used this guide: How to make a payment via Paymill using Ruby
Thankful for all help!
Please, do NOT use Active Merchant if you don't have the proper PCI certifications. The Javascript version is the only way to use our service and profiting from our PCI compliance.
That being said, please take a look at the following paymill-ruby-wrapper, which has been provided by a third party developer - maybe it serves your purpose: https://github.com/dkd/paymill-ruby
Best regards,
Julian
(disclaimer: I work at PAYMILL)
Julian is right, you should not use ActiveMerchant except if you have the proper PCI certifications. It seems you want to do something like this:
1) Create a client object, passing the name (description) and email as parameters. See this: https://www.paymill.com/de-de/dokumentation/referenz/api-referenz/#create-new-client
2) Create a payment method object, passing the client as parameter (and the token retrieved by the JavaScript bridge): https://www.paymill.com/de-de/dokumentation/referenz/api-referenz/#create-new-credit-card-payment-with
3) Make a new transaction, passing the payment method object: https://www.paymill.com/de-de/dokumentation/referenz/api-referenz/#create-new-transaction-with
And to create a subscription, you need to have an offer object and a client with a valid payment method: https://www.paymill.com/de-de/dokumentation/referenz/api-referenz/#create-new-subscription

How to provide Detail and Summary objects for my REST api with Node.js and Mongoose?

I want to provide some venue information over my node.js REST API build by mongoose and express.
In my model, I should take care of every details for a venue.
But when requested for summary, I should show only some of them.
And If requested for 1 venue in detail, I should show more.
What is the best way to do it?
If you want to achieve something like this why not create some custom queries for your detail and summary actions?
Basically what you need to do.
Create your custom queries that received the custom data.Do this in your model. (e.g the data for summary or details)
Create specific actions for these speficic type of API calls in your controllers and server it as you wish. (E.g create /getVenueDetail/venueId=213235 )

Resources