docs for payment intents

This commit is contained in:
Pablo Martin 2024-02-19 16:50:24 +01:00
parent 00e227bb52
commit 572cbba4ab
2 changed files with 409 additions and 19 deletions

View file

@ -216,7 +216,7 @@ sources:
description: "{{ doc('field_docs_na_desc') }}"
- name: application_fee_amount
data_type: bigint
description: The amount of the application fee (if any) requested for the charge. See the Connect documentation for details
description: "The amount of the application fee (if any) requested for the charge. See the Connect documentation for details."
- name: payment_method_details
data_type: jsonb
description: "Details about the payment method at the time of the transaction."

View file

@ -1,13 +1,12 @@
version: 2
models:
- name: stg_stripe__balance_transactions
description: |
description: |
Individual transactions happening in our different Stripe currency accounts.
You can read more about this object here: https://docs.stripe.com/api/balance_transactions/object.
columns:
- name: id
data_type: character varying
@ -35,7 +34,7 @@ models:
description: "The transactions net funds status in the Stripe balance, which are either available or pending."
- name: created_at_utc
data_type: bigint
description: "The timestamp at which the transaction object was created."
description: "The timestamp at which the object was created."
- name: currency
data_type: character varying
description: "{{ doc('stripe_currency_desc') }}"
@ -61,19 +60,410 @@ models:
data_type: timestamp with time zone
description: "{{ doc('dwh_extracted_at_date_desc')}}"
- name: stg_stripe__charges
description: "Charges from all our Stripe accounts."
description: ""
columns:
- name: id
description: "The primary key for the charge."
tests:
- unique
- not_null
- name: stg_stripe__payment_intents
description: "Payment intents from all our Stripe accounts."
columns:
- name: id
description: "The primary key for the Payment intent."
tests:
- unique
- not_null
data_type: character varying
description: "{{ doc('generic_id_desc') }}"
- name: card
data_type: jsonb
description: "{{ doc('field_docs_na_desc') }}"
- name: is_paid
data_type: boolean
description: "true if the charge succeeded, or was successfully authorized for later capture."
- name: order
data_type: character varying
description: "{{ doc('field_docs_na_desc') }}"
- name: amount
data_type: bigint
description: "Amount intended to be collected by this payment. A positive integer representing how much to charge in the smallest currency unit (e.g., 100 cents to charge $1.00 or 100 to charge ¥100, a zero-decimal currency). The minimum amount is $0.50 US or equivalent in charge currency. The amount value supports up to eight digits (e.g., a value of 99999999 for a USD charge of $999,999.99)."
- name: object
data_type: character varying
description: "Silly column. The value is always `charge`."
- name: review
data_type: character varying
description: "ID of the review associated with this charge if one exists."
- name: source
data_type: jsonb
description: "{{ doc('field_docs_na_desc') }}"
- name: status
data_type: character varying
description: "The status of the payment is either succeeded, pending, or failed."
- name: created_at_utc
data_type: timestamp with time zone
description: "The timestamp at which the object was created."
- name: dispute
data_type: character varying
description: "{{ doc('field_docs_na_desc')}}"
- name: invoice
data_type: character varying
description: "ID of the invoice this charge is for if one exists."
- name: outcome
data_type: jsonb
description: "Details about whether the payment was accepted, and why. See understanding declines for details."
- name: refunds
data_type: jsonb
description: "A list of refunds that have been applied to the charge."
- name: updated_at_utc
data_type: timestamp with time zone
description: "The timestamp at which the object was last updated."
- name: is_captured
data_type: boolean
description: "If the charge was created without capturing, this Boolean represents whether it is still uncaptured or has since been captured."
- name: currency
data_type: character varying
description: "{{ doc('stripe_currency_desc') }}"
- name: customer
data_type: character varying
description: "ID of the customer this charge is for if one exists."
- name: is_disputed
data_type: boolean
description: "Whether the charge has been disputed."
- name: is_livemode
data_type: boolean
description: "{{ doc('stripe_livemode_desc') }}"
- name: metadata
data_type: jsonb
description: "{{ doc('stripe_metadata_desc') }}"
- name: is_refunded
data_type: boolean
description: "Whether the charge has been fully refunded. If the charge is only partially refunded, this attribute will still be false."
- name: shipping
data_type: jsonb
description: "Shipping information for the charge."
- name: application
data_type: character varying
description: "{{ doc('field_docs_na_desc') }}"
- name: description
data_type: character varying
description: "An arbitrary string attached to the object. Often useful for displaying to users."
- name: destination
data_type: character varying
description: "{{ doc('field_docs_na_desc') }}"
- name: receipt_url
data_type: character varying
description: "This is the URL to view the receipt for this charge. The receipt is kept up-to-date to the latest state of the charge, including any refunds. If the charge is for an Invoice, the receipt will be stylized as an Invoice receipt."
- name: failure_code
data_type: character varying
description: "Error code explaining reason for charge failure if available (see the errors section for a list of codes)."
- name: on_behalf_of
data_type: character varying
description: "The account (if any) the charge was made on behalf of without triggering an automatic transfer. See the Connect documentation for details."
- name: fraud_details
data_type: jsonb
description: "Information on fraud assessments for the charge."
- name: receipt_email
data_type: character varying
description: "This is the email address that the receipt for this charge was sent to."
- name: transfer_data
data_type: jsonb
description: "An optional dictionary including the account to automatically transfer to as part of a destination charge. See the Connect documentation for details."
- name: amount_updates
data_type: jsonb
description: "{{ doc('field_docs_na_desc') }}"
- name: payment_intent
data_type: character varying
description: "ID of the PaymentIntent associated with this charge, if one exists."
- name: payment_method
data_type: character varying
description: "ID of the payment method used in this charge."
- name: receipt_number
data_type: character varying
description: "This is the transaction number that appears on email receipts sent for this charge. This attribute will be null until a receipt has been sent."
- name: transfer_group
data_type: character varying
description: "A string that identifies this transaction as part of a group. See the Connect documentation for details."
- name: amount_captured
data_type: bigint
description: "Amount in cents captured (can be less than the amount attribute on the charge if a partial capture was made)."
- name: amount_refunded
data_type: bigint
description: "Amount in cents refunded (can be less than the amount attribute on the charge if a partial refund was issued)."
- name: application_fee
data_type: character varying
description: "The application fee (if any) for the charge. See the Connect documentation for details."
- name: billing_details
data_type: jsonb
description: "Billing information associated with the payment method at the time of the transaction."
- name: failure_message
data_type: character varying
description: "Message to user further explaining reason for charge failure if available."
- name: source_transfer
data_type: character varying
description: "The transfer ID which created this charge. Only present if the charge came from another Stripe account. See the Connect documentation for details."
- name: balance_transaction
data_type: character varying
description: "ID of the balance transaction that describes the impact of this charge on your account balance (not including refunds or disputes)."
- name: statement_descriptor
data_type: character varying
description: "For card charges, use statement_descriptor_suffix instead. Otherwise, you can use this value as the complete description of a charge on your customers statements. Must contain at least one letter, maximum 22 characters."
- name: statement_description
data_type: character varying
description: "{{ doc('field_docs_na_desc') }}"
- name: application_fee_amount
data_type: bigint
description: "The amount of the application fee (if any) requested for the charge. See the Connect documentation for details."
- name: payment_method_details
data_type: jsonb
description: "Details about the payment method at the time of the transaction."
- name: failure_balance_transaction
data_type: character varying
description: "ID of the balance transaction that describes the reversal of the balance on your account due to payment failure."
- name: statement_descriptor_suffix
data_type: character varying
description: "Provides information about the charge that customers see on their statements. Concatenated with the prefix (shortened descriptor) or statement descriptor thats set on the account to form the complete statement descriptor. Maximum 22 characters for the concatenated descriptor."
- name: calculated_statement_descriptor
data_type: character varying
description: "The full statement descriptor that is passed to card networks, and that is displayed on your customers credit card and bank statements. Allows you to see what the statement descriptor looks like after the static and dynamic portions are combined."
- name: dwh_extracted_at_date
data_type: timestamp with time zone
description: "{{ doc('dwh_extracted_at_date_desc') }}"
- name: stg_stripe__payment_intents
description: |
A PaymentIntent guides you through the process of collecting a payment from your customer. We recommend that you create exactly one PaymentIntent for each order or customer session in your system. You can reference the PaymentIntent later to see the history of payment attempts for a particular session.
A PaymentIntent transitions through multiple statuses throughout its lifetime as it interfaces with Stripe.js to perform authentication flows and ultimately creates at most one successful charge.
You can read more about this object here: https://docs.stripe.com/api/payment_intents.
columns:
- name: id
data_type: character varying
description: "{{ doc('generic_id_desc') }}"
- name: amount
data_type: bigint
description: "Amount intended to be collected by this PaymentIntent. A positive integer representing how much to charge in the smallest currency unit (e.g., 100 cents to charge $1.00 or 100 to charge ¥100, a zero-decimal currency). The minimum amount is $0.50 US or equivalent in charge currency. The amount value supports up to eight digits (e.g., a value of 99999999 for a USD charge of $999,999.99)."
- name: object
data_type: character varying
description: "Silly column. The value is always `payment_intent`."
- name: review
data_type: character varying
description: "ID of the review associated with this PaymentIntent, if any."
- name: source
data_type: character varying
description: "{{ doc('field_docs_na_desc') }}"
- name: status
data_type: character varying
description: "Status of this PaymentIntent, one of requires_payment_method, requires_confirmation, requires_action, processing, requires_capture, canceled, or succeeded. Read more about each PaymentIntent status."
- name: charges
data_type: jsonb
description: "{{ doc('field_docs_na_desc') }}"
- name: created_at_utc
data_type: timestamp with time zone
description: "The timestamp at which the object was created."
- name: invoice
data_type: character varying
description: "ID of the invoice that created this PaymentIntent, if it exists."
- name: updated_at_utc
data_type: timestamp with time zone
description: "The timestamp at which the object was last updated."
- name: currency
data_type: character varying
description: "{{ doc('stripe_currency_desc') }}"
- name: customer
data_type: character varying
description: |
"ID of the Customer this PaymentIntent belongs to, if one exists.
Payment methods attached to other Customers cannot be used with this PaymentIntent.
If present in combination with setup_future_usage, this PaymentIntents payment method will be attached to the Customer after the PaymentIntent has been confirmed and any required actions from the user are complete."
- name: is_livemode
data_type: boolean
description: "{{ doc('stripe_livemode_desc') }}"
- name: metadata
data_type: jsonb
description: "{{ doc('stripe_metadata_desc') }}"
- name: shipping
data_type: jsonb
description: "Shipping information for the charge."
- name: processing
data_type: jsonb
description: "If present, this property tells you about the processing state of the payment."
- name: application
data_type: character varying
description: "ID of the Connect application that created the PaymentIntent."
- name: canceled_at_utc
data_type: timestamp with time zone
description: "Populated when status is canceled, this is the time at which the PaymentIntent was canceled."
- name: description
data_type: character varying
description: "An arbitrary string attached to the object. Often useful for displaying to users."
- name: next_action
data_type: jsonb
description: "If present, this property tells you what actions you need to take in order for your customer to fulfill a payment using the provided source."
- name: on_behalf_of
data_type: character varying
description: "The account (if any) for which the funds of the PaymentIntent are intended. See the PaymentIntents use case for connected accounts for details."
- name: client_secret
data_type: character varying
description: |
"The client secret of this PaymentIntent. Used for client-side retrieval using a publishable key.
The client secret can be used to complete a payment from your frontend. It should not be stored, logged, or exposed to anyone other than the customer. Make sure that you have TLS enabled on any page that includes the client secret.
Refer to our docs to accept a payment and learn about how client_secret should be handled."
- name: latest_charge
data_type: character varying
description: "The latest charge created by this PaymentIntent."
- name: receipt_email
data_type: character varying
description: "Email address that the receipt for the resulting payment will be sent to. If receipt_email is specified for a payment in live mode, a receipt will be sent regardless of your email settings."
- name: transfer_data
data_type: jsonb
description: "The data that automatically creates a Transfer after the payment finalizes. Learn more about the use case for connected accounts."
- name: amount_details
data_type: jsonb
description: "Details about items that the amount includes."
- name: capture_method
data_type: character varying
description: "Controls when the funds will be captured from the customers account. One of: automatic, automatic_async, manual."
- name: payment_method
data_type: character varying
description: "ID of the payment method used in this PaymentIntent."
- name: transfer_group
data_type: character varying
description: "A string that identifies the resulting payment as part of a group. Learn more about the use case for connected accounts."
- name: amount_received
data_type: bigint
description: "Amount that this PaymentIntent collects."
- name: amount_capturable
data_type: bigint
description: "Amount that can be captured from this PaymentIntent."
- name: last_payment_error
data_type: jsonb
description: "The payment error encountered in the previous PaymentIntent confirmation. It will be cleared if the PaymentIntent is later updated for any reason."
- name: setup_future_usage
data_type: character varying
description: |
"Indicates that you intend to make future payments with this PaymentIntents payment method.
Providing this parameter will attach the payment method to the PaymentIntents Customer, if present, after the PaymentIntent is confirmed and any required actions from the user are complete. If no Customer was provided, the payment method can still be attached to a Customer after the transaction completes.
When processing card payments, Stripe also uses setup_future_usage to dynamically optimize your payment flow and comply with regional legislation and network rules, such as SCA."
- name: cancellation_reason
data_type: character varying
description: "Reason for cancellation of this PaymentIntent, either user-provided (duplicate, fraudulent, requested_by_customer, or abandoned) or generated by Stripe internally (failed_invoice, void_invoice, or automatic)."
- name: confirmation_method
data_type: character varying
description: "Describes whether we can confirm this PaymentIntent automatically, or if it requires customer action to confirm the payment."
- name: payment_method_types
data_type: jsonb
description: "The list of payment method types (e.g. card) that this PaymentIntent is allowed to use."
- name: statement_descriptor
data_type: character varying
description: "For card charges, use statement_descriptor_suffix. Otherwise, you can use this value as the complete description of a charge on your customers statements. It must contain at least one letter and be 122 characters long."
- name: statement_description
data_type: character varying
description: "{{ doc('field_docs_na_desc') }}"
- name: application_fee_amount
data_type: bigint
description: "The amount of the application fee (if any) that will be requested to be applied to the payment and transferred to the application owners Stripe account. The amount of the application fee collected will be capped at the total payment amount. For more information, see the PaymentIntents use case for connected accounts."
- name: payment_method_options
data_type: jsonb
description: "Payment method-specific configuration for this PaymentIntent."
- name: automatic_payment_methods
data_type: jsonb
description: "When you enable this parameter, this PaymentIntent accepts payment methods that you enable in the Dashboard and that are compatible with this PaymentIntents other parameters."
- name: statement_descriptor_suffix
data_type: character varying
description: "Provides information about a card payment that customers see on their statements. Concatenated with the prefix (shortened descriptor) or statement descriptor thats set on the account to form the complete statement descriptor. The concatenated descriptor must contain 1-22 characters."
- name: payment_method_configuration_details
data_type: jsonb
description: "{{ doc('field_docs_na_desc') }}"
- name: dwh_extracted_at_date
data_type: timestamp with time zone
description: "{{ doc('dwh_extracted_at_date_desc') }}"