pay.models.payment_providers.worldline_saferpay
Attributes
Classes
Usage docs: https://docs.pydantic.dev/2.10/concepts/models/ |
|
Usage docs: https://docs.pydantic.dev/2.10/concepts/models/ |
|
Captures an authorized Saferpay charge when the transaction finishes. |
|
All Worldline fee calculations in one place. |
|
Represents a payment done through various means. |
|
Represents a payment provider. |
Module Contents
- class pay.models.payment_providers.worldline_saferpay.SaferpayAmount(/, **data: Any)[source]
Bases:
pydantic.BaseModel
Usage docs: https://docs.pydantic.dev/2.10/concepts/models/
A base class for creating Pydantic models.
- Attributes:
__class_vars__: The names of the class variables defined on the model. __private_attributes__: Metadata about the private attributes of the model. __signature__: The synthesized __init__ [Signature][inspect.Signature] of the model.
__pydantic_complete__: Whether model building is completed, or if there are still undefined fields. __pydantic_core_schema__: The core schema of the model. __pydantic_custom_init__: Whether the model has a custom __init__ function. __pydantic_decorators__: Metadata containing the decorators defined on the model.
This replaces Model.__validators__ and Model.__root_validators__ from Pydantic V1.
- __pydantic_generic_metadata__: Metadata for generic models; contains data used for a similar purpose to
__args__, __origin__, __parameters__ in typing-module generics. May eventually be replaced by these.
__pydantic_parent_namespace__: Parent namespace of the model, used for automatic rebuilding of models. __pydantic_post_init__: The name of the post-init method for the model, if defined. __pydantic_root_model__: Whether the model is a [RootModel][pydantic.root_model.RootModel]. __pydantic_serializer__: The pydantic-core SchemaSerializer used to dump instances of the model. __pydantic_validator__: The pydantic-core SchemaValidator used to validate instances of the model.
__pydantic_fields__: A dictionary of field names and their corresponding [FieldInfo][pydantic.fields.FieldInfo] objects. __pydantic_computed_fields__: A dictionary of computed field names and their corresponding [ComputedFieldInfo][pydantic.fields.ComputedFieldInfo] objects.
- __pydantic_extra__: A dictionary containing extra values, if [extra][pydantic.config.ConfigDict.extra]
is set to ‘allow’.
__pydantic_fields_set__: The names of fields explicitly set during instantiation. __pydantic_private__: Values of private attributes set on the model instance.
- class pay.models.payment_providers.worldline_saferpay.SaferpayTransaction(/, **data: Any)[source]
Bases:
pydantic.BaseModel
Usage docs: https://docs.pydantic.dev/2.10/concepts/models/
A base class for creating Pydantic models.
- Attributes:
__class_vars__: The names of the class variables defined on the model. __private_attributes__: Metadata about the private attributes of the model. __signature__: The synthesized __init__ [Signature][inspect.Signature] of the model.
__pydantic_complete__: Whether model building is completed, or if there are still undefined fields. __pydantic_core_schema__: The core schema of the model. __pydantic_custom_init__: Whether the model has a custom __init__ function. __pydantic_decorators__: Metadata containing the decorators defined on the model.
This replaces Model.__validators__ and Model.__root_validators__ from Pydantic V1.
- __pydantic_generic_metadata__: Metadata for generic models; contains data used for a similar purpose to
__args__, __origin__, __parameters__ in typing-module generics. May eventually be replaced by these.
__pydantic_parent_namespace__: Parent namespace of the model, used for automatic rebuilding of models. __pydantic_post_init__: The name of the post-init method for the model, if defined. __pydantic_root_model__: Whether the model is a [RootModel][pydantic.root_model.RootModel]. __pydantic_serializer__: The pydantic-core SchemaSerializer used to dump instances of the model. __pydantic_validator__: The pydantic-core SchemaValidator used to validate instances of the model.
__pydantic_fields__: A dictionary of field names and their corresponding [FieldInfo][pydantic.fields.FieldInfo] objects. __pydantic_computed_fields__: A dictionary of computed field names and their corresponding [ComputedFieldInfo][pydantic.fields.ComputedFieldInfo] objects.
- __pydantic_extra__: A dictionary containing extra values, if [extra][pydantic.config.ConfigDict.extra]
is set to ‘allow’.
__pydantic_fields_set__: The names of fields explicitly set during instantiation. __pydantic_private__: Values of private attributes set on the model instance.
- model_config[source]
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- amount: SaferpayAmount[source]
- class pay.models.payment_providers.worldline_saferpay.SaferpayClient(customer_id: str | None, terminal_id: str | None, api_username: str | None, api_password: str | None, sandbox: bool = False)[source]
-
- transaction_reference(*, transaction_id: str | None = None, order_id: str | None = None) dict[str, Any] [source]
- capture_reference(*, capture_id: str | None = None, transaction_id: str | None = None, order_id: str | None = None) dict[str, Any] [source]
- inquire(*, transaction_id: str | None = None, order_id: str | None = None) SaferpayTransaction [source]
- init(amount: decimal.Decimal, currency: str, return_url: str, description: str, **extra: Any) tuple[str, str] [source]
Initializes a transaction and returns a token and redirect url.
- assert_transaction(token: str) SaferpayTransaction [source]
Check the status of a transaction using its token.
- capture(tx: SaferpayTransaction, expected_type: str = 'PAYMENT') tuple[bool, str | None] [source]
Capture a transaction given its transaction or order id.
Returns a tuple containing a bool of whether or not the transaction was captured or is still pending, and its corresponding capture_id, when given.
- assert_capture(*, capture_id: str | None = None, transaction_id: str | None = None, order_id: str | None = None) tuple[bool, str] [source]
Check the status of a once pending capture.
Returns a tuple containing a bool of whether or not the transaction was captured or is still pending, and its corresponding transaction_id.
- refund(tx: SaferpayTransaction) SaferpayTransaction | None [source]
Refund the given transaction. May return a refund transaction.
- class pay.models.payment_providers.worldline_saferpay.SaferpayCaptureManager(client: SaferpayClient, tx: SaferpayTransaction)[source]
Captures an authorized Saferpay charge when the transaction finishes.
If there is an error during this step, it is logged, but the transaction still continues successfully.
The user is then supposed to manually capture the charge.
- classmethod capture_charge(client: SaferpayClient, tx: SaferpayTransaction) None [source]
- class pay.models.payment_providers.worldline_saferpay.WorldlineFeePolicy[source]
All Worldline fee calculations in one place.
- class pay.models.payment_providers.worldline_saferpay.SaferpayPayment[source]
Bases:
onegov.pay.models.payment.Payment
Represents a payment done through various means.
- provider: sqlalchemy.orm.relationship[WorldlineSaferpay][source]
- property transaction: SaferpayTransaction[source]
- sync(remote_obj: SaferpayTransaction | None = None) None [source]
Updates the local payment information with the information from the remote payment provider.
- class pay.models.payment_providers.worldline_saferpay.WorldlineSaferpay[source]
Bases:
onegov.pay.models.payment_provider.PaymentProvider
[SaferpayPayment
]Represents a payment provider.
- adjust_price(price: onegov.pay.utils.Price | None) onegov.pay.utils.Price | None [source]
Called by client implementations this method allows to adjust the price by adding a fee to it.
By default no change is made.
- property payment_class: type[SaferpayPayment][source]
- property public_identity: str[source]
The public identifier of this payment provider. For example, the account name.
- property identity: str | None[source]
Uniquely identifies this payment provider amongst other providers of the same type (say the private key of the api). Used to be able to tell if a new oauth connection is the same as an existing one.
This identity is not meant to be displayed.
- property client: SaferpayClient[source]
- property connected: bool[source]
Returns True if the provider is properly hooked up to the payment provider.
- charge(amount: decimal.Decimal, currency: str, token: str) SaferpayPayment [source]
Given a payment token, charges the customer and creates a payment which is returned.
- get_token(request: onegov.core.request.CoreRequest) str | None [source]
Extracts this provider’s specific token from the request.
- checkout_button(label: str, amount: decimal.Decimal | None, currency: str | None, complete_url: str, request: onegov.core.request.CoreRequest, **extra: Any) markupsafe.Markup [source]
Generates the html for the checkout button.