WeAcceptPayments
Make payments using weaccept.co API and Python.
Install / Use
/learn @LeOndaz/WeAcceptPaymentsREADME
WeAcceptPayments
Make payments using weaccept.co API and Python.
import
<code> from weacceptpayments.weaccept import WeAcceptAuth, WeAcceptOrder, WeAcceptPayment </code>
- specify auth data
auth = WeAcceptAuth.as_instance(api_key='YOUR_API_KEY')
PLEASE NOTE:
- NEVER STORE YOUR API_KEY IN YOUR .py FILES, STORE IT IN AN ENVIRONMENT VARIABLE OR .env FILE AND USE python-dotenv
- create your order
order = WeAcceptOrder.as_instance(auth=auth,
merchant_id=auth.merchant_id,
amount_cents=20000,
merchant_order_id='gv12c4ttr',
items=[
{
'name': 'taz1',
'amount_cents': 20000
}])
What kwargs are allowed? ``
_allowed_kwargs = {
'delivery_needed', 'merchant_id', 'amount_cents', 'currency', 'merchant_order_id',
'items', 'shipping_data', 'auth', 'auth_token', 'merchant_id'
}
PLEASE NOTE:
- Specifying
auth(takes in aWeAcceptAuthobject) is an alternative way of specifyingauth_tokenandmerchant_id, Don't specify both at the same time.
Now you've access to order.order_id
- DONT TRY TO CREATE THE SAME ORDER TWICE.
-- In case you did,order.idwon't be created and you have to specify it manually. This is not a bug, When you create the order twice, The server returns 'duplicate' in the second time, Andorder.idis not in the.responseso you need to specify it manually.
specify payment data
payment = WeAcceptPayment.as_instance(auth_token=auth.auth_token,
order_id=order.order_id,
amount_cents=200,
integration_id=16639,
billing_data={
"apartment": "803",
"email": "test@example.com",
"floor": "42",
"first_name": "LeOndaz",
"street": "Python community",
"building": "8028",
"phone_number": "+0123456789",
"shipping_method": "PKG",
"postal_code": "01898",
"city": "Jaskolskiburgh",
"country": "CR",
"last_name": "whatever",
"state": "RANDOM"
))
Now we have access to .token
Again, What kwargs are allowed?
_allowed_kwargs = {
'amount_cents', 'expiration', 'billing_data', 'currency', 'integration_id',
'lock_order_when_paid', 'auth', 'auth_token', 'order', 'order_id'
}
- What kwargs are a mandatory?
_MANDATORY_KWARGS = {
# amount cents must be specified and the server says duplicate order if it's not.
'merchant_order_id', 'merchant_id', 'amount_cents'
}
PLEASE NOTE:
- Specifying
auth(takes in aWeAcceptAuthobject) is an alternative way of specifyingauth_token, Don't specify both at the same time. - Specifying
order(takes in aWeAcceptOrderobject) is an alternative way of specifyingorder_id. Don't specify both at the same time.
Tada! This is magic btw.
- In each of those objects, You have access to .request, .response, .headers, other things too (Explore or use IntelliCode)
- <br>
- In each of those objects, You can access the response as obj[key] BUT after you call .start() otherwise, Exceptions are raised.
@TODO
- ~~Verification of
merchant_order_idwhich is an alpha-numeric value.~~ DONE - Verification of
shipping dataifdelivery_neededis specified as True.
Feel free to explore.
Related Skills
node-connect
348.2kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
claude-opus-4-5-migration
108.9kMigrate prompts and code from Claude Sonnet 4.0, Sonnet 4.5, or Opus 4.1 to Opus 4.5
frontend-design
108.9kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
model-usage
348.2kUse CodexBar CLI local cost usage to summarize per-model usage for Codex or Claude, including the current (most recent) model or a full model breakdown. Trigger when asked for model-level usage/cost data from codexbar, or when you need a scriptable per-model summary from codexbar cost JSON.
