#haulc_best-practices

1 messages ¡ Page 1 of 1 (latest)

ornate moonBOT
#

👋 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/1410166511997550626

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

scarlet frigate
#

Hi! Looking into this!

manic hatch
#

Hi, could you clarify how capture_method is related to application_fee_amount?

ornate moonBOT
manic hatch
#

Making an assumption here, if you don't know the tip yet, and will need to decide the application_fee based on the tip amount after transaction, I would suggest using Separate Charges and Transfer flow.

crimson ore
#

Hey, taking over here. Let me know if there's any follow-up Qs I can answer!

feral oracle
#

Is there no way we can charge application_fee for that tip?

feral oracle
crimson ore
#

Do you have an example Payment Intent that demonstrates the problem I can look at? pi_xxx

feral oracle
#

wait for me a few munites please

#

pi_3RzJOoKukcQuF86S1jghm0gL

#

please check this payment intent

#

application fee is 3.9%.

crimson ore
#

OK so as I understand it you want to increase the application_fee_amount as a portion of the tip the customer enters on the reader at payment?

feral oracle
#

yep

crimson ore
#

Let me check

#

Yeah unfortunately not seeing any alternative other than what has already been suggested

feral oracle
#

please check this payment intent

#

pi_3S02bOKukcQuF86S0gpkOj6d

crimson ore
#

What do you want me to check?

feral oracle
#

Is it ok to transfer a small amount of money from this transfer?

crimson ore
#

Sure, should work fine. Try it

feral oracle
#

but in this dashboard page of connected account show this transaction is refund

#

i think they will not accept this

ornate moonBOT
vague depot
#

Hey! Taking over for my colleague. Let me catch up.

vague depot
feral oracle
#

no. i created a reversal transfer when transaction is capture

vague depot
#

Yes, your integration created a reversal which triggered the refunds

#

The ideal flow then, is to complete the charge and then do a separate transfer with the net amount

feral oracle
#

as you know. i want to charge application fee with tip when customer enters on the reader. please give me other solution to do this.

#

because solution create reversal transfer merchant will not accept. with tag transaction is partial refund

vague depot
#

You create the transfer after the payment is completed, the compute the tips and the final application fees, then make a transfer to the connected account with the remaining amount

feral oracle
#

hmm let me check.

feral oracle
#

when payment is processed the transfer is auto when i set payment intent transfer_data.destination is connected account

feral oracle
crimson ore
#

No, you'd omit the transfer_data, application_fee_amount parameters completely from the intent to prevent the auto transfer. Then, once the Payment Intent is confirmed, you'd then initialise a Transfer separately via the API for the desired amount leaving the net amount on platform

#

An example:

  • 100 USD payment, you want to keep 10% of the total (inc. tip) on the platform
  • You collect card details on the reader, present the tip UI as normal
  • Customer selects a 10 USD tip, making the total payment 110 USD
  • One the payment is confirmed on the platform, you can then initialise the transfer for 90% of the total, 99 USD to the connected account
  • That leaves 11 USD (10%) on the platform for your 'fee'
crimson ore
#

So I don't think any workaround today will support tipping for Interac cards as you'll always need to do capture_method: 'manual'