Метод передачи полос в django
я работаю над проектом, в котором я хочу перевести сумму нескольким клиентам по полосам, я использовал метод перевода по полосам, но я получаю следующую ошибку
Ошибка: Запрос req_FlLAHrjOxkd4IO: У вас недостаточно доступных средств на счете Stripe. Попробуйте добавить средства непосредственно на ваш доступный баланс, создав Заряды с помощью тестовой карты 4000000000000077. См: https://stripe.com/docs/testing#available-balance
вот мой код
charge = stripe.Charge.create(
amount=5000,
currency="usd",
source='tok_visa',
description="Adding funds to test account"
)
charge_id = charge.id
# Assuming you have defined 'total_charges', 'user.id', 'seller_amount', and 'referral_amount' earlier in your code
session = stripe.PaymentIntent.create(
amount=total_charges,
currency="usd",
transfer_group=f"ORDER10_{user.id}",
)
stripe.Transfer.create(
amount=seller_amount,
currency='usd',
destination='acct_1OrzGLI3hFSHp0X5',
transfer_group=f"ORDER10_{user.id}",
)
stripe.Transfer.create(
amount=referral_amount,
currency='usd',
destination="acct_1OrzPRI5g3KKKWKv",
transfer_group=f"ORDER10_{user.id}",
)
При создании трансфера необходимо включить соответствующий идентификатор платежа в параметр source_transaction
: https://stripe.com/docs/api/transfers/create#create_transfer-source_transaction
Главное, что нужно помнить: при использовании source_transaction
, если платеж еще не завершен, то при переводе средства будут взяты с незавершенного баланса. Если же платеж уже доступен, то при переводе средства будут взяты с доступного баланса.
Если вы не укажете source_transaction
, он всегда будет пытаться использовать средства с вашего доступного баланса, и если платежные средства еще не доступны, а вы не укажете source_transaction
, то вы можете столкнуться с проблемой недостаточного количества средств.
Не совсем понятно, почему вы создаете Заряд, а затем Намерение платежа. Намерение платежа должно генерировать списание, когда вы его подтверждаете, но это уже другой вопрос.
У вас недостаточно средств, потому что создаваемому переводу нужны доступные средства для работы, а это занимает несколько дней после списания.
Чтобы обойти это, передайте этот аргумент в transfer.create:
source_transaction=charge_id