Requests.Payments.Payment (CheckoutSDK v0.1.0)

TODO: either implement all of the sources or none and return the api errors.

Link to this section Summary

Link to this section Types

@type customer() :: %{
  id: String.t(),
  email: String.t(),
  name: String.t(),
  tax_number: String.t(),
  phone: Customers.Phone.t()
}
@type item() :: %{
  name: String.t(),
  quantity: String.t(),
  unit_price: String.t(),
  reference: String.t(),
  commodity_code: String.t(),
  unit_of_measure: String.t(),
  total_amount: String.t(),
  tax_amount: String.t(),
  discount_amount: String.t(),
  wxpay_goods_id: String.t(),
  url: String.t(),
  image_url: String.t()
}
Link to this type

processing()

@type processing() :: %{
  order_id: String.t(),
  tax_amount: integer(),
  discount_amount: integer(),
  duty_amount: integer(),
  shipping_amount: integer(),
  shipping_tax_amount: integer(),
  aft: true | false,
  preferred_scheme: String.t(),
  merchant_initiated_reason: String.t(),
  campaign_id: integer(),
  product_type: String.t(),
  open_id: String.t(),
  original_order_amount: integer(),
  receipt_id: String.t(),
  terminal_type: String.t(),
  os_type: String.t(),
  invoice_id: String.t(),
  brand_name: String.t(),
  locale: String.t(),
  shipping_preference: String.t(),
  user_action: String.t(),
  set_transaction_context: map(),
  airline_data: Requests.Payments.Payment.AirlineData.t(),
  purchase_country: String.t(),
  custom_payment_method_ids: [String.t()],
  merchant_callback_url: String.t()
}
@type recipient() :: %{
  dob: String.t(),
  account_number: String.t(),
  address: Customers.BillingAddress.t(),
  first_name: String.t(),
  last_name: String.t()
}
@type shipping() :: %{
  address: Customers.BillingAddress.t(),
  phone: Customers.Phone.t(),
  from_address_zip: String.t()
}
@type t() :: %Requests.Payments.Payment{
  "3ds": term(),
  amount: integer(),
  amount_allocations: [Requests.Payments.Payment.AmountAllocation.t()],
  authorization_type: String.t(),
  billing_descriptor: Requests.Payments.Payment.BillingDescriptor.t(),
  capture: true | false,
  capture_on: String.t(),
  currency: <<_::3>>,
  customer: customer(),
  description: String.t(),
  failure_url: String.t(),
  items: [item()],
  merchant_initiated: true | false,
  metadata: map(),
  payment_ip: String.t(),
  payment_type: String.t(),
  previous_payment_id: String.t(),
  processing: processing(),
  processing_channel_id: String.t(),
  recipient: recipient(),
  reference: String.t(),
  risk: Requests.Payments.Payment.Risk.t(),
  sender: Requests.Payments.Payment.Sender.t(),
  shipping: shipping(),
  source: map(),
  success_url: String.t(),
  three_d_s: Integrated.t() | StandAlone.t() | ThirdParty.t(),
  type: String.t()
}

Link to this section Functions