Sha256: bfcffe85dcfb8e11ccc898e1ce011fb39ddfef6af2cd94e41ac573713b18a4d8
Contents?: true
Size: 1.16 KB
Versions: 5
Compression:
Stored size: 1.16 KB
Contents
# frozen_string_literal: true module LedgerSync module Adaptors module Stripe module Customer module Operations class Update < Stripe::Operation::Update class Contract < LedgerSync::Adaptors::Contract params do required(:external_id).maybe(:string) required(:ledger_id).value(:nil) required(:email).maybe(:string) required(:name).filled(:string) required(:phone_number).maybe(:string) optional(:subsidiary).maybe(:hash, Types::Reference) end end private def operate stripe_customer = ::Stripe::Customer.update( resource.ledger_id, email: resource.email, metadata: { external_id: resource.external_id }, name: resource.name, phone: resource.phone_number ) success( resource: resource, response: stripe_customer ) end end end end end end end
Version data entries
5 entries across 5 versions & 1 rubygems