{
    "componentChunkName": "component---src-templates-article-page-template-js",
    "path": "/concepts/solving-payout-problems/",
    "result": {"data":{"markdownRemark":{"frontmatter":{"title":"Solving payout problems","slug":"solving-payout-problems","updated":"2019-09-10T00:00:00.000Z","category":"concepts-payments","ingress":"A payout is the part of the payment process where the price of a booking is paid to the provider's bank account. This article gives you an overview of how payments work in Flex, what problems you may encounter with payouts, and how to solve those problems.","skills":null},"htmlAst":{"type":"root","children":[{"type":"element","tagName":"h2","properties":{"id":"introduction","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#introduction","ariaLabel":"introduction permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Introduction"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Enabling customers to pay for their bookings and paying that money to\nlisting providers is one of the most valuable features of Flex. Most of\nthe time payments work as expected: the customer pays for the booking\nand the provider receives the money when it's time. However, there are\nmany variables that affect the payments and sometimes problems may\noccur. The payment gateway can deny payouts to a user, the user's bank\nmight deny payouts, or for some other reason the numbers don't seem to\nadd up. This article presents potential cases where payouts might fail\nand what are the ways to fix those issues."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"payments-in-flex","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#payments-in-flex","ariaLabel":"payments in flex permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Payments in Flex"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"span","properties":{"className":["gatsby-resp-image-wrapper"],"style":"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 635px; "},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"a","properties":{"className":["gatsby-resp-image-link"],"href":"/docs/legacy/static/c1730ebe3afba7af9cf90714ad2e0de7/53fb6/payment-process.png","style":"display: block","target":"_blank","rel":["noopener"]},"children":[{"type":"text","value":"\n    "},{"type":"element","tagName":"span","properties":{"className":["gatsby-resp-image-background-image"],"style":"padding-bottom: 70.44025157232704%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAOCAYAAAAvxDzwAAAACXBIWXMAAAsTAAALEwEAmpwYAAACNUlEQVQ4y3WT21LbMBCG8/7PRClMaQM5GgPjmACJ4ziydVpJtpP06u9IdiBM4eKftQ77eU8amOYA2x7hrWuP2NkaKWksDb3rUUk8Kflpz99ZGQPbHGDaD8ZA2QaVthDkILXD2liMVYURZ7irdpjIEldVgeuqwESUYW/MGUaywhMp2PoArl2QtA0GgmpkO47XnIFxjY11mGuBX6s3XKYLTHmJB6MQa4mrlyV+pAtcPqe4KwukhgLQ+z+vcnBtMWj2R2SyxuRxgb+HY4hwTgL3uhdJRFoEzRVH3NuZ5khIwzVHUL0H1W2Xsq73yLXFmgsw47AxFjMtEJMMkUXnUL9HKpz5O4sAPICafailBw/8glMDxmoot8fGueDoIXEPCt9GBftoO+uByRnQnIDKtSjIYmssSlNjyQV+51mo08/nFBdpgotFgtsix6gsMNtWuBcCM/oc4TvQpyxcC+EaePiKKBR8uM0wYlsMt5sAm3CGSHPEXCBWMtQ5IfU/MMxhL19g3+XISDwohWjH8SfPcPW6xM36DWNRYqQq3AqGW1F+RFifAU+LEzjzXfZ1kwJRxTEVJW6yFcY+XcUxVRxjWeFOlliYDtg9jm+AG9sBT132DXiwOjTFN2goGKaywrDIcZ0ssN4ysMpAVk14Md9GGPcjcq9lP5MyaN7PpJ/DiO2gTA3tWpDpOF8CJ5p3jiTCeJzLR+zP/J3EEOr2COrf86eUvfVAZmu8GMJrr5cvrcGSKPz8NNAnzj+xkhEvG5EB0QAAAABJRU5ErkJggg=='); background-size: cover; display: block;"},"children":[]},{"type":"text","value":"\n  "},{"type":"element","tagName":"picture","properties":{},"children":[{"type":"text","value":"\n          "},{"type":"element","tagName":"source","properties":{"srcSet":["/docs/legacy/static/c1730ebe3afba7af9cf90714ad2e0de7/82e29/payment-process.webp 159w","/docs/legacy/static/c1730ebe3afba7af9cf90714ad2e0de7/ef33f/payment-process.webp 318w","/docs/legacy/static/c1730ebe3afba7af9cf90714ad2e0de7/f1837/payment-process.webp 635w"],"sizes":"(max-width: 635px) 100vw, 635px","type":"image/webp"},"children":[]},{"type":"text","value":"\n          "},{"type":"element","tagName":"source","properties":{"srcSet":["/docs/legacy/static/c1730ebe3afba7af9cf90714ad2e0de7/8b9b5/payment-process.png 159w","/docs/legacy/static/c1730ebe3afba7af9cf90714ad2e0de7/fa108/payment-process.png 318w","/docs/legacy/static/c1730ebe3afba7af9cf90714ad2e0de7/53fb6/payment-process.png 635w"],"sizes":"(max-width: 635px) 100vw, 635px","type":"image/png"},"children":[]},{"type":"text","value":"\n          "},{"type":"element","tagName":"img","properties":{"className":["gatsby-resp-image-image"],"src":"/docs/legacy/static/c1730ebe3afba7af9cf90714ad2e0de7/53fb6/payment-process.png","alt":"Flex payment process","title":"Payment process in Flex.","loading":"lazy","decoding":"async","style":"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;"},"children":[]},{"type":"text","value":"\n        "}]},{"type":"text","value":"\n  "}]},{"type":"text","value":"\n    "}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"To make sure that payments make it to the provider and that the\nmarketplace operator can collect their commissions, Flex uses a payment\ngateway called "},{"type":"element","tagName":"a","properties":{"href":"https://stripe.com","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Stripe"}]},{"type":"text","value":". The image above presents\nthe steps that are taken when a customer pays for a booking and the\nmoney is eventually paid to the provider. As an example, it uses a\nbooking that costs 100€ and has both customer and provider commissions\nof 10%. The different entities that are involved in the process are\n"},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"Customer's payment card"}]},{"type":"text","value":", "},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"Stripe platform account"}]},{"type":"text","value":", "},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"Connected\naccount"}]},{"type":"text","value":", and "},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"Provider's bank account"}]},{"type":"text","value":"."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"ul","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"Customer's payment card"}]},{"type":"text","value":" Credit or debit card that the customer\nuses to pay for the booking."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"Platform account"}]},{"type":"text","value":" Stripe account of the marketplace. This is the\naccount that is identified by the secret Stripe key that is configured\nin the Console."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"Connected account"}]},{"type":"text","value":" Provider's connected account in Stripe. This\naccount is created by Flex and it is not accessible by the provider\nbut it can be used to specify the payouts of a single provider in the\nStripe Dashboard."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"Provider's bank account"}]},{"type":"text","value":" This is where the money is paid when a\npayout is created."}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"The different steps where money moves around in the payment process are\nas follows."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"ol","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"Preauthorize"}]},{"type":"text","value":" An amount of money is preauthorized from the\ncustomer. The amount of the transaction does not leave customer's\npayment card but it's reserved to pay the booking. In the default\ntransaction process this happens when a customer requests to book a\nlisting and the payment is confirmed."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"Capture charge"}]},{"type":"text","value":" Flex operates using a Stripe concept called\n"},{"type":"element","tagName":"a","properties":{"href":"https://stripe.com/docs/payments/payment-intents","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"PaymentIntents"}]},{"type":"text","value":"\nbut behind the scenes a "},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"charge"}]},{"type":"text","value":" is what defines the payment. When a\ncharge is captured, the preauthorization from step 1. is paid to\nStripe and more specifically to the connected account of the\nprovider. Once money is transferred to a connected account it is\nconverted to a "},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"settlement currency"}]},{"type":"text","value":" which is the currency of the\nconnected account. The settlement currency is defined by the currency\nof the associated bank account. At this point the provider does not\nyet have access to the money. It stays in Stripe and is earmarked to\nbe paid to the provider. In the default processes this happens when\nthe provider accepts a booking request. See also the background\narticle on "},{"type":"element","tagName":"a","properties":{"href":"/docs/legacy/concepts/payment-intents/"},"children":[{"type":"text","value":"PaymentIntents in Flex"}]},{"type":"text","value":"."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"Pay commissions"}]},{"type":"text","value":" Once a charge is captured and the money is in the\nprovider's connected account, commissions are moved to the\nmarketplaces Stripe account (the platform account). In our case both\ncustomer and provider commissions are 10€."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"Payout"}]},{"type":"text","value":" In the payout money from the connected account is paid to\nthe provider's bank account according to the payout details they have\nprovided."}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Normally everything goes as expected, but as payments involve multiple\n3rd party stakeholders there are some cases where for one reason or\nanother the payout fails. In these cases it's good to know a few places\nwhere to look into to solve the situation."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"why-payouts-fail","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#why-payouts-fail","ariaLabel":"why payouts fail permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Why payouts fail"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"insufficient-funds","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#insufficient-funds","ariaLabel":"insufficient funds permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Insufficient funds"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Payouts can fail if the provider's connected account does not hold\nenough funds to pay out a charge. Here are a few scenarios in which a\nconnected account can have insufficient funds."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h4","properties":{"id":"manual-refund","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#manual-refund","ariaLabel":"manual refund permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Manual refund"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Manually refunding a payment straight from Stripe usually fixes the\ntransaction that is being refunded but it may lead to problems in\nforthcoming transactions. "},{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"Therefore, you should not manually refund\npayments in the Stripe Dashboard!"}]},{"type":"text","value":" As an example of how manual refunds\ncan result in insufficient funds on a connected account, picture the\nfollowing scenario:"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"ul","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"Provider has two transactions, both have a captured charge."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"Price on both is the same as in the image above: the booking costs\n100€, customer and provider commissions are both 10%."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"The balance on the connected account is therefore 180€."}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Now the provider decides to cancel one of the bookings while the\ntransaction is in a state where cancelling is not permitted by the\ntransaction process. In order to solve the situation, the operator\ndecides to refund the payment manually from Stripe. As the provider was\nlate to cancel the booking, the operator decides to keep both\ncommissions and let the provider pay them. The following takes place:"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"ul","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"The operator refunds the payment manually from Stripe, selecting not\nto refund the "},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"application fee"}]},{"type":"text","value":" (the commissions in Stripe terms)."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"110€ is refunded from the provider's account, leaving the balance\nthere to 70€."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"Eventually it's time to pay out the other transaction. The balance of\n70€ is insufficient for paying out 90€ to the provider's bank account\nand the payout for that transaction will fail."}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Manual refunds are not supported by Flex. Ideally the transaction\nprocess should be designed so that all refunds can be performed from\nFlex."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h4","properties":{"id":"disputes","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#disputes","ariaLabel":"disputes permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Disputes"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"a","properties":{"href":"https://stripe.com/docs/disputes","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Dispute"}]},{"type":"text","value":" is an act where a customer\nannounces to their payment instrument provider that a payment has not\nbeen valid and wishes the paid amount to be returned to them. This will\ncause the payment being debited to the platform account with an\nadditional chargeback fee that varies between countries. The platform\naccount is responsible for all disputed payments but it can also debit\nthe connected account for the disputed payment if it appears to actually\nbe fraudulent. This is done by reversing a transfer manually from\nStripe."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"When a transfer is reversed, funds are moved from a connected account to\nthe platform account. If a transaction is already paid out from the\nconnected account this can lead to a negative balance. In some countries\nStripe can withdraw funds from a bank account associated with a\nconnected account in order to cover a negative balance. In countries\nwhere this is not supported negative or insufficient funds caused by\ndisputes can cause forthcoming payouts to fail."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"the-payout-is-too-small","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#the-payout-is-too-small","ariaLabel":"the payout is too small permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"The payout is too small"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Stripe refuses to make a payout sometimes if the amount is too small.\nThe minimum payout varies depending on the settlement currency (currency\nof the connected account). More about payout limits can be found in the\n"},{"type":"element","tagName":"a","properties":{"href":"https://stripe.com/docs/payouts#minimum-payout-amounts","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Stripe documentation"}]},{"type":"text","value":".\nThis is quite a rare problem as there is also a minimum amount for\ncreating a charge so smaller payments usually fail already at that\nphase. But still good to keep in mind when investigating a failing\npayout."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"stripe-or-bank-refuses-the-payment","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#stripe-or-bank-refuses-the-payment","ariaLabel":"stripe or bank refuses the payment permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Stripe or bank refuses the payment"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Sometimes Stripe or the provider's bank can refuse a payment for varying\nreasons. In most cases it's due to some information being missing from\nthe provider's connected Stripe account. At the moment Flex can not keep\nup with payout status changes like this so if Stripe or the receiving\nbank refuses the payout for one reason or another, the transaction state\nin Flex will not update."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"how-to-investigate-and-fix-failed-payouts","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#how-to-investigate-and-fix-failed-payouts","ariaLabel":"how to investigate and fix failed payouts permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"How to investigate and fix failed payouts"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"insufficient-funds-1","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#insufficient-funds-1","ariaLabel":"insufficient funds 1 permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Insufficient funds"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"If there's a reason to doubt that a payout has failed, one place to\nstart tracking it is the transactions CSV export which is available\nunder "},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"Manage > Transactions"}]},{"type":"text","value":" in Console."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"span","properties":{"className":["gatsby-resp-image-wrapper"],"style":"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 635px; "},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"a","properties":{"className":["gatsby-resp-image-link"],"href":"/docs/legacy/static/9ddf8cf43ba1479e3d34ddb86db8c637/53fb6/console-tx-csv.png","style":"display: block","target":"_blank","rel":["noopener"]},"children":[{"type":"text","value":"\n    "},{"type":"element","tagName":"span","properties":{"className":["gatsby-resp-image-background-image"],"style":"padding-bottom: 23.270440251572328%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAFCAYAAABFA8wzAAAACXBIWXMAAAsTAAALEwEAmpwYAAAA50lEQVQY033Jy0rDUBSF4byZNFgQR1qNiIghCo58LFETkEblBK840EknTnyDpm1CJTSXJjnJEX9pa0caF3xs1tpaEIak2ZQ4zVBKIauKulbUakE1aPppKxv7rBoWbcNife+YTeuE9s4ha7tH863VOUDfMn8zTPRtE71j0pr52TXXe8T1HuiKe55fe/Te3rl9euHy5g7H9bC74k9np4LzC4F9JXCuBY4rsF2BFkUxM3GcMZmkLHsSZ/ybT6CAr4/FXUbr+wH9QcBwNJ7zhyH+IGAUjMkLSdGglJKykuSJJIlK4qxkmku+AfhSThnEfun+AAAAAElFTkSuQmCC'); background-size: cover; display: block;"},"children":[]},{"type":"text","value":"\n  "},{"type":"element","tagName":"picture","properties":{},"children":[{"type":"text","value":"\n          "},{"type":"element","tagName":"source","properties":{"srcSet":["/docs/legacy/static/9ddf8cf43ba1479e3d34ddb86db8c637/82e29/console-tx-csv.webp 159w","/docs/legacy/static/9ddf8cf43ba1479e3d34ddb86db8c637/ef33f/console-tx-csv.webp 318w","/docs/legacy/static/9ddf8cf43ba1479e3d34ddb86db8c637/f1837/console-tx-csv.webp 635w"],"sizes":"(max-width: 635px) 100vw, 635px","type":"image/webp"},"children":[]},{"type":"text","value":"\n          "},{"type":"element","tagName":"source","properties":{"srcSet":["/docs/legacy/static/9ddf8cf43ba1479e3d34ddb86db8c637/8b9b5/console-tx-csv.png 159w","/docs/legacy/static/9ddf8cf43ba1479e3d34ddb86db8c637/fa108/console-tx-csv.png 318w","/docs/legacy/static/9ddf8cf43ba1479e3d34ddb86db8c637/53fb6/console-tx-csv.png 635w"],"sizes":"(max-width: 635px) 100vw, 635px","type":"image/png"},"children":[]},{"type":"text","value":"\n          "},{"type":"element","tagName":"img","properties":{"className":["gatsby-resp-image-image"],"src":"/docs/legacy/static/9ddf8cf43ba1479e3d34ddb86db8c637/53fb6/console-tx-csv.png","alt":"Transactions CSV export","title":"Transactions CSV export","loading":"lazy","decoding":"async","style":"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;"},"children":[]},{"type":"text","value":"\n        "}]},{"type":"text","value":"\n  "}]},{"type":"text","value":"\n    "}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"The transactions CSV file has a column called "},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"PayoutState"}]},{"type":"text","value":" which\nindicates what is the status of the payout. PayoutState can have five\ndifferent values."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"ol","properties":{},"children":[{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"Pending. This means that the customer has been charged, but your\nmarketplace has not yet attempted to initiate a payout to the\nprovider."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"Due. This means that a date for the payout has been assigned by Flex.\nYou can see this date in the column PayoutDue. Flex will attempt a\npayout on this date."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"Paid. Flex has attempted to pay the money to the bank account of the\nprovider. According to Stripe, it will then take between 1 and 7 days\nfor the money to reach their bank account. However, it's still\npossible for the payout to fail, if there's something wrong with the\naccount of the provider."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"Cancelled. This means that the payout won't be attempted, because the\ntransaction was cancelled for one reason or another (by you, the\ncustomer, or the provider), and the money has been refunded to the\ncustomer."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"li","properties":{},"children":[{"type":"text","value":"Failed. This means that something went wrong with the payout, and the\nprovider didn't receive the money they were supposed to receive."}]},{"type":"text","value":"\n"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Another column to pay attention to in the CSV file is\n"},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"PayoutTotalConverted"}]},{"type":"text","value":". It is the payout total (in subunits) converted\nto the settlement currency of the connected account. This amount of\nmoney should be available in the connected account in order to\nsuccessfully pay out the charge."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"If failed payouts are found in the transactions CSV export, the next\nstep is to identify the corresponding failed payout events from Stripe.\nLog into the "},{"type":"element","tagName":"a","properties":{"href":"https://dashboard.stripe.com","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Stripe Dashboard"}]},{"type":"text","value":" and look\nfor the "},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"Logs"}]},{"type":"text","value":" tab under "},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"Developers"}]},{"type":"text","value":"."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"span","properties":{"className":["gatsby-resp-image-wrapper"],"style":"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 157px; "},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"a","properties":{"className":["gatsby-resp-image-link"],"href":"/docs/legacy/static/575c4609aac305d9ecb3043ca7edd045/5e2c7/stripe-logs.png","style":"display: block","target":"_blank","rel":["noopener"]},"children":[{"type":"text","value":"\n    "},{"type":"element","tagName":"span","properties":{"className":["gatsby-resp-image-background-image"],"style":"padding-bottom: 111.46496815286623%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAWCAYAAADAQbwGAAAACXBIWXMAAAsTAAALEwEAmpwYAAACyElEQVQ4y4VV2VIaQRTlo/KWz8hv5SkPqUollURDgqbiEqMSVBSwWARhcGEgyOqszDCAqKhPJ3Xv2DiOgz7cun2nu0+fu05IMQc4Nxxo1gi9wSVrYYs9Eu/aa3s1SYgMtTdEtaEgV5Txr6VBs4aoNVV09T50+4Klo9n8iLDpDokXjAE7Wh/26Bpv383h1es3CP/cRP9igpX1PYQX17G4HEPkVxRzP9ZYf/62gq/ff2NpLY68VIXRH6OrP7BmhvRiMlNGZCmGcqXJtnTaQKFcQ+nkjHXxuI50/gSJdIntI7nJXokQTRmKGFD8Bpe3DObaV8zUGlzBGrprezSBM76B6Yz5nB9sypAWFC+KE2k6mC6cYHUjgdheDrliBbHdHDKFU6SyZbSU3uykeNFFBtXeAJkCuSfhSG7hoFRFdCeD7WQe8VQBja7BZ/xZfwLoBXbdvGEtXKawUAJN5zLQ3WcZUvCJVTx1iO1EHjvJPLKHFaRyZbYpKf46nQlIr9Plv/EsovEsx28nWWC9lTjA5naa4/ki4BOXRxN2kUS4TNmlLFNR+xMSyFDoZEbCQUlmJqL+jqstBqJKCGrBZwETGQm7+0VsbKVZU9wIWLdHgf0902WxqdtD9AYXsEdjFqM/CuzdF7NMuqM5KMkWihULWclEtmyi3ulPa08xnZnAoSDq1OzxjIHlLQ0fFrqYX1EgyRZ0+6mLgQy9B7wPaD0HbdXhB/yd4Rdx56GXDfeiAKZaZLmfe0FC+/7yCQkwYqOaDlqqxWVBo6lS76KtWmgpFhpdE2cdgwcDaepnGsa0bqv2A0Na0IXr6wlu7+74Im1QmXwJr2I+8gfhxQ3s547waW6Jhyu15Fo0hfcfFzAfcQcvkXgUw5Ziotk1mCF9I2b0eq2p3LOw+Lcgn52jeW6i3tbZA/Ht0cR2QV0RD1AS/HEScXW/D6dD1vtD+w+zDzly7i4jrQAAAABJRU5ErkJggg=='); background-size: cover; display: block;"},"children":[]},{"type":"text","value":"\n  "},{"type":"element","tagName":"picture","properties":{},"children":[{"type":"text","value":"\n          "},{"type":"element","tagName":"source","properties":{"srcSet":["/docs/legacy/static/575c4609aac305d9ecb3043ca7edd045/45c84/stripe-logs.webp 157w"],"sizes":"(max-width: 157px) 100vw, 157px","type":"image/webp"},"children":[]},{"type":"text","value":"\n          "},{"type":"element","tagName":"source","properties":{"srcSet":["/docs/legacy/static/575c4609aac305d9ecb3043ca7edd045/5e2c7/stripe-logs.png 157w"],"sizes":"(max-width: 157px) 100vw, 157px","type":"image/png"},"children":[]},{"type":"text","value":"\n          "},{"type":"element","tagName":"img","properties":{"className":["gatsby-resp-image-image"],"src":"/docs/legacy/static/575c4609aac305d9ecb3043ca7edd045/5e2c7/stripe-logs.png","alt":"Stripe logs","title":"Stripe logs","loading":"lazy","decoding":"async","style":"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;"},"children":[]},{"type":"text","value":"\n        "}]},{"type":"text","value":"\n  "}]},{"type":"text","value":"\n    "}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"From the logs clear all other filters but "},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"request failed"}]},{"type":"text","value":"."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"span","properties":{"className":["gatsby-resp-image-wrapper"],"style":"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 329px; "},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"a","properties":{"className":["gatsby-resp-image-link"],"href":"/docs/legacy/static/4f9088e8b8eaa96ec332132bb299c60c/156b4/stripe-logs-filter.png","style":"display: block","target":"_blank","rel":["noopener"]},"children":[{"type":"text","value":"\n    "},{"type":"element","tagName":"span","properties":{"className":["gatsby-resp-image-background-image"],"style":"padding-bottom: 127.67295597484276%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAaCAYAAAC3g3x9AAAACXBIWXMAAAsTAAALEwEAmpwYAAADuElEQVRIx41W247jRBT0V/PED/DAPvAMEv8BD4A02mWHRZAZcptN4iS+Jrbje7vdtgvVcRJmhgyipVIrHvu4+lSd8ljDMKAoSijVCNrWwJhOwDUMwIAR19/D8CasruvguAE8/4DJwxyeF0A1HYqykTJ93//rof9aVtu2qGsl7MqyRpaXKIoKZVXDdD36YZC90e0VedEgSRWKSoOEXjDMikqK2DsXcZJCaYNKGzSmx2bvY/ZkwwtjlI2BGXrYXo0v323wxVdr2Xd+Dm0MlO7QtB2sY5JJwe3ORXiIoU0HbXqYAQijExarHRz/iKppYfoeTljj3XcbfP3tGt98b8N2T6gaLSRqbWCd0lyEaLRGmhXI8gJ5USI5ZWjPwnD1/YCO/bxK1MvO+6tan4l0sNivViukaYaNvYe9dRGER+wdX3o5FnspTP9sp0NI6NrDnIzUANWObx5tAWFD67DpfJAMb4EvNc9OYrWqxC/LAQ+bArutjbXtwPNDOK6P5dMGh2N8ceBNm3heiO3OQ3iIEEUJrCwrMAyd3N4JMx5l7BB7KOj6lzhfI/MkSaX3YrWyZg8L/GnX+DCNcL+I8GmZ4NfpAffzCDNHYbqvMd2rZ6gxdRQmdon7pxx+mCCOT1KsqtRY8NO6xt3Ex93Ewf3sgLuJi/ePPubngrPXcBQe7AJ30xO2zgGuGyCKU8RxCouyN2LmXoQhGgNBpTvUur+B8XrbDcg5WWUFrVtRW2yjtUYSJ9jvPSyWK8wXn8VG/4jxFiCi7fYe9k6A40WUizWer9eavv5NbxJk+MI2ZNg0zdnYDnz/ANcL5K0cR7Jeb3bwg4MkEpOJpr8Ucb0Qs8VKBoJ/E4amG/OvqmqoRkvy6HMKsT8yXlUt1hCU1XV6+DwTqDUGXdeTYSk95B6GEYIwkr7wzbTDW+uSi2S93uxlZ7jI6LE6WZEFg4ExFsUnpFk+zqz069XYnWeX7Bkw3MncYlMpNwuymIQt46iq5diSKzei/iJiEBwl/q6isCCPnGU57K0j8IOjJA/78/x4t47Me0+n7HrteuRrsvRj4lw+SN3ZHt0N8N40zeVzwRMyU60xflqw8Gq9FavUqsH/XRSQSUOQqcW+UR1SDw6xCMIEOR4TESaKTtedk8CISs6icacYF0+yrxY99PH3GX746SN+/Pk32Dtf7PLHZC4GXq13WCzWePzrCQ+PC8zmK8m/5ZONxXIj9qJl+EKSsmhq1bSjoZsWWhvJO90aUX/83oyfz8s1pfSLfwgIhgNr/Q0W688ljz9fBgAAAABJRU5ErkJggg=='); background-size: cover; display: block;"},"children":[]},{"type":"text","value":"\n  "},{"type":"element","tagName":"picture","properties":{},"children":[{"type":"text","value":"\n          "},{"type":"element","tagName":"source","properties":{"srcSet":["/docs/legacy/static/4f9088e8b8eaa96ec332132bb299c60c/82e29/stripe-logs-filter.webp 159w","/docs/legacy/static/4f9088e8b8eaa96ec332132bb299c60c/ef33f/stripe-logs-filter.webp 318w","/docs/legacy/static/4f9088e8b8eaa96ec332132bb299c60c/dd588/stripe-logs-filter.webp 329w"],"sizes":"(max-width: 329px) 100vw, 329px","type":"image/webp"},"children":[]},{"type":"text","value":"\n          "},{"type":"element","tagName":"source","properties":{"srcSet":["/docs/legacy/static/4f9088e8b8eaa96ec332132bb299c60c/8b9b5/stripe-logs-filter.png 159w","/docs/legacy/static/4f9088e8b8eaa96ec332132bb299c60c/fa108/stripe-logs-filter.png 318w","/docs/legacy/static/4f9088e8b8eaa96ec332132bb299c60c/156b4/stripe-logs-filter.png 329w"],"sizes":"(max-width: 329px) 100vw, 329px","type":"image/png"},"children":[]},{"type":"text","value":"\n          "},{"type":"element","tagName":"img","properties":{"className":["gatsby-resp-image-image"],"src":"/docs/legacy/static/4f9088e8b8eaa96ec332132bb299c60c/156b4/stripe-logs-filter.png","alt":"Stripe logs filter","title":"Stripe logs filter","loading":"lazy","decoding":"async","style":"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;"},"children":[]},{"type":"text","value":"\n        "}]},{"type":"text","value":"\n  "}]},{"type":"text","value":"\n    "}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Now see if there are any "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"POST"}]},{"type":"text","value":" requests with status "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"400 ERR"}]},{"type":"text","value":" to the\n"},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"/v1/payouts"}]},{"type":"text","value":" endpoint. If found, open the request and see if the error\ncode is "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"balance_insufficient"}]},{"type":"text","value":"."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"span","properties":{"className":["gatsby-resp-image-wrapper"],"style":"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 635px; "},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"a","properties":{"className":["gatsby-resp-image-link"],"href":"/docs/legacy/static/06288388a387dfe2f187a4b7b5c81dcc/53fb6/stripe-insufficient-balance-response.png","style":"display: block","target":"_blank","rel":["noopener"]},"children":[{"type":"text","value":"\n    "},{"type":"element","tagName":"span","properties":{"className":["gatsby-resp-image-background-image"],"style":"padding-bottom: 38.36477987421384%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAICAYAAAD5nd/tAAAACXBIWXMAAAsTAAALEwEAmpwYAAABAElEQVQoz41RiWrFMAzr///iYFC20Xe0TZv7sKPhhJa3vbHNIKTYqVDcYRzfMF2umKYriBhStdav4CrdhnhjFNf1071aMaSUkXNGLuVsMjNYuOn+MeUKOxLizGL1o1kzlEREBOLegOBbxanCvjI4Ps8eqxmKmQhjCcuaoL2F8hZ78NiEo8PyEsCpJ5XER/rzRfVYCTAQczukzNh0gfUZi9OY7Y7Zdl7SjtUbKGfPmbDyBqszTdsYkIkwlELNMETG5Z6gjMdFr/jYZryrO25aYbEaNgXo6LEH17RPsfEWHEwKMNE3PcgPkJRiLMm59vMBmdf6++4ea5D3NzP+e+H/wSfpbXRvPrnEmgAAAABJRU5ErkJggg=='); background-size: cover; display: block;"},"children":[]},{"type":"text","value":"\n  "},{"type":"element","tagName":"picture","properties":{},"children":[{"type":"text","value":"\n          "},{"type":"element","tagName":"source","properties":{"srcSet":["/docs/legacy/static/06288388a387dfe2f187a4b7b5c81dcc/82e29/stripe-insufficient-balance-response.webp 159w","/docs/legacy/static/06288388a387dfe2f187a4b7b5c81dcc/ef33f/stripe-insufficient-balance-response.webp 318w","/docs/legacy/static/06288388a387dfe2f187a4b7b5c81dcc/f1837/stripe-insufficient-balance-response.webp 635w"],"sizes":"(max-width: 635px) 100vw, 635px","type":"image/webp"},"children":[]},{"type":"text","value":"\n          "},{"type":"element","tagName":"source","properties":{"srcSet":["/docs/legacy/static/06288388a387dfe2f187a4b7b5c81dcc/8b9b5/stripe-insufficient-balance-response.png 159w","/docs/legacy/static/06288388a387dfe2f187a4b7b5c81dcc/fa108/stripe-insufficient-balance-response.png 318w","/docs/legacy/static/06288388a387dfe2f187a4b7b5c81dcc/53fb6/stripe-insufficient-balance-response.png 635w"],"sizes":"(max-width: 635px) 100vw, 635px","type":"image/png"},"children":[]},{"type":"text","value":"\n          "},{"type":"element","tagName":"img","properties":{"className":["gatsby-resp-image-image"],"src":"/docs/legacy/static/06288388a387dfe2f187a4b7b5c81dcc/53fb6/stripe-insufficient-balance-response.png","alt":"Stripe insufficient balance response","title":"Stripe insufficient balance response","loading":"lazy","decoding":"async","style":"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;"},"children":[]},{"type":"text","value":"\n        "}]},{"type":"text","value":"\n  "}]},{"type":"text","value":"\n    "}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"If an error with the "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"balance_insufficient"}]},{"type":"text","value":" code is found it can be\nmatched to the transactions in the CSV export by checking the\n"},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"sharetribe-transaction-id"}]},{"type":"text","value":" field from the "},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"Request POST body"}]},{"type":"text","value":" section\nof the request and comparing that to the "},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"Id"}]},{"type":"text","value":" field in the CSV file. By\ncomparing the balance of the associated connected account to the\n"},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"PayoutTotalConverted"}]},{"type":"text","value":" of the transaction in the CSV it's possible to\nfind out what is the missing amount of money. The missing amount can\nimply why the balance is not enough to pay out the charge. For manual\nrefunds it's also good to take a look into the "},{"type":"element","tagName":"em","properties":{},"children":[{"type":"text","value":"Payments"}]},{"type":"text","value":" of the\nassociated connected account in Stripe Dashboard and see if there are\nany refunds found there."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"In the case of insufficient balance the solution is usually to manually\ncreate the payout from Stripe Dashboard and in that payout take into\naccount the reason what led to the lack of funds in the connected\naccount. In the example case of manual refunds presented above the\nsolution would be to reduce the 20€ of commissions that the provider\nowns from the previous transaction and manually pay out the remaining\n70€ from the connected account."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"the-payout-is-too-small-1","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#the-payout-is-too-small-1","ariaLabel":"the payout is too small 1 permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"The payout is too small"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"The case of a payout failing due to too small amount of money, it's good\nto start with the transactions CSV export, just like in the case of\ninsufficient funds. Also look to the events log in Stripe Dashboard.\nHowever, in this case the error code in the response of the failed\nrequest is "},{"type":"element","tagName":"code","properties":{},"children":[{"type":"text","value":"amount_too_small"}]},{"type":"text","value":"."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"span","properties":{"className":["gatsby-resp-image-wrapper"],"style":"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 635px; "},"children":[{"type":"text","value":"\n      "},{"type":"element","tagName":"a","properties":{"className":["gatsby-resp-image-link"],"href":"/docs/legacy/static/775ccd2e9101b00fcf4d4201c996dde7/53fb6/stripe-amount-too-small-response.png","style":"display: block","target":"_blank","rel":["noopener"]},"children":[{"type":"text","value":"\n    "},{"type":"element","tagName":"span","properties":{"className":["gatsby-resp-image-background-image"],"style":"padding-bottom: 42.138364779874216%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAICAYAAAD5nd/tAAAACXBIWXMAAAsTAAALEwEAmpwYAAAA6klEQVQoz5VSi2rDMAzs///c/mGU0WWp46ccOZJvRGnabjSwyZzlA3M6JJ1KIVzdhBAivA/Q3tFvUO2w0zvKWdGyblwff37jhFusZM/23iikdpR3RYt6F7diR4LrJSKGQisWcGNIVyysGN8Ywoq/hjlcRIxQFTjf4DPhHEZ8Ro+P4HCliFgJoRZkrpYnyoY4k+XC80NQTLBjZsUwMmJuuESHS5wwZI+vHDAkD0cJEyXjaSYsKmamybKZ2nsoouhdMbMgFUFlvjtwJZkLavOP3r2KtccmqKrg1iz/Jw6n3J+qHq3DKzxvxz6Ub8uRdcCKLfuHAAAAAElFTkSuQmCC'); background-size: cover; display: block;"},"children":[]},{"type":"text","value":"\n  "},{"type":"element","tagName":"picture","properties":{},"children":[{"type":"text","value":"\n          "},{"type":"element","tagName":"source","properties":{"srcSet":["/docs/legacy/static/775ccd2e9101b00fcf4d4201c996dde7/82e29/stripe-amount-too-small-response.webp 159w","/docs/legacy/static/775ccd2e9101b00fcf4d4201c996dde7/ef33f/stripe-amount-too-small-response.webp 318w","/docs/legacy/static/775ccd2e9101b00fcf4d4201c996dde7/f1837/stripe-amount-too-small-response.webp 635w"],"sizes":"(max-width: 635px) 100vw, 635px","type":"image/webp"},"children":[]},{"type":"text","value":"\n          "},{"type":"element","tagName":"source","properties":{"srcSet":["/docs/legacy/static/775ccd2e9101b00fcf4d4201c996dde7/8b9b5/stripe-amount-too-small-response.png 159w","/docs/legacy/static/775ccd2e9101b00fcf4d4201c996dde7/fa108/stripe-amount-too-small-response.png 318w","/docs/legacy/static/775ccd2e9101b00fcf4d4201c996dde7/53fb6/stripe-amount-too-small-response.png 635w"],"sizes":"(max-width: 635px) 100vw, 635px","type":"image/png"},"children":[]},{"type":"text","value":"\n          "},{"type":"element","tagName":"img","properties":{"className":["gatsby-resp-image-image"],"src":"/docs/legacy/static/775ccd2e9101b00fcf4d4201c996dde7/53fb6/stripe-amount-too-small-response.png","alt":"Stripe amount too small response","title":"Stripe amount too small response","loading":"lazy","decoding":"async","style":"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;"},"children":[]},{"type":"text","value":"\n        "}]},{"type":"text","value":"\n  "}]},{"type":"text","value":"\n    "}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"To solve the problem, wait for more transactions for the connected\naccount and manually bundle them together and pay out at once."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"stripe-or-bank-refuses-the-payments","style":"position:relative;"},"children":[{"type":"element","tagName":"a","properties":{"href":"#stripe-or-bank-refuses-the-payments","ariaLabel":"stripe or bank refuses the payments permalink","className":["anchor","before"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]},{"type":"text","value":"Stripe or bank refuses the payments"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"The CSV export does not help in the case where the payout fails due to\nmissing information. As mentioned the payout state does not propagate\nback to Flex in cases like this. If the payout state seems to be fine\nbut a provider is reporting missing payouts, it's good to take a look at\nthe connected account of the user. The associated Stripe account can be\nfound in Console from the user view. Usually the problem is missing\ninformation in the connected account. See if there are any warnings in\nthe account and act based on those to fill in missing information."}]}],"data":{"quirksMode":false}},"headings":[{"value":"Introduction","depth":2},{"value":"Payments in Flex","depth":2},{"value":"Why payouts fail","depth":2},{"value":"Insufficient funds","depth":3},{"value":"Manual refund","depth":4},{"value":"Disputes","depth":4},{"value":"The payout is too small","depth":3},{"value":"Stripe or bank refuses the payment","depth":3},{"value":"How to investigate and fix failed payouts","depth":2},{"value":"Insufficient funds","depth":3},{"value":"The payout is too small","depth":3},{"value":"Stripe or bank refuses the payments","depth":3}]}},"pageContext":{"slug":"solving-payout-problems","category":"concepts-payments"}},
    "staticQueryHashes": ["3794076007","439097193","717698143"]}