#marcin_api

1 messages ¡ Page 1 of 1 (latest)

tacit forgeBOT
#

👋 Welcome to your new thread!

⏲️ We'll be here soon! Typically we respond in a few minutes, but sometimes we might take a bit longer if the server is busy or if you have a particularly tricky question.

⏱️ We close idle threads, which makes them read-only. Once a thread is closed it won't be reopened, but you can always start a new thread if you have another question.

🔗 This thread will always be available, even after it's closed. You can find it again using Discord's search, or you can save this link: https://discord.com/channels/841573134531821608/1282708945479139339

📝 Have more to share? Add more details, code, screenshots, videos, etc. below.

brazen yew
#

Hello

azure trench
#

Hi

brazen yew
azure trench
#

I create new account with this code:

var options = new AccountCreateOptions
            {
                Country = "GB",
                Controller = new AccountControllerOptions
                {
                    StripeDashboard = new AccountControllerStripeDashboardOptions { Type = "none" },
                    Losses = new AccountControllerLossesOptions
                    {
                        Payments = "stripe",
                    },
                    Fees = new AccountControllerFeesOptions
                    {
                        Payer = "application",
                    }
                },
                Capabilities = new AccountCapabilitiesOptions
                {
                    CardPayments = new AccountCapabilitiesCardPaymentsOptions { Requested = true },
                    Transfers = new AccountCapabilitiesTransfersOptions { Requested = true },
                }
            };
            var service = new AccountService();
            var result = service.Create(options);

Taking that into the consideration. Could I provide somehow in your dashboard test values from your document after the account is created via API?

#

Or do I have to provide test values through API?

brazen yew
#

Then you fill in the values during that Hosted Onboarding flow

#

Otherwise, yes, you can use the API to submit them

azure trench
#

Could I use the Account Link if I create account with StripeDashboard = new AccountControllerStripeDashboardOptions { Type = "none" }, ?

brazen yew
#

Yes

azure trench
#

Stripe asks me to provide valid phone number. What is the test value that I could use for valid phone number?

brazen yew
#

You click the test phone number there

#

Which skips that requirement for a test account

azure trench
#

Oh my goodness I overlooked that sorry. It is working let me keep on

#

Amazing it works! I was able to onboard my test account. Thank you very much!

I have one more problem that I try to resolve with Stripe support for a long time without success. I strongly believe that help from technical person could boost it. Would it be possible to share the case reference with you and ask about your help? I could also describe the problem if you prefer

brazen yew
#

If it is a technical question about our API then you can ask it here

azure trench
#

I believe it is. I have two accounts. One that my company uses for long time.
We connect standard accounts through oauth to that that old Stripe account. We do this: https://docs.stripe.com/connect/oauth-standard-accounts

We want to integrate slightly differently with Stripe by using another new Stripe account.
We create accounts via API with the code that I shared with you before.

We want to reuse code that we use to perform payments with old Stripe account.

We pass raw card data to your API to create setup intent. Here is the code:

Use the OAuth connection flow to allow a Stripe user to connect to your platform.

#
StripeConfiguration.ApiKey = StripeApiKey; //here we provide test API key from account `acct_1A4YhqEi61gxuCUM` or `acct_1PnEdQFLLecnCTPH`
var stripeAccountId = StripeAccountId; //here we provide `acct_1PtWUNHdSKHjUhYJ` or `acct_1PuVZhFLUbHQZyrq`

var requestOptions = new RequestOptions
{
StripeAccount = stripeAccountId
};
var setupIntentCreateOptions = new SetupIntentCreateOptions()
{
PaymentMethodTypes = new List<string> { "card" },
Confirm = true,
PaymentMethodOptions = new SetupIntentPaymentMethodOptionsOptions
{
Card = new SetupIntentPaymentMethodOptionsCardOptions
{
Moto = true
}
},
Expand = new List<string> { "payment_method" }
};
setupIntentCreateOptions.AddExtraParam("payment_method_data[type]", CommandConstants.CardPaymentMethodType);
setupIntentCreateOptions.AddExtraParam("payment_method_data[card][number]", "4242424242424242");
setupIntentCreateOptions.AddExtraParam("payment_method_data[card][exp_month]", "12");
setupIntentCreateOptions.AddExtraParam("payment_method_data[card][exp_year]", "2035");
setupIntentCreateOptions.AddExtraParam("payment_method_data[card][cvc]", "123");

var setupIntentService = new SetupIntentService();
var setupIntentCreateResponse = setupIntentService.Create(setupIntentCreateOptions, requestOptions);
#

It works well for new accounts connected to our old Stripe Account.
However, for new accounts connected to our new Stripe Account we get exception:
Stripe.StripeException: Sending credit card numbers directly to the Stripe API is generally unsafe. We suggest you use test tokens that map to the test card you are using, see https://stripe.com/docs/testing. To enable raw card data APIs in test mode, see https://support.stripe.com/questions/enabling-access-to-raw-card-data-apis.

According to your support the reason is that for old Stripe Account case the charge is created by the third party application. And for new Stripe Account case the charge is created by the connected account.
My question is what we have to change to also create the charge by third party application for new Stripe Account case?
As I said we use exactly the same code for both cases.

#

new Stripe account is acct_1PnEdQFLLecnCTPH
old Stripe account is acct_1A4YhqEi61gxuCUM

brazen yew
#

Nothing should be different, you just need approval to pass Raw PANs on your new platform

#

Which you should use the link above in the error message to request

#

Do you have an example request ID where you see that error message?

azure trench
# brazen yew Which you should use the link above in the error message to request

I used the link. But your support claims that they could enable Raw PANs only for existing Stripe accounts. We'd like to have RAW PANs enabled for new connected Stripe accounts as well.

As I said it works in that way with our Old Stripe Account integration. The same code created setup intent with success (seti_1PuVTTHdSKHjUhYJCZE9grm5) according to your support because it was created by third party application.

And request that failed for new Stripe Account is req_b5EwKHgwboMmaO. It uses the same code as one that created setup intent with success for old Stripe Account. According to your support it fails because it tries to create setup intent by the connected account.

brazen yew
#

Yeah that's not the case if you have already been doing this. I'd recommend reaching out again via the link and clarifying that you already have a platform passing raw PANs and that you are PCI certified to do so and that you simply want to enable this on your new platform as well. Clarify that you aren't a new user here.

#

Unfortunately I can't help with this here

#

Only Support can enable this for you

azure trench
#

I have already done it. But still cannot get it operational for our new Stripe Account.
They claim that I create the setup intent as connected account and to make it work I should create it as third party application.
However they have problems to explain me how to do it by reusing the existing code.

Is there any possibility that you add technical details to the request if I share with you the request reference [15770652] / sco_QjYyFN3l07TSEj ?

brazen yew
#

No sorry, I can't do that. I'd recommend just clarifying what I stated above. There shouldn't be any issue here if they enable this new platform to pass these Raw PANs. It also looks like you are using MOTO here so I'd clarify that as well.