@@ -64,25 +64,25 @@ def donation(payload: Donation):
6464 if payload .amount > 999999 :
6565 raise ValueError ("Amount exceeds allowed limit." )
6666
67- checkout_data = payload .checkout_data
68- address = checkout_data .address
69- phone = checkout_data .phone
67+ checkout_data = payload .checkout_data or {}
68+ address = checkout_data .get ( ' address' , {})
69+ phone = checkout_data .get ( ' phone' , None )
7070
7171 item = {
72- 'name' : checkout_data .name .title (),
73- 'email' : checkout_data .email ,
72+ 'name' : checkout_data .get ( ' name' , '' ) .title (),
73+ 'email' : checkout_data .get ( ' email' , '' ) ,
7474 'metadata' : {
7575 'amount' : f"{ str (payload .amount )[:- 2 ]} .00" ,
7676 'transaction_status' : payload .transaction_status ,
7777 'payment_method' : payload .payment_method ,
7878 'recurring' : payload .subscription ,
7979 'recurring_period' : "Monthly" if payload .subscription else None
8080 },
81- 'address_line' : f"{ address .street_number } { address .street } , { address .complementary } " .strip (', ' ),
82- 'locality' : address .city ,
83- 'region' : address .state ,
84- 'postal_code' : address .zipcode ,
85- 'phone' : f"+55{ phone . ddd } { phone . number } " if phone else None
81+ 'address_line' : f"{ address .get ( ' street_number' , '' ) } { address .get ( ' street' , '' ) } , { address .get ( ' complementary' , '' ) } " .strip (', ' ),
82+ 'locality' : address .get ( ' city' , '' ) ,
83+ 'region' : address .get ( ' state' , '' ) ,
84+ 'postal_code' : address .get ( ' zipcode' , '' ) ,
85+ 'phone' : f"+55{ phone [ ' ddd' ] } { phone [ ' number' ] } " if phone else None
8686 }
8787
8888 item ['name' ], item ['given_name' ], item ['family_name' ] = normalize_name (item ['name' ], None , None )
@@ -130,6 +130,7 @@ def to_payload(data: Payload):
130130 response ['action' ] = 'form'
131131
132132 elif table == 'donations' :
133+ payload .checkout_data = payload .get ('checkout_data' , {})
133134 response = donation (payload = payload )
134135 response ['action' ] = 'donation'
135136
0 commit comments