Use case of Transfer Object and the meaning

瀏覽次數:54 次
跳到第一則未讀訊息

Tomita Kazuya

未讀,
2017年2月18日 中午12:42:562017/2/18
收件者:Stripe API Discussion
Hi, now I am reading the stripe document and I am very confused with the meaning of Transfer Object.
In the document, you can see the explanation about Transfer Object itself.  And then I can understand normally Transfer object means a transfer from a certain account which is indicated by destination attribute to my account.   However, when I saw the explanation "create transfer", the explanation about each attributes is changed and it seems that the account which gets amount is not my account, but there appears to be no information about the account which obtains money finally.  Could you give me the exact explanation about Transfer Object?

Remi J.

未讀,
2017年2月18日 中午12:50:382017/2/18
收件者:api-d...@lists.stripe.com
Hey!

A Transfer object [1] represents movement of funds from your Stripe account to a destination. This destination can be your own bank account or a connected account.

The most common case is when you, or Stripe automatically, send funds from your Stripe account balance to your own bank account. This happens after you successfully charge a customer for example. You charge them $100 USD today and you get $96.8 USD in your pending balance while Stripe takes $3.2 as its fee (assuming US fees). Those funds are pending for 2 days and then get transferred out to your bank account automatically.

The other case is when you use Stripe Connect [2]. Here, you have the ability to transfer funds from your own account to your connected account(s) balance. There are multiple ways to create those transfers, either automatically with a `destination` charge [3] or after manually after creating a charge [4] for example. In this case, you can have $100 in your Stripe account's balance and send those $100 to a connected account's balance. Those funds can then later be sent to *their* own bank account, which would be done by a new transfer.

Ultimately, the Transfer object is similar. Some properties could be different depending on what type of transfer you created but most are similar. For example, the amount sent to the destination would be in the `amount` property, in cents, the currency associated with the transfer would be in the `currency` property and the transfer id (tr_XXXXX) would be in the `id` property.

I hope this clarifies how transfers work on our API but let me know if you have any follow-up questions!
Happy Saturday!
Remi


On Sat, Feb 18, 2017 at 10:27 AM, Tomita Kazuya <iamtomm...@gmail.com> wrote:
Hi, now I am reading the stripe document and I am very confused with the meaning of Transfer Object.
In the document, you can see the explanation about Transfer Object itself.  And then I can understand normally Transfer object means a transfer from a certain account which is indicated by destination attribute to my account.   However, when I saw the explanation "create transfer", the explanation about each attributes is changed and it seems that the account which gets amount is not my account, but there appears to be no information about the account which obtains money finally.  Could you give me the exact explanation about Transfer Object?

--
You received this message because you are subscribed to the Google Groups "Stripe API Discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to api-discuss+unsubscribe@lists.stripe.com.
To post to this group, send email to api-d...@lists.stripe.com.
Visit this group at https://groups.google.com/a/lists.stripe.com/group/api-discuss/.

Tomita Kazuya

未讀,
2017年2月19日 上午8:21:102017/2/19
收件者:Stripe API Discussion

Remi, 

Thank you very much.  Your explanation is excellent, but I am still not clear.  In almost example, whether it is in the official documentation or other, we can see the "Charge" object often. However, I haven't seen the "Transfer" object.  My question focus on the "Transfer" object and even your answer for my question, you show some "Charge" object such as destination charge and manually creating "Charge" object.   Why?  Don't we need to consider the "Transfer" object?   I assume the concept of "Transfer" object is useful to grasp the whole picture of how Stripe works, but in our implementation, it is enough to think about only  "Charge" object, not "Transfer" object.     Could you give me your perspective?
2017年2月19日日曜日 2時50分38秒 UTC+9 Remi J.: 
To unsubscribe from this group and stop receiving emails from it, send an email to api-discuss...@lists.stripe.com.

Remi J.

未讀,
2017年2月19日 上午8:29:232017/2/19
收件者:api-d...@lists.stripe.com
Hey!

The only reason I mention charge is that for a transfer to happen you need to have funds that can be transferred out of your account. This can only happen if you have previously charged a customer card and have a balance that needs to be paid out.

The Transfer object is described in our documentation on the right hand side with an example. You can see this here: https://stripe.com/docs/api#transfer_object

You can also just create a new transfer in our Test account by running this simple curl command:

   -u sk_test_BQokikJOvBiI2HlWgH4olfQ2: \
   -d amount=400 \
   -d currency=usd \
   -d destination=acct_19osnaGaQW8ySSqY

This will transfer out $4 USD of your available balance to the connected account with the id acct_19osnaGaQW8ySSqY. The transfer will be created and succeed as long as you have enough balance and the destination account exists and is connected to your platform.

In return, you get a Transfer object with the unique id, tr_19ouhC2eZvKYlo2CjLkEGHeW in my case, and all the details about what amount of funds you sent and where the funds went. You can retrieve the transfer I just created by using the following curl command:

   -u sk_test_BQokikJOvBiI2HlWgH4olfQ2:

I'd recommend to start playing with the API in your own account, either with curl or one of our official libraries [1]. This should make a lot more sense once you start creating various objects and seeing specific errors such as not having enough balance, not sending the funds in the right place, passing the wrong currency, etc.

Cheers,
Remi

To unsubscribe from this group and stop receiving emails from it, send an email to api-discuss+unsubscribe@lists.stripe.com.

Tomita Kazuya

未讀,
2017年3月1日 清晨7:55:092017/3/1
收件者:Stripe API Discussion
Thank you for your reply. 
Almost all is solved now, but your example of sending funds from my own Stripe account to my balance account is automatically done.  And in creating destination charge the transfer part is also automatically done.   So, do we need to use or save the Transfer object in our applications?   You perhaps mean that if we want to do transfers by ourselves, then we can adjust these parts by using Transfer objects?

Best

2017年2月19日日曜日 22時29分23秒 UTC+9 Remi J.:

Remi J.

未讀,
2017年3月1日 上午8:03:222017/3/1
收件者:api-d...@lists.stripe.com
You don't have to save anything on your end if you don't plan to use the information in the future. You can always find the Transfer object associated with a destination charge in the `transfer` property of the charge [1] or in the `source_transfer` property [2] of the destination payment in the connected account.


To unsubscribe from this group and stop receiving emails from it, send an email to api-discuss+unsubscribe@lists.stripe.com.

Tomita Kazuya

未讀,
2017年3月2日 清晨7:38:372017/3/2
收件者:Stripe API Discussion
So, is this right?
Maybe there is no information about this.

You perhaps mean that if we want to do transfers by ourselves, then we can adjust these parts by using Transfer objects?


2017年3月1日水曜日 22時03分22秒 UTC+9 Remi J.:

Remi J.

未讀,
2017年3月2日 上午8:03:202017/3/2
收件者:api-d...@lists.stripe.com
Transfers are created whether you create those manually or not. You should start playing with the API in Test mode to see exactly what is created. When you create a `destination` charge, it automatically creates a transfer from your account to the connected account so that the funds you just charged are transferred to them. This is automatic but it can be useful to look at the refund and the associated properties or the id.

It really depends on your integration, what parts of our product you use and what kind of reporting you will be trying to build. I wouldn't overthink this just yet and start focusing on building your integration and Transfers will start getting useful in the future once you start tracking more information.

If this is still confusing, I'd recommend that you write in to our support team and clarify what you are trying to build. They'll have access to your Stripe account and the objects you've already created in it so they can refer you to specific views in the dashboard that could clarify all of this further.

Cheers,
Remi

To unsubscribe from this group and stop receiving emails from it, send an email to api-discuss+unsubscribe@lists.stripe.com.
回覆所有人
回覆作者
轉寄
0 則新訊息