The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Net::API::Stripe::Connect::Account - A Stripe Account Object

SYNOPSIS

VERSION

    0.1

DESCRIPTION

This is an object representing a Stripe account. You can retrieve it to see properties on the account like its current e-mail address or if the account is enabled yet to make live charges.

Some properties, marked below, are available only to platforms that want to create and manage Express or Custom accounts (https://stripe.com/docs/connect/accounts).

CONSTRUCTOR

new( %ARG )

Creates a new Net::API::Stripe objects. It may also take an hash like arguments, that also are method of the same name.

verbose

Toggles verbose mode on/off

debug

Toggles debug mode on/off

METHODS

id string

Unique identifier for the object.

object string, value is "account"

String representing the object’s type. Objects of the same type share the same value.

This is outdated. It now points to business_profile->icon

business_logo_large

This is outdated. It now points to business_profile->logo

business_name

This is outdated. It now points to business_name->name

business_primary_color

This is outdated. It now points to settings->primary_color

business_profile hash

Optional information related to the business.

This is a Net::API::Stripe::Business::Profile object.

business_type string

The business type. Can be individual or company.

business_url

This is outdated. It now points to business_profile->url

capabilities hash

A hash containing the set of capabilities that was requested for this account and their associated states. Keys are names of capabilities. You can see the full list here (https://stripe.com/docs/api/capabilities/list). Values may be active, inactive, or pending.

This is a Net::API::Stripe::Connect::Account::Capabilities object, although there is no real Net::API::Stripe::Connect::Account::Capability module. This is created on the fly by the _set_get_hash_as_object method of Module::Generic

card_issuing string

The status of the card issuing capability of the account, or whether you can use Issuing to distribute funds on cards

card_payments string

The status of the card payments capability of the account, or whether the account can directly process credit and debit card charges.

legacy_payments string

The status of the legacy payments capability of the account.

transfers string

The status of the transfers capability of the account, or whether your platform can transfer funds to the account.

charges_enabled boolean

Whether the account can create live charges.

company custom only hash

Information about the company or business. This field is null unless business_type is set to company.

This is a Net::API::Stripe::Connect::Account::Company object.

country string

The account’s country.

created custom and express timestamp

Time at which the object was created. Measured in seconds since the Unix epoch. This is a DateTime object.

debit_negative_balances

This is outdated. It now points to settings->payouts->debit_negative_balances

decline_charge_on

This is outdated. It now points to settings->card_payments->decline_on

default_currency string

Three-letter ISO currency code representing the default currency for the account. This must be a currency that Stripe supports in the account’s country.

details_submitted boolean

Whether account details have been submitted. Standard accounts cannot receive payouts before this is true.

display_name

This is outdated. It now points to settings->dashboard->display_name

email string

The primary user’s email address.

external_accounts custom and express list

External accounts (bank accounts and debit cards) currently attached to this account

This is a Net::API::Stripe::Connect::Account::ExternalAccounts object.

individual custom only hash

Information about the person represented by the account. This field is null unless business_type is set to individual.

This is a Net::API::Stripe::Connect::Person object.

This is outdated. Stripe now uses a Net::API::Stripe::Connect::Account::Company object and a Net::API::Stripe::Connect::Person object.

metadata hash

Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.

payouts_enabled boolean

Whether Stripe can send payouts to this account.

payout_schedule

This is outdated. It now points to settings->payouts->schedule

payout_statement_descriptor

This is outdated. It now points to settings->payouts->statement_descriptor

product_description

This is outdated. It now points to business_profile->product_description

requirements custom and express hash

Information about the requirements for the account, including what information needs to be collected, and by when.

This is a Net::API::Stripe::Connect::Account::Requirements object.

settings hash

Options for customizing how the account functions within Stripe.

This is a Net::API::Stripe::Connect::Account::Settings object.

statement_descriptor

This is outdated. It now points to settings->payments->statement_descriptor

support_address

This is outdated. It now points to business_profile->support_address

support_email

This is outdated. It now points to business_profile->support_email

support_phone

This is outdated. It now points to business_profile->support_phone

support_url

This is outdated. It now points to business_profile->support_url

timezone

This is outdated. It is a DateTime object.

tos_acceptance custom only hash

Details on the acceptance of the Stripe Services Agreement

This is a Net::API::Stripe::Connect::Account::TosAcceptance object.

type string

The Stripe account type. Can be standard, express, or custom.

verification

This is outdated. It is a Net::API::Stripe::Connect::Account::Verification object.

API SAMPLE

Response Standard

        {
          "id": "acct_19eGgRCeyNCl6xYZ",
          "object": "account",
          "business_profile": {
                "mcc": null,
                "name": "My Shop, Inc",
                "product_description": "Great products shipping all over the world",
                "support_address": {
                  "city": "Tokyo",
                  "country": "JP",
                  "line1": "1-2-3 Kudan-minami, Chiyoda-ku",
                  "line2": "",
                  "postal_code": "100-0012",
                  "state": ""
                },
                "support_email": "billing@example.com",
                "support_phone": "+81312345678",
                "support_url": "",
                "url": "https://www.example.com"
          },
          "business_type": "company",
          "capabilities": {
                "card_payments": "active"
          },
          "charges_enabled": true,
          "country": "JP",
          "default_currency": "jpy",
          "details_submitted": true,
          "email": "tech@example.com",
          "metadata": {},
          "payouts_enabled": true,
          "settings": {
                "branding": {
                  "icon": "file_1DLf5rCeyNCl6fY2kS4e5hMT",
                  "logo": null,
                  "primary_color": "#0e77ca"
                },
                "card_payments": {
                  "decline_on": {
                        "avs_failure": false,
                        "cvc_failure": false
                  },
                  "statement_descriptor_prefix": null
                },
                "dashboard": {
                  "display_name": "myshop-inc",
                  "timezone": "Asia/Tokyo"
                },
                "payments": {
                  "statement_descriptor": "MYSHOP, INC",
                  "statement_descriptor_kana": "マイショップインク",
                  "statement_descriptor_kanji": "マイショップインク"
                },
                "payouts": {
                  "debit_negative_balances": true,
                  "schedule": {
                        "delay_days": 4,
                        "interval": "weekly",
                        "weekly_anchor": "thursday"
                  },
                  "statement_descriptor": null
                }
          },
          "type": "standard"
        }

Response Express

        {
          "id": "acct_19eGgRCeyNCl6xYZ",
          "object": "account",
          "business_profile": {
                "mcc": null,
                "name": "MyShop, Inc",
                "product_description": "Great products shipping all over the world",
                "support_address": {
                  "city": "Tokyo",
                  "country": "JP",
                  "line1": "1-2-3 Kudan-minami, Chiyoda-ku",
                  "line2": "",
                  "postal_code": "100-0012",
                  "state": ""
                },
                "support_email": "billing@example.com",
                "support_phone": "+81312345678",
                "support_url": "",
                "url": "https://www.example.com"
          },
          "business_type": "company",
          "capabilities": {
                "card_payments": "active"
          },
          "charges_enabled": true,
          "country": "JP",
          "created": 1484973659,
          "default_currency": "jpy",
          "details_submitted": true,
          "email": "tech@example.com",
          "external_accounts": {
                "object": "list",
                "data": [
                  {
                        "id": "ba_19eGy1CeyNCl6fY2R3ACmqG4",
                        "object": "bank_account",
                        "account": "acct_19eGgRCeyNCl6xYZ",
                        "account_holder_name": "カ)マイショップインク",
                        "account_holder_type": null,
                        "bank_name": "三井住友銀行",
                        "country": "JP",
                        "currency": "jpy",
                        "default_for_currency": true,
                        "fingerprint": "VWINqgzE0zu5x1ab",
                        "last4": "1234",
                        "metadata": {},
                        "routing_number": "0009218",
                        "status": "new"
                  }
                ],
                "has_more": false,
                "url": "/v1/accounts/acct_19eGgRCeyNCl6xYZ/external_accounts"
          },
          "metadata": {},
          "payouts_enabled": true,
          "requirements": {
                "current_deadline": null,
                "currently_due": [],
                "disabled_reason": null,
                "eventually_due": [],
                "past_due": [],
                "pending_verification": []
          },
          "settings": {
                "branding": {
                  "icon": "file_1DLf5rCeyNCl6fY2kS4e1xyz",
                  "logo": null,
                  "primary_color": "#0e77ca"
                },
                "card_payments": {
                  "decline_on": {
                        "avs_failure": false,
                        "cvc_failure": false
                  },
                  "statement_descriptor_prefix": null
                },
                "dashboard": {
                  "display_name": "myshop-inc",
                  "timezone": "Asia/Tokyo"
                },
                "payments": {
                  "statement_descriptor": "MYSHOP, INC",
                  "statement_descriptor_kana": "マイショップインク",
                  "statement_descriptor_kanji": "マイショップインク"
                },
                "payouts": {
                  "debit_negative_balances": true,
                  "schedule": {
                        "delay_days": 4,
                        "interval": "weekly",
                        "weekly_anchor": "thursday"
                  },
                  "statement_descriptor": null
                }
          },
          "type": "express"
        }

Response Custom

        {
          "id": "acct_19eGgRCeyNCl6xYZ",
          "object": "account",
          "business_profile": {
                "mcc": null,
                "name": "MyShop, Inc",
                "product_description": "Great products shipping all over the world",
                "support_address": {
                  "city": "Tokyo",
                  "country": "JP",
                  "line1": "1-2-3 Kudan-minami, Chiyoda-ku",
                  "line2": "",
                  "postal_code": "100-0012",
                  "state": ""
                },
                "support_email": "billing@example.com",
                "support_phone": "+81312345678",
                "support_url": "",
                "url": "https://www.example.com"
          },
          "business_type": "company",
          "capabilities": {
                "card_payments": "active"
          },
          "charges_enabled": true,
          "company": {
                "address_kana": {
                  "city": "チヨダク",
                  "country": "JP",
                  "line1": "2-3",
                  "line2": "ナシ",
                  "postal_code": null,
                  "state": null,
                  "town": "クダンミナミ1"
                },
                "address_kanji": {
                  "city": "千代田区",
                  "country": "JP",
                  "line1": "",
                  "line2": "",
                  "postal_code": null,
                  "state": null,
                  "town": "九段南1-2-3"
                },
                "directors_provided": false,
                "name": "MyShop, Inc",
                "name_kana": "カブシキカイシャマイショップインク",
                "name_kanji": "株式会社マイショップインク",
                "owners_provided": true,
                "phone": null,
                "tax_id_provided": true,
                "verification": {
                  "document": {
                        "back": null,
                        "details": null,
                        "details_code": null,
                        "front": null
                  }
                }
          },
          "country": "JP",
          "created": 1484973659,
          "default_currency": "jpy",
          "details_submitted": true,
          "email": "tech@example.com",
          "external_accounts": {
                "object": "list",
                "data": [
                  {
                        "id": "ba_19eGy1CeyNCl6fY2R3ACmqG4",
                        "object": "bank_account",
                        "account": "acct_19eGgRCeyNCl6xYZ",
                        "account_holder_name": "カ)マイショップインク",
                        "account_holder_type": null,
                        "bank_name": "三井住友銀行",
                        "country": "JP",
                        "currency": "jpy",
                        "default_for_currency": true,
                        "fingerprint": "VkINqgzE0zu5x1xw",
                        "last4": "2235",
                        "metadata": {},
                        "routing_number": "0009218",
                        "status": "new"
                  }
                ],
                "has_more": false,
                "url": "/v1/accounts/acct_19eGgRCeyNCl6xYZ/external_accounts"
          },
          "metadata": {},
          "payouts_enabled": true,
          "requirements": {
                "current_deadline": null,
                "currently_due": [],
                "disabled_reason": null,
                "eventually_due": [],
                "past_due": [],
                "pending_verification": []
          },
          "settings": {
                "branding": {
                  "icon": "file_1DLf5rCeyabl6fY2kS4e5xyz",
                  "logo": null,
                  "primary_color": "#0e77ca"
                },
                "card_payments": {
                  "decline_on": {
                        "avs_failure": false,
                        "cvc_failure": false
                  },
                  "statement_descriptor_prefix": null
                },
                "dashboard": {
                  "display_name": "myshop-inc",
                  "timezone": "Asia/Tokyo"
                },
                "payments": {
                  "statement_descriptor": "MYSHOP, IN",
                  "statement_descriptor_kana": "マイショップインク",
                  "statement_descriptor_kanji": "マイショップインク"
                },
                "payouts": {
                  "debit_negative_balances": true,
                  "schedule": {
                        "delay_days": 4,
                        "interval": "weekly",
                        "weekly_anchor": "thursday"
                  },
                  "statement_descriptor": null
                }
          },
          "tos_acceptance": {
                "date": 1484979187,
                "ip": "114.17.230.189",
                "user_agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36"
          },
          "type": "custom"
        }

HISTORY

v0.1

Initial version

STRIPE HISTORY

2019-02-19

Statement descriptor behaviors for card payments created via /v1/charges have changed. See our statement descriptor guide for details.

  • Instead of using the platform's statement descriptor, charges created with on_behalf_of or destination will now use the descriptor of the connected account.

    ~item * The full statement descriptor for a card payment may no longer be provided at charge creation. Dynamic descriptors provided at charge time will now be prefixed by the descriptor prefix set in the dashboard or via the new settings[card_payments][statement_descriptor_prefix] parameter in the Accounts API.

  • If an account has no statement_descriptor set, the account's business or legal name will be used as statement descriptor.

  • Statement descriptors may no longer contain *, ', and ".

2019-02-19

Many properties on the Account API object have been reworked. To see a mapping of the old argument names to the new ones, see Accounts API Argument Changes.

  • The legal_entity property on the Account API resource has been replaced with individual, company, and business_type.

  • The verification hash has been replaced with a requirements hash.

    • The verification[fields_needed] array has been replaced with three arrays to better represent when info is required: requirements[eventually_due], requirements[currently_due], and requirements[past_due].

    • verification[due_by] has been renamed to requirements[current_deadline].

    • The disabled_reason enum value of fields_needed has been renamed to requirements.past_due.

  • Properties on the Account API object that configure behavior within Stripe have been moved into the new settings hash.

    • The payout_schedule, payout_statement_descriptor and debit_negative_balances fields have been moved to settings[payouts] and renamed to schedule, statement_descriptor and debit_negative_balances.

    • The statement_descriptor field has been moved to settings[payments][statement_descriptor].

    • The decline_charge_on fields have been moved to settings[card_payments] and renamed to decline_on.

    • The business_logo, business_logo_large and business_primary_color fields have been moved to settings[branding] and renamed to icon, logo and primary_color. The icon field additionally requires the uploaded image file to be square.

    • The display_name and timezone fields have been moved to settings[dashboard].

  • business_name, business_url, product_description, support_address, support_email, support_phone and support_url have been moved to the business_profile subhash.

  • The legal_entity[verification][document] property (now located at individual[verification] and at verification in the Person API object) has been changed to a hash.

    • The front and back fields support uploading both sides of documents.

    • The details_code field has new error types: document_corrupt, document_failed_copy, document_failed_greyscale, document_failed_other, document_failed_test_mode, document_fraudulent, document_id_country_not_supported, document_id_type_not_supported, document_invalid, document_manipulated, document_missing_back, document_missing_front, document_not_readable, document_not_uploaded, document_photo_mismatch, and document_too_large.

    • The keys property on Account creation has been removed. Platforms should now authenticate as their connected accounts with their own key via the Stripe-Account header.

    • Starting with the 2019-02-19 API, the requested_capabilities property is now required at creation time for accounts in the U.S. See the Capabilities Overview for more information.

2017-05-25

Replaces the managed Boolean property on Account objects with type, whose possible values are: standard, express, and custom. A managed value is required when creating accounts.

AUTHOR

Jacques Deguest <jack@deguest.jp>

SEE ALSO

Stripe API documentation:

https://stripe.com/docs/api

COPYRIGHT & LICENSE

Copyright (c) 2018-2019 DEGUEST Pte. Ltd.

You can use, copy, modify and redistribute this package and associated files under the same terms as Perl itself.

2 POD Errors

The following errors were encountered while parsing the POD:

Around line 181:

You forgot a '=back' before '=head1'

Around line 711:

You forgot a '=back' before '=head2'